diff --git a/.clang-format b/.clang-format index 962f2451b63..3d2709f1abc 100755 --- a/.clang-format +++ b/.clang-format @@ -1,4 +1,20 @@ -# SPDX-License-Identifier: GPL-2.0 +############################################################################### +# +# Copyright (C) 2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## # # clang-format configuration file. Intended for clang-format >= 11. # diff --git a/.github/labeler.yml b/.github/labeler.yml index a44984bdb92..2dfae66a471 100644 --- a/.github/labeler.yml +++ b/.github/labeler.yml @@ -7,8 +7,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), # Copyright (C) 2023-2024 Analog Devices, Inc. All Rights Reserved. This software # is proprietary to Analog Devices, Inc. and its licensors. # diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 05abae60004..e443c4cb48c 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -69,4 +69,4 @@ NOTE: The scope is case-sensitive and must match one of the listed scopes. #### More Info -Please refer to the [CONTRIBUTING.md](https://github.com/Analog-Devices-MSDK/msdk/blob/main/Documentation/CONTRIBUTING.md) for more information regarding the PR Title. +Please refer to the [CONTRIBUTING.md](https://github.com/analogdevicesinc/msdk/blob/main/Documentation/CONTRIBUTING.md) for more information regarding the PR Title. diff --git a/.github/workflows/BLE_Examples_Test.yml b/.github/workflows/BLE_Examples_Test.yml index e563f231910..fb7db194fbb 100644 --- a/.github/workflows/BLE_Examples_Test.yml +++ b/.github/workflows/BLE_Examples_Test.yml @@ -1,3 +1,23 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + name: BLE Examples Test # Cancels workflows in progress that are in the same PR @@ -8,12 +28,7 @@ concurrency: # Controls when the workflow will run on: # Triggers the workflow on push or pull request events but only for the "main" branch - #push: - # branches: [ "main" ] pull_request: - branches: ["main"] - types: [opened, reopened, synchronize, ready_for_review] # When to run the workflow on PR - paths-ignore: # Any files in a docs directory anywhere in the repository. - "**/docs/**" @@ -28,55 +43,28 @@ on: # Allows you to run this workflow manually from the Actions tab workflow_dispatch: + + env: LOCK_MAX32655_B2: false LOCK_MAX32655_B1: false LOCK_MAX32665_B1: false -#---------------------------------------------------------------------------------------------- -# A workflow run is made up of one or more jobs that can run sequentially or in parallel + RESULTS_DIR: "ble_test_results" + jobs: BLE_Tests: # The type of runner that the job will run on - runs-on: [self-hosted, btm-ci] + runs-on: [self-hosted] if: github.event.pull_request.draft == false + - #---------------------------------------------------------------------------------------------- - # De inits submodules and cleans repo steps: - # Clean and remove any local modifications - - name: Clean - continue-on-error: true - run: | - # Remove local modifications - set +e - - # Attempt to clean the repo - git scorch - git clean -ffdx - git reset --hard - retval=$? - - # Remove everything if this fails - if [[ $retval -ne 0 ]] - then - rm -rf * - fi - - set -e - # give launcher script permission to execute - cd .github/workflows/scripts - chmod +x test_launcher.sh - chmod +x mass_erase_board.sh - #---------------------------------------------------------------------------------------------- - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: false + repository: analogdevicesinc/msdk fetch-depth: 0 - - #---------------------------------------------------------------------------------------------- - #------------------------------| MAX32655 |---------------------------------------------------- - #---------------------------------------------------------------------------------------------- + - name: Check MAX32655 id: MAX32655 env: @@ -91,8 +79,8 @@ jobs: # BLE examples to watch declare -a watched_examples=( # underscore in filter to ignore the BLE5_ctr examples - Examples/MAX32655/BLE_* - Examples/MAX32655/Bootloader + Examples/MAX32655/Bluetooth/BLE_* + Examples/MAX32655/Bluetooth/Bootloader ) # Other directories to watch @@ -159,14 +147,14 @@ jobs: Libraries/PeriphDrivers/Source/UART/uart_common.c Libraries/PeriphDrivers/Source/UART/uart_common.h Libraries/PeriphDrivers/Source/UART/uart_me17.c - Libraries/PeriphDrivers/Source/UART/uart_revb_regs.h - Libraries/PeriphDrivers/Source/UART/uart_revb.c - Libraries/PeriphDrivers/Source/UART/uart_revb.h - # WakeUp Timer - Libraries/PeriphDrivers/Source/WUT/wut_me17.c - Libraries/PeriphDrivers/Source/WUT/wut_reva_regs.h - Libraries/PeriphDrivers/Source/WUT/wut_reva.c - Libraries/PeriphDrivers/Source/WUT/wut_reva_regs.h ) + Libraries/PeriphDrivers/Source/UART/uart_revb_regs.h + Libraries/PeriphDrivers/Source/UART/uart_revb.c + Libraries/PeriphDrivers/Source/UART/uart_revb.h + # WakeUp Timer + Libraries/PeriphDrivers/Source/WUT/wut_me17.c + Libraries/PeriphDrivers/Source/WUT/wut_reva_regs.h + Libraries/PeriphDrivers/Source/WUT/wut_reva.c + Libraries/PeriphDrivers/Source/WUT/wut_reva_regs.h ) # Directories to ignore declare -a ignored=( Libraries/Cordio/docs @@ -251,13 +239,9 @@ jobs: else echo "no tests enabled, NOT locking anything at this step" fi - - #---------------------------------------------------------------------------------------------- - #------------------------------| MAX32665 |---------------------------------------------------- - #---------------------------------------------------------------------------------------------- - - # Checks if changes have been made to require a test on ME14 + - name: Check MAX32665 + if: false id: MAX32665 env: MAX32665_BLE_FILES_CHANGED: false @@ -271,8 +255,8 @@ jobs: # BLE examples to watch declare -a watched_examples=( # underscore in filter to ignore the BLE5_ctr examples - Examples/MAX32665/BLE_* - Examples/MAX32665/Bootloader + Examples/MAX32665/Bluetooth/BLE_* + Examples/MAX32665/Bluetooth/Bootloader ) # Other directories to watch @@ -431,12 +415,8 @@ jobs: echo "no tests enabled, NOT locking anything at this step" fi - #---------------------------------------------------------------------------------------------- - #------------------------------| MAX32690 |---------------------------------------------------- - #---------------------------------------------------------------------------------------------- - - # Checks if changes have been made to require a test on ME14 - name: Check MAX32690 + if: false id: MAX32690 env: MAX32690_BLE_FILES_CHANGED: false @@ -450,8 +430,8 @@ jobs: # BLE examples to watch declare -a watched_examples=( # underscore in filter to ignore the BLE5_ctr examples - Examples/MAX32690/BLE_* - Examples/MAX32690/Bootloader + Examples/MAX32690/Bluetooth/BLE_* + Examples/MAX32690/Bluetooth/Bootloader ) # Other directories to watch @@ -609,354 +589,159 @@ jobs: echo "no tests enabled, NOT locking anything at this step" fi - #---------------------------------------------------------------------------------------------- - #------------------------------| Lock all required boards at once |----------------------------- - #---------------------------------------------------------------------------------------------- - name: Lock Boards - if: env.LOCK_MAX32655_B1 == 'true' || env.LOCK_MAX32655_B2 == 'true' || env.LOCK_MAX32665_B1 == 'true' || env.LOCK_MAX32690_B1 == 'true' - id: lock_boards - run: | - python3 /home/$USER/Workspace/Resource_Share/Resource_Share_multiboard.py -l -t 3600 -b max32655_board1 -b max32655_board2 -b max32665_board1 -b max32690_board_w1 - - #---------------------------------------------------------------------------------------------- - #------------------------------| Erase all required boards at once |----------------------------- - #---------------------------------------------------------------------------------------------- - - name: Erase Boards - if: steps.lock_boards.outcome == 'success' - id: erase_boards - run: | - # start with boards in known state - cd .github/workflows/scripts - echo "Erasing Main MAX32655 B1" - ./mass_erase_board.sh max32655 max32655_board1 - echo "Erasing Main MAX32655 B2" - ./mass_erase_board.sh max32655 max32655_board2 - echo "Erasing Main MAX32665 B1" - ./mass_erase_board.sh max32665 max32665_board1 - echo "Erasing Main MAX32690" - ./mass_erase_board.sh max32690 max32690_board_w1 - #---------------------------------------------------------------------------------------------- - - #---------------------------------------------------------------------------------------------- - #---------------------------------------------------------------------------------------------- - #------------------------------| Test all required boards at once |----------------------------- - #---------------------------------------------------------------------------------------------- - - - name: Test MAX32655 #name used for display purposes on github webpage - if: steps.lock_boards.outcome == 'success' && env.LOCK_MAX32655_B2 == 'true' - id: Test_MAX32655 #id used to reference this step in other parts of the yml - run: | - FILE=/home/$USER/Workspace/Resource_Share/boards_config.json - dut_uart=$(/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32655_board2']['uart0'])") - dut_serial=$(/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32655_board2']['daplink'])") - examples_to_test=(${MAX32655_EXAMPLES_TO_TEST[@]}) - echo - echo - echo "Examples to be tested : ${examples_to_test[@]}" - echo "MAX32655_RUN_ALL_TEST : $MAX32655_RUN_ALL_TEST" - echo "MAX32655_DATS_CONNECTED_TEST : $MAX32655_DATS_CONNECTED_TEST " - echo "MAX32655_OTAS_CONNECTED_TEST : $MAX32655_OTAS_CONNECTED_TEST" - echo "MAX32655_BLE_FILES_CHANGED : $MAX32655_BLE_FILES_CHANGED " - echo "LOCK_MAX32655_B2 : $LOCK_MAX32655_B2 " - - cd .github/workflows/scripts - - if [[ $MAX32655_RUN_ALL_TEST == 'true' ]]; then - echo "Testing all examples" - set +e - ./test_launcher.sh max32655 $dut_uart $dut_serial "all" - let "testResult=$?" - if [ "$testResult" -ne "0" ]; then - # update failed test count - let "numOfFailedTests+=$testResult" - fi - set -e - else - if [[ $MAX32655_BLE_FILES_CHANGED == 'true' ]]; then - #------non connected tests--------- - for example in "${examples_to_test[@]}"; do - # launch single tests - echo "Running $example test on MAX32655" - set +e - ./test_launcher.sh max32655 $dut_uart $dut_serial $example - let "testResult=$?" - if [ "$testResult" -ne "0" ]; then - # update failed test count - let "numOfFailedTests+=$testResult" - failedTestList+="| $example" - fi - set -e - done - - #------connected tests--------- - if [[ $MAX32655_DATS_CONNECTED_TEST == 'true' ]]; then - #conencted test launcher - echo "Testing MAX32655_DATS_CONNECTED_TEST" - set +e - ./test_launcher.sh max32655 $dut_uart $dut_serial "dats" - let "testResult=$?" - if [ "$testResult" -ne "0" ]; then - # update failed_test count - let "numOfFailedTests+=$testResult" - failedTestList+="| MAX32655 Dats/c" - fi - set -e - - fi - #------connected tests--------- - if [[ $MAX32655_OTAS_CONNECTED_TEST == 'true' ]]; then - #conencted test launcher - echo "Testing MAX32655_OTAS_CONNECTED_TEST" - set +e - #call test here - #***************** uncomment actual test here ************* - ./test_launcher.sh max32655 $dut_uart $dut_serial "ota" - let "testResult=$?" - if [ "$testResult" -ne "0" ]; then - # update failed test count - let "numOfFailedTests+=$testResult" - failedTestList+="| MAX32655 OTAS/C" - fi - set -e - fi - else - echo "Skipping all tests" - fi - echo "==============================================================================" - echo "==============================================================================" - - if [[ $numOfFailedTests -ne 0 ]]; then - printf "Test completed with $numOfFailedTests failed tests located in: \r\n $failedTestList" - else - echo "Relax! ALL TESTS PASSED" - fi - echo - echo "==============================================================================" - echo "==============================================================================" - echo - fi - - exit $numOfFailedTests - #---------------------------------------------------------------------------------------------- - - name: Test MAX32665 #name used for display purposes on github webpage - if: steps.lock_boards.outcome == 'success' && env.LOCK_MAX32665_B1 == 'true' - id: Test_MAX32665 #id used to reference this step in other parts of the yml + uses: Analog-Devices-MSDK/btm-ci-scripts/actions/lock-board@v1.1 + with: + boards: | + max32655_board1 + max32655_board2 + max32665_board1 + max32690_board_w1 + lock: true + timeout: 3600 # Attempt to lock for an hour + + - name: Init Tests run: | - FILE=/home/$USER/Workspace/Resource_Share/boards_config.json - dut_uart=$(/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32665_board1']['uart1'])") - dut_serial=$(/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32665_board1']['daplink'])") - examples_to_test=(${MAX32665_EXAMPLES_TO_TEST[@]}) - echo - echo - echo "Examples to be tested : ${examples_to_test[@]}" - echo "MAX32665_RUN_ALL_TEST : $MAX32665_RUN_ALL_TEST" - echo "MAX32665_DATS_CONNECTED_TEST : $MAX32665_DATS_CONNECTED_TEST " - echo "MAX32665_OTAS_CONNECTED_TEST : $MAX32665_OTAS_CONNECTED_TEST" - echo "MAX32665_BLE_FILES_CHANGED : $MAX32665_BLE_FILES_CHANGED " - echo "LOCK_MAX32665_B1 : $LOCK_MAX32665_B1 " - - cd .github/workflows/scripts - - if [[ $MAX32665_RUN_ALL_TEST == 'true' ]]; then - echo "Testing all examples" - set +e - ./test_launcher.sh max32665 $dut_uart $dut_serial "all" - let "testResult=$?" - if [ "$testResult" -ne "0" ]; then - # update failed test count - let "numOfFailedTests+=$testResult" - fi - set -e - else - if [[ $MAX32665_BLE_FILES_CHANGED == 'true' ]]; then - #------non connected tests--------- - for example in "${examples_to_test[@]}"; do - # launch single tests - echo "Running $example test on MAX32665" - set +e - ./test_launcher.sh max32665 $dut_uart $dut_serial $example - let "testResult=$?" - if [ "$testResult" -ne "0" ]; then - # update failed test count - let "numOfFailedTests+=$testResult" - failedTestList+="| $example" - fi - set -e - done - - #------connected tests--------- - if [[ $MAX32665_DATS_CONNECTED_TEST == 'true' ]]; then - #conencted test launcher - echo "Testing MAX32665_DATS_CONNECTED_TEST" - set +e - ./test_launcher.sh max32665 $dut_uart $dut_serial "dats" - let "testResult=$?" - if [ "$testResult" -ne "0" ]; then - # update failed_test count - let "numOfFailedTests+=$testResult" - failedTestList+="| MAX32665 Dats/c" - fi - set -e - - fi - #------connected tests--------- - if [[ $MAX32665_OTAS_CONNECTED_TEST == 'true' ]]; then - #conencted test launcher - echo "Testing MAX32665_OTAS_CONNECTED_TEST" - set +e - #call test here - #***************** uncomment actual test here ************* - ./test_launcher.sh max32665 $dut_uart $dut_serial "ota" - let "testResult=$?" - if [ "$testResult" -ne "0" ]; then - # update failed test count - let "numOfFailedTests+=$testResult" - failedTestList+="| MAX32665 OTAS/C" - fi - set -e - fi - else - echo "Skipping all tests" - fi - echo "==============================================================================" - echo "==============================================================================" - - if [[ $numOfFailedTests -ne 0 ]]; then - printf "Test completed with $numOfFailedTests failed tests located in: \r\n $failedTestList" - else - echo "Relax! ALL TESTS PASSED" - fi - echo - echo "==============================================================================" - echo "==============================================================================" - echo + + #set advertising names + # sed -i "s/'S'/'?'/g" Examples/MAX32655/Bluetooth/BLE_dats/dats_main.c + # sed -i "s/'S'/'?'/g" Examples/MAX32655/Bluetooth/BLE_datc/datc_main.c + # sed -i "s/'S'/'!'/g" Examples/MAX32665/Bluetooth/BLE_dats/dats_main.c + # sed -i "s/'S'/'!'/g" Examples/MAX32690/Bluetooth/BLE_datc/datc_main.c + + # sed -i "s/'S'/'?'/g" Examples/MAX32655/Bluetooth/BLE_otas/dats_main.c + # sed -i "s/'S'/'?'/g" Examples/MAX32655/Bluetooth/BLE_otac/datc_main.c + # sed -i "s/'S'/'!'/g" Examples/MAX32665/Bluetooth/BLE_otas/dats_main.c + # sed -i "s/'S'/'!'/g" Examples/MAX32690/Bluetooth/BLE_otac/datc_main.c + + - name: Erase Boards DATS + if: ${{env.MAX32655_DATS_CONNECTED_TEST == 'true' || env.MAX32665_DATS_CONNECTED_TEST == 'true' || env.MAX32690_DATS_CONNECTED_TEST == 'true'}} + uses: Analog-Devices-MSDK/btm-ci-scripts/actions/ocderase@v1.1 + with: + board: | + max32655_board1 + max32655_board2 + max32665_board1 + max32690_board_w1 + + has_two_flash_banks: | + true + true + true + true + + - name: Flash DATS 655 + if: ${{env.MAX32655_DATS_CONNECTED_TEST == 'true'}} + uses: Analog-Devices-MSDK/btm-ci-scripts/actions/ocdflash@v1.1 + with: + board: | + max32655_board1 + max32655_board2 + + project: | + BLE_dats + BLE_datc + + suppress_output: true + build_flags: | + ADV_NAME=DAT? + ADV_NAME=DAT? + + + build: true + distclean: true + + - name: DATS 655 + if: ${{env.MAX32655_DATS_CONNECTED_TEST == 'true'}} + run: | + DATS_TEST_DIR=$TEST_DIR/dats + DATS_BOARD_655=max32655_board1 + DATC_BOARD_655=max32655_board2 + + (cd $DATS_TEST_DIR && ls && python3 datsc_connected.py $DATS_BOARD_655 $DATC_BOARD_655) + + + - name: Erase Boards OTAS + if: ${{env.MAX32655_DATS_CONNECTED_TEST == 'true' || env.MAX32665_DATS_CONNECTED_TEST == 'true' || env.MAX32690_DATS_CONNECTED_TEST == 'true'}} + uses: Analog-Devices-MSDK/btm-ci-scripts/actions/ocderase@v1.1 + with: + board: | + max32655_board1 + max32655_board2 + max32665_board1 + max32690_board_w1 + + - name: Flash OTAS + if: ${{env.MAX32655_DATS_CONNECTED_TEST == 'true' || env.MAX32665_DATS_CONNECTED_TEST == 'true' || env.MAX32690_DATS_CONNECTED_TEST == 'true'}} + uses: Analog-Devices-MSDK/btm-ci-scripts/actions/ocdflash@v1.1 + with: + board: | + max32655_board1 + max32655_board2 + max32665_board1 + build_flags: | + ADV_NAME=OTA? + ADV_NAME=OTA? + ADV_NAME=OTA! + ADV_NAME=OTA! + + project: | + BLE_otas + BLE_otac + BLE_otac + suppress_output: true + + build: true + distclean: true + + - name: OTAS + if: ${{env.MAX32655_DATS_CONNECTED_TEST == 'true' || env.MAX32665_DATS_CONNECTED_TEST == 'true' || env.MAX32690_DATS_CONNECTED_TEST == 'true'}} + run: | + OTAS_TEST_DIR=$TEST_DIR/otas + OTAS_BOARD_655=max32655_board1 + OTAC_BOARD_655=max32655_board2 + OTAC_BOARD_665=max32665_board1 + OTAC_BOARD_690=max32690_board_w1 + + + if [[ $MAX32655_OTAS_CONNECTED_TEST == 'true' ]]; then + (cd $OTAS_TEST_DIR && python3 otas_connected.py $OTAS_BOARD_655 $OTAC_BOARD_655) fi - exit $numOfFailedTests - #---------------------------------------------------------------------------------------------- - - name: Test MAX32690 #name used for display purposes on github webpage - if: steps.lock_boards.outcome == 'success' && env.LOCK_MAX32690_B1 == 'true' - id: Test_MAX32690 #id used to reference this step in other parts of the yml - run: | - FILE=/home/$USER/Workspace/Resource_Share/boards_config.json - dut_uart=$(/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32690_board_w1']['uart2'])") - dut_serial=$(/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32690_board_w1']['daplink'])") - examples_to_test=(${MAX32690_EXAMPLES_TO_TEST[@]}) - echo - echo - echo "Examples to be tested : ${examples_to_test[@]}" - echo "MAX32690_RUN_ALL_TEST : $MAX32690_RUN_ALL_TEST" - echo "MAX32690_DATS_CONNECTED_TEST : $MAX32690_DATS_CONNECTED_TEST " - echo "MAX32690_OTAS_CONNECTED_TEST : $MAX32690_OTAS_CONNECTED_TEST" - echo "MAX32690_BLE_FILES_CHANGED : $MAX32690_BLE_FILES_CHANGED " - echo "LOCK_MAX32690_B1 : $LOCK_MAX32690_B1 " - - cd .github/workflows/scripts - - if [[ $MAX32690_RUN_ALL_TEST == 'true' ]]; then - echo "Testing all examples" - set +e - ./test_launcher.sh max32690 $dut_uart $dut_serial "all" - let "testResult=$?" - if [ "$testResult" -ne "0" ]; then - # update failed test count - let "numOfFailedTests+=$testResult" - fi - set -e - else - if [[ $MAX32690_BLE_FILES_CHANGED == 'true' ]]; then - #------non connected tests--------- - for example in "${examples_to_test[@]}"; do - # launch single tests - echo "Running $example test on MAX32690" - set +e - ./test_launcher.sh max32690 $dut_uart $dut_serial $example - let "testResult=$?" - if [ "$testResult" -ne "0" ]; then - # update failed test count - let "numOfFailedTests+=$testResult" - failedTestList+="| $example" - fi - set -e - done - - #------connected tests--------- - if [[ $MAX32690_DATS_CONNECTED_TEST == 'true' ]]; then - #conencted test launcher - echo "Testing MAX32690_DATS_CONNECTED_TEST" - set +e - ./test_launcher.sh max32690 $dut_uart $dut_serial "dats" - let "testResult=$?" - if [ "$testResult" -ne "0" ]; then - # update failed_test count - let "numOfFailedTests+=$testResult" - failedTestList+="| MAX32690 Dats/c" - fi - set -e - fi - #------connected tests--------- - if [[ $MAX32690_OTAS_CONNECTED_TEST == 'true' ]]; then - #conencted test launcher - echo "Testing MAX32690_OTAS_CONNECTED_TEST" - set +e - #call test here - #***************** uncomment actual test here ************* - ./test_launcher.sh max32690 $dut_uart $dut_serial "ota" - let "testResult=$?" - if [ "$testResult" -ne "0" ]; then - # update failed test count - let "numOfFailedTests+=$testResult" - failedTestList+="| MAX32690 OTAS/C" - fi - set -e - fi - else - echo "Skipping all tests" - fi - echo "==============================================================================" - echo "==============================================================================" - - if [[ $numOfFailedTests -ne 0 ]]; then - printf "Test completed with $numOfFailedTests failed tests located in: \r\n $failedTestList" - else - echo "Relax! ALL TESTS PASSED" - fi - echo - echo "==============================================================================" - echo "==============================================================================" - echo - fi - exit $numOfFailedTests - #---------------------------------------------------------------------------------------------- - #---------------------------------------------------------------------------------------------- - #------------------------------| Erase & Unlock all required boards at once |----------------------------- - #---------------------------------------------------------------------------------------------- - - name: Clean up - if: ${{ always() && steps.lock_boards.outcome == 'success'}} + # disable for now + # (cd $OTAS_TEST_DIR && python3 otas_connected.py $OTAS_BOARD_655 $OTAC_BOARD_665) + # (cd $OTAS_TEST_DIR && python3 otas_connected.py $OTAS_BOARD_690 $OTAC_BOARD_655) + + - name: Result Consolidation + if: failure() run: | - git clean -ffdx - git reset --hard - # leave board in known state if workflow should end early - cd .github/workflows/scripts - echo "Erasing Main MAX32655 B1" - ./mass_erase_board.sh max32655 max32655_board1 - echo "Erasing Main MAX32655 B2" - ./mass_erase_board.sh max32655 max32655_board2 - echo "Erasing Main MAX32665 B1" - ./mass_erase_board.sh max32665 max32665_board1 - echo "Erasing Main MAX32690" - ./mass_erase_board.sh max32690 max32690_board_w1 - + set +e + rm -rf $RESULTS_DIR + mkdir $RESULTS_DIR + mv $TEST_DIR/dats/dats_out $RESULTS_DIR + mv $TEST_DIR/otas/otas_out $RESULTS_DIR + set -e + + - name: Unlock Boards - if: ${{ always() && steps.lock_boards.outcome == 'success'}} - run: | - python3 /home/$USER/Workspace/Resource_Share/Resource_Share_multiboard.py -b max32655_board1 -b max32655_board2 -b max32665_board1 -b max32690_board_w1 + if: always() + uses: Analog-Devices-MSDK/btm-ci-scripts/actions/lock-board@v1.1 + with: + lock: false + all_owned: true #---------------------------------------------------------------------------------------------- # Save test reports - uses: actions/upload-artifact@v3 if: failure() with: name: failure-report - path: .github/workflows/ci-tests/Examples_tests/results/ \ No newline at end of file + path: ${{ env.RESULTS_DIR }} + + - name: Clean up + if: always() + run: | + git clean -ffdx + git reset --hard + diff --git a/.github/workflows/Build_Examples.yml b/.github/workflows/Build_Examples.yml index f5de5bfd84a..f92db33e8d9 100644 --- a/.github/workflows/Build_Examples.yml +++ b/.github/workflows/Build_Examples.yml @@ -1,3 +1,23 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + name: Build_Examples concurrency: @@ -29,7 +49,7 @@ jobs: steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: # Update the submodules below, doing so here will convert ssh to https submodules: false @@ -37,6 +57,27 @@ jobs: ref: '${{ github.event.pull_request.head.ref }}' repository: '${{ github.event.pull_request.head.repo.full_name }}' + - name: Get changed files + id: changed-files + uses: tj-actions/changed-files@v45 + with: + files: | + **.c + **.h + **.S + **.s + **.a + **.cpp + **.mk + **/Makefile + + - name: List all changed files + env: + ALL_CHANGED_FILES: ${{ steps.changed-files.outputs.all_changed_files }} + run: | + echo ${ALL_CHANGED_FILES} > changed_files + cat changed_files + - name: Check watch files id: check_watch run: | @@ -202,7 +243,7 @@ jobs: # Set MAXIM_PATH to limit warnings export MAXIM_PATH=$(pwd) - python .github/workflows/scripts/build.py + python .github/workflows/scripts/build.py --change_file changed_files Regression_Test_Make_3_81: runs-on: diff --git a/.github/workflows/Generate_Register_Files.yml b/.github/workflows/Generate_Register_Files.yml index f06e2818984..67c55c3e028 100644 --- a/.github/workflows/Generate_Register_Files.yml +++ b/.github/workflows/Generate_Register_Files.yml @@ -1,3 +1,23 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + name: Generate Register Files # Controls when the workflow will run diff --git a/.github/workflows/PR_Title_Check.yml b/.github/workflows/PR_Title_Check.yml index b6f27e7cf56..b72c4cc6931 100644 --- a/.github/workflows/PR_Title_Check.yml +++ b/.github/workflows/PR_Title_Check.yml @@ -1,3 +1,23 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + name: Pull Request Title Checker concurrency: diff --git a/.github/workflows/Release.yml b/.github/workflows/Release.yml index 2096fd41d05..1947df23971 100644 --- a/.github/workflows/Release.yml +++ b/.github/workflows/Release.yml @@ -1,3 +1,23 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + name: "Package Release Components" on: diff --git a/.github/workflows/Stale_PR.yml b/.github/workflows/Stale_PR.yml index 06335f069d2..66a90494400 100644 --- a/.github/workflows/Stale_PR.yml +++ b/.github/workflows/Stale_PR.yml @@ -1,3 +1,23 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + name: Check for Stale Pull Requests concurrency: diff --git a/.github/workflows/Verify_Register_SVD.yml b/.github/workflows/Verify_Register_SVD.yml index f99ea818493..fd39a2c281e 100644 --- a/.github/workflows/Verify_Register_SVD.yml +++ b/.github/workflows/Verify_Register_SVD.yml @@ -1,3 +1,23 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + name: Verify Register and SVD Files concurrency: @@ -635,5 +655,26 @@ jobs: fi done set -e - + + # Remove generated register files for next time a runner picks up the job. + # The register files generated in a previous instance will remain and won't + # be regenerated because the Wall-E doesn't refresh its workspace and this + # workflow only generates the register files for a specific part only once + # (to save time) by checking whether the generated register files exist or not. + cd ${{ env.MSDK-INTERNAL_DIR }}/SVD/Devices/ + + # Enter each directory and remove ./chip_test/ + for file_dir in * + do + # Don't mess with files. + [[ -d $file_dir ]] || continue + + if [[ ${DIE_TO_CHIP_NAMES[$file_dir]+_} ]]; then + rm -rf ./${file_dir}/chip_test/ + fi + done + + # Return to workspace + cd ../../../ + exit $CHECK_FAIL diff --git a/.github/workflows/build-cordio-platform-docs.yml b/.github/workflows/build-cordio-platform-docs.yml index eaa21184cbd..e27602f97c7 100644 --- a/.github/workflows/build-cordio-platform-docs.yml +++ b/.github/workflows/build-cordio-platform-docs.yml @@ -1,3 +1,23 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + name: Build & Deploy Cordio Platform Docs on: diff --git a/.github/workflows/build-docs.yml b/.github/workflows/build-docs.yml index 6a9a8d8efa6..13e0884a5d4 100644 --- a/.github/workflows/build-docs.yml +++ b/.github/workflows/build-docs.yml @@ -1,3 +1,23 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + name: Build & Deploy Docs # Controls when the workflow will run @@ -15,7 +35,7 @@ jobs: steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Setup Python uses: actions/setup-python@v2.3.3 diff --git a/.github/workflows/build-max32665-ds.yml b/.github/workflows/build-max32665-ds.yml index 2d5d61df46c..2efd6777856 100644 --- a/.github/workflows/build-max32665-ds.yml +++ b/.github/workflows/build-max32665-ds.yml @@ -1,3 +1,23 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + name: build-max32665-ds concurrency: diff --git a/.github/workflows/clang-format-check.yml b/.github/workflows/clang-format-check.yml index 80ce8d614d8..89c2621e0c6 100644 --- a/.github/workflows/clang-format-check.yml +++ b/.github/workflows/clang-format-check.yml @@ -1,3 +1,23 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + name: clang-format-check # Cancel in-progress jobs if we're adding additional commits @@ -45,7 +65,7 @@ jobs: # Exclude register header files. Those don't follow clang formatting or it becomes unreadable - name: clang-format-check run: | - CHANGE_FILES=$(git diff --ignore-submodules --name-only remotes/origin/main '*.c' '*.h' ':!*_regs.h' ':!*ffconf.h' ':!*weights.h' ':!*cnn.h' ':!*cnn.c' ':!*sampledata.h' ':!*sampleoutput.h' ':!*softmax.c' ':!Examples/*/Coremark/*' ':!Libraries/FCL' ':!Libraries/FreeRTOS' ':!Libraries/lwIP' ':!Libraries/littlefs' ':!Libraries/FreeRTOS-Plus' ':!Libraries/LC3' ':!Libraries/SDHC' ':!Libraries/MAXUSB' ':!Libraries/Cordio' ':!Libraries/LVGL' ':!Libraries/Coremark' ':!Libraries/MiscDrivers/BarcodeDecoder') + CHANGE_FILES=$(git diff --ignore-submodules --name-only remotes/origin/main '*.c' '*.h' ':!*_regs.h' ':!*ffconf.h' ':!*weights.h' ':!*cnn.h' ':!*cnn.c' ':!*sampledata.h' ':!*sampleoutput.h' ':!*softmax.c' ':!Examples/*/Coremark/*' ':!Libraries/FCL' ':!Libraries/FreeRTOS' ':!Libraries/lwIP' ':!Libraries/littlefs' ':!Libraries/FreeRTOS-Plus' ':!Libraries/LC3' ':!Libraries/SDHC' ':!Libraries/MAXUSB' ':!Libraries/Cordio' ':!Libraries/LVGL' ':!Libraries/Coremark' ':!Libraries/MiscDrivers/BarcodeDecoder' ':!Libraries/tinyusb' ':!Libraries/CMSIS/5.9.0/DSP') if [[ "$CHANGE_FILES" != "" ]]; then bash -e .github/workflows/clang-format-run.sh $CHANGE_FILES fi diff --git a/.github/workflows/clang-format-run-pr.yml b/.github/workflows/clang-format-run-pr.yml index bcd3e66af6c..4fd90a8b953 100644 --- a/.github/workflows/clang-format-run-pr.yml +++ b/.github/workflows/clang-format-run-pr.yml @@ -1,3 +1,23 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + name: clang-format-run-pr # Controls when the workflow will run @@ -51,12 +71,11 @@ jobs: core.setFailed(`Request failed with error ${err}`) } - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: repository: ${{ fromJSON(steps.get-pr.outputs.result).head.repo.full_name }} ref: ${{ fromJSON(steps.get-pr.outputs.result).head.ref }} fetch-depth: 0 - token: ${{ secrets.WORKFLOW_TOKEN }} - name: clang-format-run run: | diff --git a/.github/workflows/clang-format-run.sh b/.github/workflows/clang-format-run.sh index f599a0dba3d..4f3a1a03890 100644 --- a/.github/workflows/clang-format-run.sh +++ b/.github/workflows/clang-format-run.sh @@ -1,5 +1,25 @@ #!/bin/bash +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## +# # Run this from the root of the msdk # bash -ex .github/workflows/clang-format-run.sh # @@ -17,10 +37,10 @@ FILES="" if [[ $# -eq 0 ]] then # Find the c files - FILES=$(find . -iname "*.c" -not -name "*cnn.c" -a -not -name "*softmax.c" -a -not -regex ".*/Libraries/MiscDrivers/BarcodeDecoder/.*" -a -not -regex ".*/Examples/.*/Coremark/.*" -a -not -regex ".*/Libraries/\(Cordio\|FCL\|FreeRTOS\|FreeRTOS\-Plus\|LC3\|littlefs\|lwIP\|MAXUSB\|SDHC\|LVGL\|Coremark\)/.*") + FILES=$(find . -iname "*.c" -not -name "*cnn.c" -a -not -name "*softmax.c" -a -not -regex ".*/Libraries/MiscDrivers/BarcodeDecoder/.*" -a -not -regex ".*/Examples/.*/Coremark/.*" -a -not -regex ".*/Libraries/\(Cordio\|FCL\|FreeRTOS\|FreeRTOS\-Plus\|LC3\|littlefs\|lwIP\|MAXUSB\|SDHC\|LVGL\|Coremark\|tinyusb\)/.*") # Find the header files - FILES=$FILES+$(find . -iname "*.h" -not -name "*regs*" -a -not -name "*weights.h" -a -not -name "*cnn.h" -a -not -name "*sampledata.h" -a -not -name "*sampleoutput.h" -a -not -regex ".*/Libraries/MiscDrivers/BarcodeDecoder/.*" -a -not -regex ".*/Examples/.*/Coremark/.*" -a -not -regex ".*/Libraries/\(Cordio\|FCL\|FreeRTOS\|FreeRTOS\-Plus\|LC3\|littlefs\|lwIP\|MAXUSB\|SDHC\|LVGL\|Coremark\)/.*") + FILES=$FILES+$(find . -iname "*.h" -not -name "*regs*" -a -not -name "*weights.h" -a -not -name "*cnn.h" -a -not -name "*sampledata.h" -a -not -name "*sampleoutput.h" -a -not -regex ".*/Libraries/MiscDrivers/BarcodeDecoder/.*" -a -not -regex ".*/Examples/.*/Coremark/.*" -a -not -regex ".*/Libraries/\(Cordio\|FCL\|FreeRTOS\|FreeRTOS\-Plus\|LC3\|littlefs\|lwIP\|MAXUSB\|SDHC\|LVGL\|Coremark\|tinyusb\)/.*") else # Accumulate the input arguments into FILES FILES="$*" diff --git a/.github/workflows/example_tester.yml b/.github/workflows/example_tester.yml new file mode 100644 index 00000000000..c9dd386cf22 --- /dev/null +++ b/.github/workflows/example_tester.yml @@ -0,0 +1,137 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + +name: Basic Examples Test + +# Cancels workflows in progress that are in the same PR +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +# Controls when the workflow will run +on: + # Triggers the workflow on push or pull request events but only for the "main" branch + pull_request: + branches: + - main + paths-ignore: + # Any files in a docs directory anywhere in the repository. + - "**/docs/**" + - "**/Documentation/**" + # Any README.md file anywhere in the repository. + - "**/README.md" + # Any .pdf file anywhere in the repository. + - "**/*.pdf" + # Any .yml file anywhere in the repository. + # can comment this out when testing changes to THIS yml file + - "**/*.yml" + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + + +env: + MAXIM_PATH: '' + +jobs: + Example_Tests_MAX32690: + # The type of runner that the job will run on + runs-on: [self-hosted] + if: github.event.pull_request.draft == false + + + steps: + + - uses: actions/checkout@v4 + with: + submodules: false + repository: analogdevicesinc/msdk + fetch-depth: 0 + + - name: Set MAXIM_PATH + run: | + echo "MAXIM_PATH=$(pwd)" >> $GITHUB_ENV + printenv + + - name: Lock Boards + uses: Analog-Devices-MSDK/btm-ci-scripts/actions/lock-board@v1.1 + with: + boards: | + max32690_board_ex + lock: true + timeout: 900 # Attempt to lock for an hour + + - name: run_example_test + run: | + bash .github/workflows/scripts/example_tester.sh max32690_board_ex + + - name: Unlock Boards + if: always() + uses: Analog-Devices-MSDK/btm-ci-scripts/actions/lock-board@v1.1 + with: + lock: false + all_owned: true + + Example_Tests_MAX78002: + # The type of runner that the job will run on + runs-on: [self-hosted] + if: github.event.pull_request.draft == false + + + steps: + + - uses: actions/checkout@v4 + with: + submodules: false + repository: analogdevicesinc/msdk + fetch-depth: 0 + + - name: Set MAXIM_PATH + run: | + echo "MAXIM_PATH=$(pwd)" >> $GITHUB_ENV + printenv + + - name: Lock Boards + uses: Analog-Devices-MSDK/btm-ci-scripts/actions/lock-board@v1.1 + with: + boards: | + max78002_board_ex + lock: true + timeout: 900 # Attempt to lock for an hour + + - name: run_example_test + run: | + bash .github/workflows/scripts/example_tester_78002.sh max78002_board_ex + + - name: Unlock Boards + if: always() + uses: Analog-Devices-MSDK/btm-ci-scripts/actions/lock-board@v1.1 + with: + lock: false + all_owned: true + + + + + + + + + diff --git a/.github/workflows/labeler.yml b/.github/workflows/labeler.yml index 7a4215ad9dd..a3e50295ab3 100644 --- a/.github/workflows/labeler.yml +++ b/.github/workflows/labeler.yml @@ -1,3 +1,23 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + name: Pull Request Labeler # Controls when the workflow will run diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 422e82e6c68..6886c3cfc90 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -1,4 +1,23 @@ -################################# +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + ################################# ## Super Linter GitHub Actions ## ################################# @@ -43,7 +62,7 @@ jobs: # Checkout the code base # ########################## - name: Checkout Code - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: # Full git history is needed to get a proper list of changed files within `super-linter` fetch-depth: 0 @@ -59,7 +78,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Skip autogenerated register files and internal use board files - FILTER_REGEX_EXCLUDE: (.*\/Libraries\/((CMSIS\/Device\/Maxim\/[^\/]*\/Include)|(PeriphDrivers\/Source\/[^\/]*))\/[^\/]*_regs\.h)|(.*\/Libraries\/Boards\/[^\/]*\/(BCB|Emulator|Simulation|ROM)[^\/]*\/.*)|(.*\/Examples\/[^\/]*\/Display\/lvgl-8\.0\.2\/.*)|(.*\/Examples\/[^\/]*\/Demo\/lv_conf.h)|(.*\/Libraries\/CMSIS\/5.9.0\/.*)|(.*\/Libraries\/CMSIS\/Include\/.*)|(.*\/Libraries\/Cordio\/.*)|(.*\/Libraries\/SDHC\/.*)|(.*\/Libraries\/lwIP\/.*)|(.*\/Examples\/[^\/]*\/CNN\/.*) + FILTER_REGEX_EXCLUDE: (.*\/Libraries\/CMSIS\/Device\/Maxim\/.*\/Include\/partition_.*\.h)|(.*\/Libraries\/((CMSIS\/Device\/Maxim\/[^\/]*\/Include)|(PeriphDrivers\/Source\/[^\/]*))\/[^\/]*_regs\.h)|(.*\/Libraries\/Boards\/[^\/]*\/(BCB|Emulator|Simulation|ROM)[^\/]*\/.*)|(.*\/Examples\/[^\/]*\/Display\/lvgl-8\.0\.2\/.*)|(.*\/Examples\/[^\/]*\/Demo\/lv_conf.h)|(.*\/Libraries\/CMSIS\/5.9.0\/.*)|(.*\/Libraries\/CMSIS\/Include\/.*)|(.*\/Libraries\/Cordio\/.*)|(.*\/Libraries\/SDHC\/.*)|(.*\/Libraries\/lwIP\/.*)|(.*\/Examples\/[^\/]*\/CNN\/.*)|(.*\/Libraries\/tinyusb\/.*)|(.*\/Libraries\/CMSIS\/5\.9\.0\/DSP\/.*)|(.*\/Libraries\/CMSIS\/Device\/Maxim\/MAX32657\/Source\/Template\/.*)|(.*\/partition_.*\.h) # Explicity turn off all linters except CPP # SuperLinter Documentation says all we need to do is turn on the ones we want diff --git a/.github/workflows/scripts/build.py b/.github/workflows/scripts/build.py index 2c962760220..e4397e363ee 100644 --- a/.github/workflows/scripts/build.py +++ b/.github/workflows/scripts/build.py @@ -1,4 +1,5 @@ -from pathlib import Path + +from pathlib import Path, PurePath import os from subprocess import run import argparse @@ -13,20 +14,28 @@ blacklist = [ "MAX32570", "MAX32572", + "MAX32657", + "MAX32665/BLE_LR_Central", + "MAX32665/BLE_LR_Peripheral", "MAXREFDES178", - "BCB", - "ROM", - "Simulation", - "BCB_PBM", - "Emulator", - "Emulator_NFC", - "EvKit_129B", + "BCB", + "ROM", + "Simulation", + "BCB_PBM", + "Emulator", + "Emulator_NFC", + "EvKit_129B", "EvKit_129C", "WLP_VAR", "WLP_DB", "TQFN_DB", "WLP_V1" + ] +project_blacklist = { + "BLE_LR_Central", + "BLE_LR_Peripheral", +} known_errors = [ "ERR_NOTSUPPORTED", @@ -42,6 +51,8 @@ "BLE_FreeRTOS" ] +console = Console(emoji=False, color_system="standard") + def build_project(project:Path, target, board, maxim_path:Path, distclean=False, extra_args=None) -> Tuple[int, tuple]: clean_cmd = "make clean" if not distclean else "make distclean" res = run(clean_cmd, cwd=project, shell=True, capture_output=True, encoding="utf-8") @@ -52,6 +63,17 @@ def build_project(project:Path, target, board, maxim_path:Path, distclean=False, build_cmd += f" {str(extra_args)}" res = run(build_cmd, cwd=project, shell=True, capture_output=True, encoding="utf-8") + if res.returncode != 0 and ("Bluetooth" in project.as_posix() or "BLE" in project.as_posix()): + # NOTE: Special case is required to handle some Cordio re-builds. + # TODO: Track Cordio options better across library re-builds + console.print(f"[red]BLE project {project} failed.[/red]") + console.print("[yellow]Trying a clean.cordio and rebuild...[/yellow]") + clean_cmd += "&& make clean.cordio" + run(clean_cmd, cwd=project, shell=True, capture_output=True, encoding="utf-8") + res = run(build_cmd, cwd=project, shell=True, capture_output=True, encoding="utf-8") + if res.returncode == 0: + console.print("[green]Pass[/green] after rebuild.") + project_info = { "target":target, "project":project.name, @@ -75,7 +97,7 @@ def build_project(project:Path, target, board, maxim_path:Path, distclean=False, # to stdout. For these warnings, stderr is non-null but empty if res.stderr == '': known_error = True - + if fail and known_error: # build error fail = False @@ -93,11 +115,99 @@ def build_project(project:Path, target, board, maxim_path:Path, distclean=False, return (return_code, project_info) +def query_build_variable(project:Path, variable:str) -> list: + result = run(f"make query QUERY_VAR=\"{variable}\"", cwd=project, shell=True, capture_output=True, encoding="utf-8") + if result.returncode != 0: + return [] + + output = [] + for v in variable.split(" "): + for line in result.stdout.splitlines(): + if line[:len(v)] == v: + # query output string will be "{variable}={item1, item2, ..., itemN}" + output += str(line).split("=")[1].split(" ") + + return output + +""" +Create a dictionary mapping each target micro to its dependencies in the MSDK. +The dependency paths contain IPATH, VPATH, SRCS, and LIBS from all of the target's examples. + +The format of the dependency map a dictionary: + dependency_map[TARGET] = [DEPENDENCIES] + + where TARGET is the target micro's part number (ex: MAX78000) + and DEPENDENCIES is a list of absolute paths as strings (ex: ['/home/jhcarter/repos/msdk/Examples/MAX32690/ADC', + '/home/jhcarter/repos/msdk/Examples/MAX32690/ADC/board.c', + ...]) + the paths may be a file or a folder. +""" +def create_dependency_map(maxim_path:Path, targets:list) -> dict: + dependency_map = dict() + + with Progress(console=console) as progress: + task_dependency_map = progress.add_task("Creating dependency map...", total=len(targets)) + for target in targets: + progress.update(task_dependency_map, description=f"Creating dependency map for {target}...") + dependency_map[target] = [] + examples_dir = Path(maxim_path / "Examples" / target) + if examples_dir.exists(): + projects = [Path(i).parent for i in examples_dir.rglob("**/project.mk")] + for project in projects: + console.print(f"\t- Checking dependencies: {project}") + dependencies = query_build_variable(project, "IPATH SRCS LIBS") + dependencies = list(set(dependencies)) + for i in dependencies: + if i == ".": + dependencies.remove(i) + i = project + + # Convert to absolute paths + if not Path(i).is_absolute(): + dependencies.remove(i) + corrected = Path(Path(project) / i).absolute() + i = corrected + + if i not in dependency_map[target]: + dependency_map[target].append(str(Path(i).resolve())) + + + if "." in dependency_map[target]: + dependency_map[target].remove(".") # Root project dir + if str(maxim_path) in dependency_map[target]: + dependency_map[target].remove(str(maxim_path)) # maxim_path gets added for "mxc_version.h" + + dependency_map[target] = sorted(list(set(dependency_map[target]))) + # console.print(dependency_map[target]) + progress.update(task_dependency_map, advance=1) + + return dependency_map + +""" +Return a list of target microcontrollers that are affected by a change to the specified file. +""" +def get_affected_targets(dependency_map: dict, file: Path) -> list: + file = Path(file) + affected = [] + for target in dependency_map.keys(): + add = False + if target in str(file).upper(): + add = True + else: + for dependency in dependency_map[target]: + if str(file) == dependency: + add = True + elif file.suffix == ".h" and file.is_relative_to(dependency): + add = True -def test(maxim_path : Path = None, targets=None, boards=None, projects=None): + if add: + break - console = Console(emoji=False, color_system="standard") + if add and target not in affected: affected.append(target) + return affected + +def test(maxim_path : Path = None, targets=None, boards=None, projects=None, change_file=None): env = os.environ.copy() if maxim_path is None and "MAXIM_PATH" in env.keys(): maxim_path = Path(env['MAXIM_PATH']).absolute() @@ -105,12 +215,19 @@ def test(maxim_path : Path = None, targets=None, boards=None, projects=None): else: console.print("MAXIM_PATH not set.") return - + env["FORCE_COLOR"] = 1 + console.print(f"Blacklist: {blacklist}") + console.print(f"Project blacklist: {project_blacklist}") + console.print(f"Known errors: {known_errors}") + console.print(f"Hard FP whitelist: {hardfp_test_list}") + # Remove the periphdrivers build directory console.print("Cleaning PeriphDrivers build directories...") shutil.rmtree(Path(maxim_path) / "Libraries" / "PeriphDrivers" / "bin", ignore_errors=True) + console.print("Cleaning Cordio build directories...") + shutil.rmtree(Path(maxim_path) / "Libraries" / "Cordio" / "bin", ignore_errors=True) # Get list of target micros if none is specified if targets is None: @@ -122,7 +239,7 @@ def test(maxim_path : Path = None, targets=None, boards=None, projects=None): targets.append(dir.name) # Append subdirectories of Examples to list of target micros console.print(f"Detected target microcontrollers: {targets}") - + else: assert(type(targets) is list) console.print(f"Testing {targets}") @@ -130,6 +247,42 @@ def test(maxim_path : Path = None, targets=None, boards=None, projects=None): # Enforce alphabetical ordering targets = sorted(targets) + if (args.change_file is not None): + console.print(f"Reading '{args.change_file}'") + targets_to_skip = [] + for i in targets: targets_to_skip.append(i) + files:list = [] + with open(args.change_file, "r") as change_file: + files = change_file.read().strip().replace(" ", "\n").splitlines() + files = [maxim_path / file for file in files] + + if not files: + console.print("[red]Changed files is empty. Skipping dependency checks.[/red]") + else: + console.print("Creating dependency map...") + dependency_map = create_dependency_map(maxim_path, targets) + console.print(f"Checking {len(files)} changed files...") + + for f in files: + affected = get_affected_targets(dependency_map, f) + if affected: + for i in affected: + if i in targets_to_skip: + targets_to_skip.remove(i) + console.print(f"\t- Testing {i} from change to {f}") + else: + console.print(f"\t- Unknown effects from change to {f}, testing everything") + targets_to_skip.clear() + + if len(targets_to_skip) == 0: break + + targets = [i for i in targets if i not in targets_to_skip] + + if targets is not None: + console.print(f"Testing: {targets}") + else: + console.print("Nothing to be tested.") + # Track failed projects for end summary failed = [] warnings = [] @@ -156,27 +309,29 @@ def test(maxim_path : Path = None, targets=None, boards=None, projects=None): console.print(f"Testing {boards}") boards = sorted(boards) # Enforce alphabetical ordering - + # Get list of examples for this target. - _projects = [] + _projects = set() if projects is None: console.print(f"[yellow]Auto-searching for {target} examples...[/yellow]") for dirpath, subdirs, items in os.walk(maxim_path / "Examples" / target): - if 'Makefile' in items and ("main.c" in items or "project.mk" in items): - _projects.append(Path(dirpath)) + if 'Makefile' in items and ("main.c" in items or "project.mk" in items) and PurePath(dirpath).name not in project_blacklist: + _projects.add(Path(dirpath)) else: assert(type(projects) is list) for dirpath, subdirs, items in os.walk(maxim_path / "Examples" / target): dirpath = Path(dirpath) if dirpath.name in projects: - _projects.append(dirpath) - + _projects.add(dirpath) + + + console.print(f"Found {len(_projects)} projects for [bold cyan]{target}[/bold cyan]") console.print(f"Detected boards: {boards}") _projects = sorted(_projects) # Enforce alphabetical ordering - + with Progress(console=console) as progress: task_build = progress.add_task(description=f"{target}: PeriphDrivers", total=(len(_projects) * len(boards)) + len(boards)) @@ -188,7 +343,7 @@ def test(maxim_path : Path = None, targets=None, boards=None, projects=None): for p in _projects: if p.name == "Hello_World": hello_world = p - + if hello_world is None: console.print(f"[red]Failed to locate Hello_World for {target}[/red]") else: @@ -237,7 +392,7 @@ def test(maxim_path : Path = None, targets=None, boards=None, projects=None): (return_code, project_info) = build_project(project, target, board, maxim_path, distclean=False) # Error check build command - if return_code == 1: + if return_code == 1: console.print(f"\n[red]{target} ({board}): {project_name} failed.[/red]") print(f"Build command: {project_info['build_cmd']}") console.print("[bold]Errors:[/bold]") @@ -304,7 +459,7 @@ def test(maxim_path : Path = None, targets=None, boards=None, projects=None): elif not periph_success: progress.update(task_build, description=f"[bold cyan]{target}[/bold cyan]: [red]PeriphDriver build failed.[/red]", refresh=True) else: - progress.update(task_build, description=f"[bold cyan]{target}[/bold cyan]: [red]Failed for {target_fails}/{len(_projects)} projects[/red]", refresh=True) + progress.update(task_build, description=f"[bold cyan]{target}[/bold cyan]: [red]Failed for {target_fails}/{len(_projects)} projects[/red]", refresh=True) boards = None # Reset boards list _projects = None # Reset projects list @@ -314,7 +469,7 @@ def test(maxim_path : Path = None, targets=None, boards=None, projects=None): print(f"{len(warnings)} projects with warnings:") for p in warnings: console.print(f"[bold cyan]{p['target']}[/bold cyan]: [bold]{p['project']}[/bold] [yellow]warnings[/yellow] for [yellow]{p['board']}[/yellow]") - + if (len(failed) > 0): print("Failed projects:") for p in failed: @@ -330,15 +485,18 @@ def test(maxim_path : Path = None, targets=None, boards=None, projects=None): parser.add_argument("--targets", type=str, nargs="+", required=False, help="Target microcontrollers to test.") parser.add_argument("--boards", type=str, nargs="+", required=False, help="Boards to test. Should match the BSP folder-name exactly.") parser.add_argument("--projects", type=str, nargs="+", required=False, help="Examples to populate. Should match the example's folder name.") +parser.add_argument("--change_file", type=str, required=False, help="(Optional) Pass a text file containing a list of space-separated or new-line separated changed files. The build script will intelligently adjust which parts it tests based on this list.") if __name__ == "__main__": args = parser.parse_args() inspect(args, title="Script arguments:", ) + exit( test( maxim_path=args.maxim_path, targets=args.targets, boards=args.boards, - projects=args.projects + projects=args.projects, + change_file=args.change_file ) ) diff --git a/.github/workflows/scripts/example_tester.sh b/.github/workflows/scripts/example_tester.sh new file mode 100644 index 00000000000..26f5eeffdb4 --- /dev/null +++ b/.github/workflows/scripts/example_tester.sh @@ -0,0 +1,515 @@ +#! /usr/bin/bash + +<<"CONFIGURATION" +The following is the configuration for hardware (max32690): +remove JP7(RX_EN) and install JP8(TX_EN) headers +Install headers JP9 and JP10 to SDA and SCL respectively. +You must connect P1.8->P2.8 (SCL) and P1.7->P2.7 (SCL). +Connect pins P2.12->P1.9 for UART test +connect MISO (P2.27) and MOSI (P2.28) pins +Apply an input voltage between 0 and 1.25V to pin labeled 0 of the JH6 (Analog) header. for ADC +CONFIGURATION + + +# variable for configuration +baudRate=115200 +timeLimit=5 +timeLimitICC=30 #ICC needs around 20s to finish the test +boardVersion=max32690 +#boardName=max32690-1 +boardName=$1 +uartPort=$(resource_manager -g $boardName.console_port) +target_uc=$(resource_manager -g $boardName.target) +#MAXIM_PATH=/home/jcai/Workspace/msdk +Path=$MAXIM_PATH/Examples/$target_uc + +# variable for testing purpose +tempFile=.temp.txt +result_UART_INTERRUPT='not tested' +result_UART_DMA='not tested' +result_HelloWorld='not tested' +result_HelloWorld_Cpp='not tested' +result_TRNG='not tested' +result_I2C='not tested' +result_SPI_POLLING='not tested' +result_SPI_INTERRUPT='not tested' +result_SPI_DMA='not tested' +result_SPI_V2_POLLING='not tested' #this is only for max32690 +result_SPI_V2_INTERRUPT='not tested' #this is only for max32690 +result_SPI_V2_DMA='not tested' #this is only for max32690 +result_ICC='not tested' +result_Hash='not tested' +result_DMA='not tested' +result_CRC='not tested' +result_ADC_POLLING='not tested' +result_ADC_INTERRUPT='not tested' +result_ADC_DMA='not tested' +result_Lib_Gen='not tested' +result_Lib_Use='not tested' + +function init() { + # print the testcase + echo "-------------------------------------------------------------------" + echo "Start testing $1 Example:" + # clean the temp file + rm -rf $tempFile + sleep 2 + + # do initialization, compiler and flash the code + testName=$1 + if [[ $testName != Library_Use ]] + then + make -C $Path/$testName distclean + + if [[ $1 = "SPI" || $1 = "SPI_v2" || $1 = "ADC" || $1 = "UART" ]]; + then + make -j -C $Path/$testName METHOD=$2 + else + make -j -C $Path/$testName + fi + fi + + if [[ $testName != Library_Generate && $testName != Library_Use ]] + then + stty -F $uartPort $baudRate + ocdflash $boardName $Path/$testName/build/$boardVersion.elf + if [[ $testName = ICC ]] + then + timeout $timeLimitICC cat $uartPort > $tempFile + else + timeout $timeLimit cat $uartPort > $tempFile + fi + fi +} + +function test_Hello_World() { + init Hello_World + + # start testing the output + grep "Hello World!" $tempFile + if [[ $? -eq 0 ]]; + then + result_HelloWorld='pass' + else + result_HelloWorld='fail' + fi + + printf "Test result for Hello_World: $result_HelloWorld\n" + +} + +function test_Hello_World_Cpp() { + init Hello_World_Cpp + + # start testing the output + grep "C++ Hello World Example" $tempFile + if [[ $? -eq 0 ]]; + then + result_HelloWorld_Cpp='pass' + else + result_HelloWorld_Cpp='fail' + fi + + printf "Test result for Hello_World_Cpp: $result_HelloWorld_Cpp\n" + +} + +function test_UART() { + init UART INTERRUPT + + # start testing the output + grep "Example Succeeded" $tempFile + if [[ $? -eq 0 ]]; + then + result_UART_INTERRUPT='pass' + else + result_UART_INTERRUPT='fail' + fi + + printf "Test result for UART_INTERRUPT: $result_UART_INTERRUPT\n" +: ' + init UART DMA + + # start testing the output + grep "Example Succeeded" $tempFile + if [[ $? -eq 0 ]]; + then + result_UART_DMA='pass' + else + result_UART_DMA='fail' + fi + + printf "Test result for UART_DMA: $result_UART_DMA\n" +' +} + +function test_TRNG() { + init TRNG + + # start testing the output + grep "Test Complete" $tempFile + if [[ $? -eq 0 ]]; + then + result_TRNG='pass' + else + result_TRNG='fail' + fi + + printf "Test result for TRNG: $result_TRNG\n" + +} + + +function test_I2C() { + init I2C + + # start testing the output + grep "I2C Transaction Successful" $tempFile + if [[ $? -eq 0 ]]; + then + result_I2C='pass' + else + result_I2C='fail' + fi + + printf "Test result for I2C: $result_I2C\n" + +} + +function test_SPI() { + init SPI MASTERSYNC + + # start testing the output + grep "16 Bits Transaction Successful" $tempFile + if [[ $? -eq 0 ]]; + then + result_SPI_POLLING='pass' + else + result_SPI_POLLING='fail' + fi + + printf "Test result for SPI_POLLING: $result_SPI_POLLING\n" + + init SPI MASTERASYNC + + # start testing the output + grep "16 Bits Transaction Successful" $tempFile + if [[ $? -eq 0 ]]; + then + result_SPI_INTERRUPT='pass' + else + result_SPI_INTERRUPT='fail' + fi + + printf "Test result for SPI_INTERRUPT: $result_SPI_INTERRUPT\n" + + init SPI MASTERDMA + + # start testing the output + grep "16 Bits Transaction Successful" $tempFile + if [[ $? -eq 0 ]]; + then + result_SPI_DMA='pass' + else + result_SPI_DMA='fail' + fi + + printf "Test result for SPI_DMA: $result_SPI_DMA\n" + +} + +function test_SPI_V2() { + init SPI_v2 CONTROLLER_SYNC + + # start testing the output + grep "16 Bits Transaction Successful" $tempFile + if [[ $? -eq 0 ]]; + then + result_SPI_V2_POLLING='pass' + else + result_SPI_V2_POLLING='fail' + fi + + printf "Test result for SPI_v2_POLLING: $result_SPI_V2_POLLING\n" + + init SPI_v2 CONTROLLER_ASYNC + + # start testing the output + grep "16 Bits Transaction Successful" $tempFile + if [[ $? -eq 0 ]]; + then + result_SPI_V2_INTERRUPT='pass' + else + result_SPI_V2_INTERRUPT='fail' + fi + + printf "Test result for SPI_v2_INTERRUPT: $result_SPI_V2_INTERRUPT\n" + + init SPI_v2 CONTROLLER_DMA + + # start testing the output + grep "16 Bits Transaction Successful" $tempFile + if [[ $? -eq 0 ]]; + then + result_SPI_V2_DMA='pass' + else + result_SPI_V2_DMA='fail' + fi + + printf "Test result for SPI_v2_DMA: $result_SPI_V2_DMA\n" + +} +function test_ICC() { + init ICC + + # start testing the output + grep "Example Succeeded" $tempFile + if [[ $? -eq 0 ]]; + then + result_ICC='pass' + else + result_ICC='fail' + fi + + printf "Test result for ICC: $result_ICC\n" + +} + +function test_Hash() { + init Hash + + # start testing the output + grep "Example Succeeded" $tempFile + if [[ $? -eq 0 ]]; + then + result_Hash='pass' + else + result_Hash='fail' + fi + + printf "Test result for Hash: $result_Hash\n" + +} + +function test_DMA() { + init DMA + + # start testing the output + grep "Example Succeeded" $tempFile + if [[ $? -eq 0 ]]; + then + result_DMA='pass' + else + result_DMA='fail' + fi + + printf "Test result for DMA: $result_DMA\n" + +} + +function test_CRC() { + init CRC + + # start testing the output + grep "Example Succeeded" $tempFile + if [[ $? -eq 0 ]]; + then + result_CRC='pass' + else + result_CRC='fail' + fi + + printf "Test result for CRC: $result_CRC\n" + +} + + +function test_ADC() { + + init ADC POLLING + + # start testing the output + result_ADC_POLLING='pass' + grep "Running Single Channel Example" $tempFile + if [[ $? -ne 0 ]]; + then + result_ADC_POLLING='fail' + fi + + grep "Running Temperature Sensor Example" $tempFile + if [[ $? -ne 0 ]]; + then + result_ADC_POLLING='fail' + fi + + grep "Running Multi Channel Example" $tempFile + if [[ $? -ne 0 ]]; + then + result_ADC_POLLING='fail' + fi + printf "Test result for ADC_POLLING: $result_ADC_POLLING\n" + + init ADC INTERRUPT + + # start testing the output + result_ADC_INTERRUPT='pass' + grep "Running Single Channel Example" $tempFile + if [[ $? -ne 0 ]]; + then + result_ADC_INTERRUPT='fail' + fi + + grep "Running Temperature Sensor Example" $tempFile + if [[ $? -ne 0 ]]; + then + result_ADC_INTERRUPT='fail' + fi + + grep "Running Multi Channel Example" $tempFile + if [[ $? -ne 0 ]]; + then + result_ADC_INTERRUPT='fail' + fi + printf "Test result for ADC_INTERRUPT: $result_ADC_INTERRUPT\n" + + init ADC DMA + + # start testing the output + result_ADC_DMA='pass' + grep "Running Single Channel Example" $tempFile + if [[ $? -ne 0 ]]; + then + result_ADC_DMA='fail' + fi + + grep "Running Temperature Sensor Example" $tempFile + if [[ $? -ne 0 ]]; + then + result_ADC_DMA='fail' + fi + + grep "Running Multi Channel Example" $tempFile + if [[ $? -ne 0 ]]; + then + result_ADC_DMA='fail' + fi + printf "Test result for ADC_DMA: $result_ADC_DMA\n" +} + +function test_Lib_Gen() { + init Library_Generate + + # start testing the output + find $Path/$testName/build/$boardVersion.a + if [[ $? -eq 0 ]]; + then + result_Lib_Gen='pass' + else + result_Lib_Gen='fail' + fi + + printf "Test result for Library_Generate: $result_Lib_Gen\n" + +} + +function test_Lib_Use() { + init Library_Use + + # start testing the output + make -C $Path/$testName distclean + make -C $Path/$testName + if [[ $? -eq 0 ]]; + then + result_Lib_Use='pass' + else + result_Lib_Use='fail' + fi + + printf "Test result for Library_Use: $result_Lib_Use\n" + +} + +function summary() { + printf "*************************Result Summary****************************\n" + printf "Test result for Hello_World: $result_HelloWorld\n" + printf "Test result for Hello_World_Cpp: $result_HelloWorld_Cpp\n" + printf "Test result for UART_INTERRUPT: $result_UART_INTERRUPT\n" + printf "Test result for UART_DMA: $result_UART_DMA\n" + printf "Test result for TRNG: $result_TRNG\n" + printf "Test result for I2C: $result_I2C\n" + printf "Test result for SPI_POLLING: $result_SPI_POLLING\n" + printf "Test result for SPI_INTERRUPT: $result_SPI_INTERRUPT\n" + printf "Test result for SPI_DMA: $result_SPI_DMA\n" + if [[ $boardVersion = max32690 ]] + then + printf "Test result for SPI_v2_POLLING: $result_SPI_V2_POLLING\n" + printf "Test result for SPI_v2_INTERRUPT: $result_SPI_V2_INTERRUPT\n" + printf "Test result for SPI_v2_DMA: $result_SPI_V2_DMA\n" + fi + printf "Test result for ICC: $result_ICC\n" + printf "Test result for Hash: $result_Hash\n" + printf "Test result for DMA: $result_DMA\n" + printf "Test result for CRC: $result_CRC\n" + printf "Test result for ADC_POLLING: $result_ADC_POLLING\n" + printf "Test result for ADC_INTERRUPT: $result_ADC_INTERRUPT\n" + printf "Test result for ADC_DMA: $result_ADC_DMA\n" + printf "Test result for Library_Generate: $result_Lib_Gen\n" + printf "Test result for Library_Use: $result_Lib_Use\n" + +} + +function main() { + test_UART + if [[ $result_UART_INTERRUPT = 'fail' ]] + then + printf "Since UART INTERRUPT test fails, example test stops. " + return + fi + test_Hello_World + test_Hello_World_Cpp + test_TRNG + #test_I2C + test_SPI + if [[ $boardVersion = max32690 ]] + then + test_SPI_V2 + fi + test_Hash + test_DMA + test_CRC + test_ADC + test_ICC + test_Lib_Gen + test_Lib_Use + + summary + # clean the temp file + rm -rf $tempFile +} + +main +if [[ $result_UART_INTERRUPT = "fail" || + $result_UART_DMA = "fail" || + $result_HelloWorld = "fail" || + $result_HelloWorld_Cpp = "fail" || + $result_TRNG = "fail" || + $result_I2C = "fail" || + $result_SPI_POLLING = "fail" || + $result_SPI_INTERRUPT = "fail" || + $result_SPI_DMA = "fail" || + $result_SPI_V2_POLLING = "fail" || # Only for max32690 + $result_SPI_V2_INTERRUPT = "fail" || # Only for max32690 + $result_SPI_V2_DMA = "fail" || # Only for max32690 + $result_ICC = "fail" || + $result_Hash = "fail" || + $result_DMA = "fail" || + $result_CRC = "fail" || + $result_ADC_POLLING = "fail" || + $result_ADC_INTERRUPT = "fail" || + $result_ADC_DMA = "fail" || + $result_Lib_Gen = "fail" || + $result_Lib_Use = "fail" ]]; then + exit 2 + else + exit 0 +fi diff --git a/.github/workflows/scripts/example_tester_78002.sh b/.github/workflows/scripts/example_tester_78002.sh new file mode 100644 index 00000000000..00281ad31cb --- /dev/null +++ b/.github/workflows/scripts/example_tester_78002.sh @@ -0,0 +1,353 @@ +#! /usr/bin/bash + +<<"CONFIGURATION" +The following is the configuration for hardware (max78002): +Close jumper (RX - P0.0) and (TX - P0.1) at Headers JP23 (UART 0 EN). +Install headers JP9 and JP10 to SDA and SCL respectively. +You must connect P0.10 to P0.16 (SCL) and P0.11 to P0.17 (SDA) +Connect P0.12 to P1.1. Connect P0.13 to P1.0. for UART test +Connect P0.21 (MOSI) to P0.22 (MISO). +Apply an input voltage between 0 and 1.25V to pin labeled 0 of the JH6 (Analog) header. for ADC +CONFIGURATION + + +# variable for configuration +baudRate=115200 +timeLimit=5 +timeLimitICC=30 #ICC needs around 20s to finish the test +boardVersion=max78002 +#boardName=max78002-1 +boardName=$1 +uartPort=$(resource_manager -g $boardName.console_port) +target_uc=$(resource_manager -g $boardName.target) +Path=$MAXIM_PATH/Examples/$target_uc + +# variable for testing purpose +tempFile=.temp.txt +result_UART_INTERRUPT='not tested' +result_UART_DMA='not tested' +result_HelloWorld='not tested' +result_HelloWorld_Cpp='not tested' +result_TRNG='not tested' +result_I2C='not tested' +result_SPI='not tested' +result_ICC='not tested' +result_DMA='not tested' +result_CRC='not tested' +result_ADC_DMA='not tested' +result_Lib_Gen='not tested' +result_Lib_Use='not tested' + +function init() { + # print the testcase + echo "-------------------------------------------------------------------" + echo "Start testing $1 Example:" + # clean the temp file + rm -rf $tempFile + sleep 2 + + # do initialization, compiler and flash the code + testName=$1 + if [[ $testName != Library_Use ]] + then + make -C $Path/$testName distclean + + if [[ $1 == "ADC" || $1 == "UART" ]]; then + make -j -C "$Path/$testName" METHOD="$2" + else + make -j -C "$Path/$testName" + fi + + fi + + if [[ $testName != Library_Generate && $testName != Library_Use ]] + then + stty -F $uartPort $baudRate + ocdflash $boardName $Path/$testName/build/$boardVersion.elf + if [[ $testName = ICC ]] + then + timeout $timeLimitICC cat $uartPort > $tempFile + else + timeout $timeLimit cat $uartPort > $tempFile + fi + fi +} + +function test_Hello_World() { + init Hello_World + + # start testing the output + grep "Hello World!" $tempFile + if [[ $? -eq 0 ]]; + then + result_HelloWorld='pass' + else + result_HelloWorld='fail' + fi + + printf "Test result for Hello_World: $result_HelloWorld\n" + +} + +function test_Hello_World_Cpp() { + init Hello_World_Cpp + + # start testing the output + grep "C++ Hello World Example" $tempFile + if [[ $? -eq 0 ]]; + then + result_HelloWorld_Cpp='pass' + else + result_HelloWorld_Cpp='fail' + fi + + printf "Test result for Hello_World_Cpp: $result_HelloWorld_Cpp\n" + +} + +function test_UART() { + init UART INTERRUPT + + # start testing the output + grep "Example Succeeded" $tempFile + if [[ $? -eq 0 ]]; + then + result_UART_INTERRUPT='pass' + else + result_UART_INTERRUPT='fail' + fi + + printf "Test result for UART_INTERRUPT: $result_UART_INTERRUPT\n" + init UART DMA + + # start testing the output + grep "Example Succeeded" $tempFile + if [[ $? -eq 0 ]]; + then + result_UART_DMA='pass' + else + result_UART_DMA='fail' + fi + + printf "Test result for UART_DMA: $result_UART_DMA\n" +} + +function test_TRNG() { + init TRNG + + # start testing the output + grep "Test Complete" $tempFile + if [[ $? -eq 0 ]]; + then + result_TRNG='pass' + else + result_TRNG='fail' + fi + + printf "Test result for TRNG: $result_TRNG\n" + +} + + +function test_I2C() { + init I2C + + # start testing the output + grep "I2C Transaction Successful" $tempFile + if [[ $? -eq 0 ]]; + then + result_I2C='pass' + else + result_I2C='fail' + fi + + printf "Test result for I2C: $result_I2C\n" + +} + +function test_SPI() { + init SPI + + # start testing the output + grep "16 Bits Transaction Successful" $tempFile + if [[ $? -eq 0 ]]; + then + result_SPI='pass' + else + result_SPI='fail' + fi + + printf "Test result for SPI: $result_SPI\n" + + +} + +function test_ICC() { + init ICC + + # start testing the output + grep "Example Succeeded" $tempFile + if [[ $? -eq 0 ]]; + then + result_ICC='pass' + else + result_ICC='fail' + fi + + printf "Test result for ICC: $result_ICC\n" + +} + + +function test_DMA() { + init DMA + + # start testing the output + grep "Example Succeeded" $tempFile + if [[ $? -eq 0 ]]; + then + result_DMA='pass' + else + result_DMA='fail' + fi + + printf "Test result for DMA: $result_DMA\n" + +} + +function test_CRC() { + init CRC + + # start testing the output + grep "Example Succeeded" $tempFile + if [[ $? -eq 0 ]]; + then + result_CRC='pass' + else + result_CRC='fail' + fi + + printf "Test result for CRC: $result_CRC\n" + +} + + +function test_ADC() { + + init ADC DMA + + # start testing the output + result_ADC_DMA='pass' + grep "Running Single Channel Example" $tempFile + if [[ $? -ne 0 ]]; + then + result_ADC_DMA='fail' + fi + + grep "Running Temperature Sensor Example" $tempFile + if [[ $? -ne 0 ]]; + then + result_ADC_DMA='fail' + fi + + grep "Running Multi Channel Example" $tempFile + if [[ $? -ne 0 ]]; + then + result_ADC_DMA='fail' + fi + printf "Test result for ADC_DMA: $result_ADC_DMA\n" +} + +function test_Lib_Gen() { + init Library_Generate + + # start testing the output + find $Path/$testName/build/$boardVersion.a + if [[ $? -eq 0 ]]; + then + result_Lib_Gen='pass' + else + result_Lib_Gen='fail' + fi + + printf "Test result for Library_Generate: $result_Lib_Gen\n" + +} + +function test_Lib_Use() { + init Library_Use + + # start testing the output + make -C $Path/$testName distclean + make -C $Path/$testName + if [[ $? -eq 0 ]]; + then + result_Lib_Use='pass' + else + result_Lib_Use='fail' + fi + + printf "Test result for Library_Use: $result_Lib_Use\n" + +} + +function summary() { + printf "*************************Result Summary****************************\n" + printf "Test result for Hello_World: $result_HelloWorld\n" + printf "Test result for Hello_World_Cpp: $result_HelloWorld_Cpp\n" + printf "Test result for UART_INTERRUPT: $result_UART_INTERRUPT\n" + printf "Test result for UART_DMA: $result_UART_DMA\n" + printf "Test result for TRNG: $result_TRNG\n" + printf "Test result for I2C: $result_I2C\n" + printf "Test result for SPI: $result_SPI\n" + printf "Test result for ICC: $result_ICC\n" + printf "Test result for DMA: $result_DMA\n" + printf "Test result for CRC: $result_CRC\n" + printf "Test result for ADC_DMA: $result_ADC_DMA\n" + printf "Test result for Library_Generate: $result_Lib_Gen\n" + printf "Test result for Library_Use: $result_Lib_Use\n" + +} + +function main() { + test_UART + if [[ $result_UART_INTERRUPT = 'fail' ]] + then + printf "Since UART INTERRUPT test fails, example test stops. " + return + fi + test_Hello_World + test_Hello_World_Cpp + test_TRNG + test_I2C + test_SPI + test_DMA + test_CRC + test_ADC + test_ICC + test_Lib_Gen + test_Lib_Use + + summary + # clean the temp file + rm -rf $tempFile +} + +main +if [[ $result_UART_INTERRUPT = "fail" || + $result_UART_DMA = "fail" || + $result_HelloWorld = "fail" || + $result_HelloWorld_Cpp = "fail" || + $result_TRNG = "fail" || + $result_I2C = "fail" || + $result_SPI = "fail" || + $result_ICC = "fail" || + $result_DMA = "fail" || + $result_CRC = "fail" || + $result_ADC_DMA = "fail" || + $result_Lib_Gen = "fail" || + $result_Lib_Use = "fail" ]]; then + exit 2 + else + exit 0 +fi diff --git a/.github/workflows/scripts/local_BLE_Examples_Test.sh b/.github/workflows/scripts/local_BLE_Examples_Test.sh deleted file mode 100755 index 02656d927ea..00000000000 --- a/.github/workflows/scripts/local_BLE_Examples_Test.sh +++ /dev/null @@ -1,249 +0,0 @@ -#!/usr/bin/env bash - -echo -echo "#####################################################################################################################" -echo "# This script is used to test the BLE_Examples_Test.yml locally at wall-e. #" -echo "# local_BLE_Examples_Test.sh <0/1 for max32655> <0/1 for max32665> <0/1 for max32690 devkit> <0/1 for max32690 WLP> #" -echo "#####################################################################################################################" - -echo -echo $0 $@ - -if [[ $# -ne 4 ]]; then - echo - echo "Invalid arguments." - echo "local_BLE_Examples_Test.sh <0/1 for max32655> <0/1 for max32665> <0/1 for max32690 devkit> <0/1 for max32690 WLP>" - exit 1 -fi - -host=`hostname` -if [ $host == "wall-e" ]; then - MSDK=/home/$USER/Workspace/yc/msdk_open -else - MSDK=/home/$USER/Workspace/msdk_open -fi - -echo -echo "MSDK=$MSDK" - -DO_MAX32655=$1 -DO_MAX32665=$2 -DO_MAX32690_EVKIT=$3 -DO_MAX32690_WLP=$4 - -#-------------------------------------------------------------------------------------------------- -# For MAX32655 -if [[ $DO_MAX32655 -eq 1 ]]; then - echo - echo "-----------------------------------------------------------------------------------------" - echo "TEST MAX32655" - - echo - echo "Lock the used recourse files." - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32655_board1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32655_board2 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32665_board1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32690_board_w1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32690_board_A5 - - touch /home/$USER/Workspace/Resource_Share/local-BLE_Examples_Test-MAX32690_EvKit.txt - - set -e - - cd $MSDK - echo "PWD="`pwd` - - cd .github/workflows/scripts - chmod +x test_launcher.sh - FILE=/home/$USER/Workspace/Resource_Share/boards_config.json - if [ $(hostname) == "wall-e" ]; then - dut_uart=`/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32655_board2']['uart0'])"` - dut_serial=`/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32655_board2']['daplink'])"` - else - dut_uart=`/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32655_board_y2']['uart0'])"` - dut_serial=`/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32655_board_y2']['daplink'])"` - fi - ./test_launcher.sh max32655 $dut_uart $dut_serial - - echo - echo "Release the used resource files." - echo - ls -hal ~/Workspace/Resource_Share - - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32690_board_A5 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32690_board_w1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32665_board1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32655_board2 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32655_board1 - - echo - echo "-----------------------------------------------------------------------------------------" - echo "FINISH TEST MAX32655" -fi - -#-------------------------------------------------------------------------------------------------- -# For MAX32665 -if [[ $DO_MAX32665 -eq 1 ]]; then - echo - echo "-----------------------------------------------------------------------------------------" - echo "TEST MAX32665" - - echo "Lock the used recourse files." - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32655_board1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32655_board2 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32665_board1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32690_board_w1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32690_board_A5 - - touch /home/$USER/Workspace/Resource_Share/local-BLE_Examples_Test-MAX32665.txt - - set +e - - cd $MSDK - echo "PWD="`pwd` - - cd .github/workflows/scripts - chmod +x test_launcher.sh - FILE=/home/$USER/Workspace/Resource_Share/boards_config.json - if [ $(hostname) == "wall-e" ]; then - dut_uart=` /usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32665_board1']['uart1'])"` - dut_serial=`/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32665_board1']['daplink'])"` - else - dut_uart=` /usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32665_board_2']['uart1'])"` - dut_serial=`/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32665_board_2']['daplink'])"` - fi - - ./test_launcher.sh max32665 $dut_uart $dut_serial - - set -e - - echo - echo "Release the used resource files." - echo - ls -hal ~/Workspace/Resource_Share - - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32690_board_A5 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32690_board_w1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32665_board1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32655_board2 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32655_board1 - - echo - echo "-----------------------------------------------------------------------------------------" - echo "FINISH TEST MAX32655" -fi - -#-------------------------------------------------------------------------------------------------- -# For MAX32690_EVKIT -if [[ $DO_MAX32690_EVKIT -eq 1 ]]; then - echo - echo "-----------------------------------------------------------------------------------------" - echo "TEST MAX32690 EVKIT" - echo - - echo "Lock the used recourse files." - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32655_board1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32655_board2 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32665_board1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32690_board_w1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32690_board_A5 - - touch /home/$USER/Workspace/Resource_Share/local-BLE_Examples_Test-MAX32690_EvKit.txt - - set +e - - cd $MSDK - echo "PWD="`pwd` - - cd .github/workflows/scripts - chmod +x test_launcher.sh - FILE=/home/$USER/Workspace/Resource_Share/boards_config.json - if [ $(hostname) == "wall-e" ]; then - dut_uart=` /usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32690_board_w1']['uart2'])"` - dut_serial=`/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32690_board_w1']['daplink'])"` - else - dut_uart=` /usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32690_board_3']['uart2'])"` - dut_serial=`/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['max32690_board_3']['daplink'])"` - fi - - ./test_launcher.sh max32690 $dut_uart $dut_serial - - set -e - - echo - echo "Release the used resource files." - echo - ls -hal ~/Workspace/Resource_Share - - if [ -f /home/$USER/Workspace/Resource_Share/local-BLE_Examples_Test-MAX32690_EvKit.txt ]; then - rm /home/$USER/Workspace/Resource_Share/local-BLE_Examples_Test-MAX32690_EvKit.txt - fi - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32690_board_A5 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32690_board_w1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32665_board1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32655_board2 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32655_board1 - - echo - echo "-----------------------------------------------------------------------------------------" - echo "FINISH TEST MAX32690 EVKIT" -fi - - -#-------------------------------------------------------------------------------------------------- -# For MAX32690_WLP -if [[ $DO_MAX32690_WLP -eq 1 ]]; then - echo - echo "-----------------------------------------------------------------------------------------" - echo "TEST MAX32690 WLP" - echo - - FILE=/home/$USER/Workspace/Resource_Share/boards_config.json - - if [ $host == "wall-e" ]; then - max32690_wlp_brd=max32690_board_A5 - else - max32690_wlp_brd=max32690_board_A3 - fi - - dut_uart=` /usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['${max32690_wlp_brd}']['con_sn'])"` - dut_serial=`/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['${max32690_wlp_brd}']['DAP_sn'])"` - - echo "Lock the used recourse files." - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32655_board1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32655_board2 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32665_board1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 max32690_board_w1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py -l -t 3600 ${max32690_wlp_brd} - - touch /home/$USER/Workspace/Resource_Share/local-BLE_Examples_Test-MAX32690_WLP.txt # indicate which jos is running - set +e - - cd $MSDK - echo "PWD="`pwd` - - cd .github/workflows/scripts - chmod +x test_launcher.sh - ./test_launcher.sh max32690 $dut_uart $dut_serial WLP_V1 - - set -e - - echo - echo "Release the used resource files." - echo - ls -hal ~/Workspace/Resource_Share - - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py ${max32690_wlp_brd} - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32655_board1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32655_board2 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32665_board1 - python3 /home/$USER/Workspace/Resource_Share/Resource_Share.py max32690_board_w1 - - if [ -f /home/$USER/Workspace/Resource_Share/local-BLE_Examples_Test-MAX32690_WLP.txt ]; then - rm /home/$USER/Workspace/Resource_Share/local-BLE_Examples_Test-MAX32690_WLP.txt - fi - - echo - echo "-----------------------------------------------------------------------------------------" - echo "FINISH TEST MAX32690 WLP" -fi diff --git a/.github/workflows/scripts/mass_erase_board.sh b/.github/workflows/scripts/mass_erase_board.sh deleted file mode 100755 index 238ced8dbcf..00000000000 --- a/.github/workflows/scripts/mass_erase_board.sh +++ /dev/null @@ -1,76 +0,0 @@ -#!/bin/bash -#script accepts 2 arguments: device , device key in boards config - -#**************************************************************************************************** -# Function accepts parameters:device , CMSIS-DAP serial # -function erase_with_openocd() { - echo "-----------------------------------------------------------------------------------------" - printf "> Erasing $1 : $2 \r\n" - echo "-----------------------------------------------------------------------------------------" - echo - - $OPENOCD -f $OPENOCD_TCL_PATH/interface/cmsis-dap.cfg -f $OPENOCD_TCL_PATH/target/$1.cfg -s $OPENOCD_TCL_PATH/ -c "cmsis_dap_serial $2" -c "gdb_port 3333" -c "telnet_port 4444" -c "tcl_port 6666" -c "init; reset halt; max32xxx mass_erase 0;" -c " exit" & - openocd_dapLink_pid=$! - # wait for openocd to finish - wait $openocd_dapLink_pid - - # erase second bank of larger chips - if [[ $1 != "max32655" ]]; then - printf "> Erasing second bank of device: $1 with ID:$2 \r\n" - $OPENOCD -f $OPENOCD_TCL_PATH/interface/cmsis-dap.cfg -f $OPENOCD_TCL_PATH/target/$1.cfg -s $OPENOCD_TCL_PATH/ -c "cmsis_dap_serial $2" -c "gdb_port 3333" -c "telnet_port 4444" -c "tcl_port 6666" -c "init; reset halt; max32xxx mass_erase 1;" -c " exit" & - openocd_dapLink_pid=$! - # wait for openocd to finish - wait $openocd_dapLink_pid - fi -} - -#**************************************************************************************************** -# Function accepts parameters: device, CMSIS-DAP serial # -function flash_with_openocd() { - # mass erase and flash - set +e - $OPENOCD -f $OPENOCD_TCL_PATH/interface/cmsis-dap.cfg -f $OPENOCD_TCL_PATH/target/$1.cfg -s $OPENOCD_TCL_PATH -c "cmsis_dap_serial $2" -c "gdb_port 3333" -c "telnet_port 4444" -c "tcl_port 6666" -c "init; reset halt;max32xxx mass_erase 0" -c "program ext_flc_erase_$1.elf verify reset exit" >/dev/null & - openocd_dapLink_pid=$! - # wait for openocd to finish - while kill -0 $openocd_dapLink_pid; do - sleep 1 - # we can add a timeout here if we want - done - set -e - - # Check the return value to see if we received an error - if [ "$?" -ne "0" ]; then - printf "> Verify failed , flashibng again \r\n" - # Reprogram the device if the verify failed - $OPENOCD -f $OPENOCD_TCL_PATH/interface/cmsis-dap.cfg -f $OPENOCD_TCL_PATH/target/$1.cfg -s $OPENOCD_TCL_PATH -c "cmsis_dap_serial $2" -c "gdb_port 3333" -c "telnet_port 4444" -c "tcl_port 6666" -c "init; reset halt;max32xxx mass_erase 0" -c "program ext_flc_erase_$1.elf verify reset exit" >/dev/null & - openocd_dapLink_pid=$! - fi -} - -if [ $(hostname) == "wall-e" ]; then - FILE=/home/$USER/Workspace/Resource_Share/boards_config.json - # WALL-E paths - export OPENOCD_TCL_PATH=/home/btm-ci/Tools/openocd/tcl - export OPENOCD=/home/btm-ci/Tools/openocd/src/openocd -elif [ $(hostname) == "yingcai-OptiPlex-790" ]; then - FILE=/home/$USER/Workspace/Resource_Share/boards_config.json - export OPENOCD_TCL_PATH=/home/$USER/Tools/openocd/tcl - export OPENOCD=/home/$USER/Tools/openocd/src/openocd -else - FILE=/home/$USER/boards_config.json - export OPENOCD_TCL_PATH=/home/eddie/workspace/openocd/tcl - export OPENOCD=/home/eddie/workspace/openocd/src/openocd -fi -dut_serial=$(/usr/bin/python3 -c "import sys, json; print(json.load(open('$FILE'))['$2']['daplink'])") - -# flash device with an application to mass erase external flash -if [[ $1 != "max32690" ]]; then - # flash device with an application to mass erase external flash - echo "Flashing ext flash erase application on $1 with ID:$dut_serial" - flash_with_openocd $1 $dut_serial - echo "External flash erased" -fi -sleep 2 -# mass erase internal flash -erase_with_openocd $1 $dut_serial -echo "Internal flash erased" diff --git a/.github/workflows/scripts/plot_per_results.py b/.github/workflows/scripts/plot_per_results.py index 92ad25b3d93..910fb129c6d 100755 --- a/.github/workflows/scripts/plot_per_results.py +++ b/.github/workflows/scripts/plot_per_results.py @@ -2,10 +2,9 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/.github/workflows/scripts/test_launcher.sh b/.github/workflows/scripts/test_launcher.sh index 225b22cf186..326b370780f 100755 --- a/.github/workflows/scripts/test_launcher.sh +++ b/.github/workflows/scripts/test_launcher.sh @@ -295,21 +295,21 @@ function change_advertising_names() { if [ $(hostname) == "wall-e" ]; then # change advertising name for projects under test to avoid # connections with office devices - printf "> changing advertising names : $MSDK_DIR/Examples/$DUT_NAME_UPPER\r\n\r\n" - cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_dats + printf "> changing advertising names : $MSDK_DIR/Examples/$DUT_NAME_UPPER/Bluetooth\r\n\r\n" + cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/Bluetooth/BLE_dats perl -i -pe "s/\'D\'/\'X\'/g" dats_main.c - cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_datc + cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/Bluetooth/BLE_datc perl -i -pe "s/\'D\'/\'X\'/g" datc_main.c - cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_otac + cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/Bluetooth/BLE_otac perl -i -pe "s/\'S\'/\'X\'/g" datc_main.c - cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_otas + cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/Bluetooth/BLE_otas perl -i -pe "s/\'S\'/\'X\'/g" dats_main.c - cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_FreeRTOS + cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/Bluetooth/BLE_FreeRTOS perl -i -pe "s/\'S\'/\'X\'/g" dats_main.c # change advertising name to scan for on the main device client apps - cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/BLE_datc + cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/Bluetooth/BLE_datc perl -i -pe "s/\'D\'/\'X\'/g" datc_main.c - cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/BLE_otac + cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/Bluetooth/BLE_otac perl -i -pe "s/\'S\'/\'X\'/g" datc_main.c # build BLE examples cd $MSDK_DIR/Examples/$DUT_NAME_UPPER @@ -317,20 +317,20 @@ function change_advertising_names() { # change advertising name for projects under test to avoid # connections with office devices printf "> changing advertising names : $MSDK_DIR/Examples/$DUT_NAME_UPPER\r\n\r\n" - cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_dats + cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/Bluetooth/BLE_dats perl -i -pe "s/\'D\'/\'Z\'/g" dats_main.c - cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_datc + cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/Bluetooth/BLE_datc perl -i -pe "s/\'D\'/\'Z\'/g" datc_main.c - cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_otac + cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/Bluetooth/BLE_otac perl -i -pe "s/\'S\'/\'Z\'/g" datc_main.c - cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_otas + cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/Bluetooth/BLE_otas perl -i -pe "s/\'S\'/\'Z\'/g" dats_main.c - cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_FreeRTOS + cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/Bluetooth/BLE_FreeRTOS perl -i -pe "s/\'S\'/\'Z\'/g" dats_main.c # change advertising name to scan for on the main device client apps - cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/BLE_datc + cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/Bluetooth/BLE_datc perl -i -pe "s/\'D\'/\'Z\'/g" datc_main.c - cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/BLE_otac + cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/Bluetooth/BLE_otac perl -i -pe "s/\'S\'/\'Z\'/g" datc_main.c fi } @@ -419,23 +419,23 @@ function run_datcs_conencted_tests() { erase_all_devices # Flash MAIN_DEVICE with BLE_datc - cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/BLE_datc + cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/Bluetooth/BLE_datc make clean make libclean make -j # flash client first because it takes longer - cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/BLE_datc/build + cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/Bluetooth/BLE_datc/build printf "\r\n> Flashing BLE_datc on main device: $MAIN_DEVICE_NAME_UPPER\r\n" #flash_with_openocd_fast $MAIN_DEVICE_NAME_LOWER $MAIN_DEVICE_ID 1 flash_with_openocd $MAIN_DEVICE_NAME_LOWER $MAIN_DEVICE_ID 1 # flash DUT with BLE_dats - cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_dats + cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/Bluetooth/BLE_dats make clean make libclean make -j - cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_dats/build + cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/Bluetooth/BLE_dats/build printf "\r\n> Flashing BLE_dats on DUT $DUT_NAME_UPPER\r\n" #flash_with_openocd_fast $DUT_NAME_LOWER $DUT_ID 2 flash_with_openocd $DUT_NAME_LOWER $DUT_ID 2 @@ -462,7 +462,7 @@ function run_datcs_conencted_tests() { let "numOfFailedTests+=$testResult" failedTestList+="| BLE_dat_cs ($DUT_NAME_UPPER) " # test failed, save elfs datc/s - cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/BLE_datc/build + cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/Bluetooth/BLE_datc/build cp $MAIN_DEVICE_NAME_LOWER.elf $EXAMPLE_TEST_PATH/results/failed_elfs/$MAIN_DEVICE_NAME_LOWER"_BLE_datcs_client.elf" cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_dats/build cp $DUT_NAME_LOWER.elf $EXAMPLE_TEST_PATH/results/failed_elfs/$DUT_NAME_LOWER"_BLE_datcs_server.elf" @@ -497,7 +497,7 @@ function run_ota_test() { change_advertising_names # change the target the OTAC embedded firmware in the client is built for - cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/BLE_otac + cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/Bluetooth/BLE_otac #appends TARGET , TARGET_UC and TARGET_LC to the make commands and sets them to $DUT_NAME_UPPER and $DUT_NAME_LOWER sed -i 's/BUILD_DIR=\$(FW_BUILD_DIR) BUILD_BOOTLOADER=0 PROJECT=fw_update/BUILD_DIR=\$(FW_BUILD_DIR) BUILD_BOOTLOADER=0 PROJECT=fw_update TARGET='"$DUT_NAME_UPPER"' TARGET_UC='"$DUT_NAME_UPPER"' TARGET_LC='"$DUT_NAME_LOWER"'/g' project.mk sed -i 's/BUILD_DIR=\$(FW_BUILD_DIR) \$(FW_UPDATE_BIN)/BUILD_DIR=\$(FW_BUILD_DIR) \$(FW_UPDATE_BIN) TARGET='"$DUT_NAME_UPPER"' TARGET_UC='"$DUT_NAME_UPPER"' TARGET_LC='"$DUT_NAME_LOWER"'/g' project.mk @@ -526,18 +526,18 @@ function run_ota_test() { make BOARD=$DUT_BOARD_TYPE USE_INTERNAL_FLASH=$INTERNAL_FLASH_TEST BUILD_BOOTLOADER=0 -j echo "BOARD=$DUT_BOARD_TYPE USE_INTERNAL_FLASH=$INTERNAL_FLASH_TEST -j" # make OTAC - cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/BLE_otac + cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/Bluetooth/BLE_otac # flash MAIN_DEVICE with BLE_OTAC, it will use the OTAS bin with new firmware make clean make BOARD=$DUT_BOARD_TYPE FW_UPDATE_DIR=../../$DUT_NAME_UPPER/BLE_otas USE_INTERNAL_FLASH=$INTERNAL_FLASH_TEST BUILD_BOOTLOADER=0 -j - cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/BLE_otac/build + cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/Bluetooth/BLE_otac/build printf ">>>>>>> Flashing BLE_otac on main device: $MAIN_DEVICE_NAME_UPPER\r\n " flash_with_openocd $MAIN_DEVICE_NAME_LOWER $MAIN_DEVICE_ID printf ">>>>>>> Flashing done" #revert files back - cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/BLE_otac + cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/Bluetooth/BLE_otac git restore . cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_otas @@ -559,14 +559,14 @@ function run_ota_test() { if [[ "$INTERNAL_FLASH_TEST" -ne "0" ]]; then failedTestList+="| BLE_ota_cs_int ($DUT_NAME_UPPER) " # test failed, save elfs datc/s - cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/BLE_otac/build + cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/Bluetooth/BLE_otac/build cp $MAIN_DEVICE_NAME_LOWER.elf $EXAMPLE_TEST_PATH/results/failed_elfs/$MAIN_DEVICE_NAME_LOWER"_"$DUT_NAME_LOWER"_BLE_otacs_client_int.elf" cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_otas/build cp $DUT_NAME_LOWER.elf $EXAMPLE_TEST_PATH/results/failed_elfs/$DUT_NAME_LOWER"_BLE_otacs_server_int.elf" else failedTestList+="| BLE_ota_cs_ext ($DUT_NAME_UPPER) " # test failed, save elfs datc/s - cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/BLE_otac/build + cd $MSDK_DIR/Examples/$MAIN_DEVICE_NAME_UPPER/Bluetooth/BLE_otac/build cp $MAIN_DEVICE_NAME_LOWER.elf $EXAMPLE_TEST_PATH/results/failed_elfs/$MAIN_DEVICE_NAME_LOWER"_"$DUT_NAME_LOWER"_BLE_otacs_client_ext.elf" cd $MSDK_DIR/Examples/$DUT_NAME_UPPER/BLE_otas/build cp $DUT_NAME_LOWER.elf $EXAMPLE_TEST_PATH/results/failed_elfs/$DUT_NAME_LOWER"_BLE_otacs_server_ext.elf" @@ -610,31 +610,31 @@ if [ $CURRENT_TEST == "all" ]; then erase_all_devices run_all_not_conencted_tests CURRENT_TEST="all" - # temp diasble datc/s and otas tests until new RF PHY is debugged with ME17B - # run_datcs_conencted_tests - # CURRENT_TEST="all" - # run_ota_test 1 # arg 1= internal flash - # if [[ $DUT_NAME_UPPER != "MAX32690" ]]; then - # run_ota_test 0 # arg 0 = external flash - # fi + temp diasble datc/s and otas tests until new RF PHY is debugged with ME17B + run_datcs_conencted_tests + CURRENT_TEST="all" + run_ota_test 1 # arg 1= internal flash + if [[ $DUT_NAME_UPPER != "MAX32690" ]]; then + run_ota_test 0 # arg 0 = external flash + fi echo elif [ $CURRENT_TEST == "dats" ]; then echo echo "Running Datc/s connected test" erase_all_devices - # temp diasble datc/s and otas tests until new RF PHY is debugged with ME17B - #run_datcs_conencted_tests + temp diasble datc/s and otas tests until new RF PHY is debugged with ME17B + run_datcs_conencted_tests echo elif [ $CURRENT_TEST == "ota" ]; then echo echo "Running OTA test" - # temp diasble datc/s and otas tests until new RF PHY is debugged with ME17B - # erase_all_devices - # run_ota_test 1 # arg 1 = internal flash - # if [[ $DUT_NAME_UPPER != "MAX32690" ]]; then - # run_ota_test 0 # arg 0= external flash - #fi + temp diasble datc/s and otas tests until new RF PHY is debugged with ME17B + erase_all_devices + run_ota_test 1 # arg 1 = internal flash + if [[ $DUT_NAME_UPPER != "MAX32690" ]]; then + run_ota_test 0 # arg 0= external flash + fi echo else echo diff --git a/.github/workflows/scripts/update_version.py b/.github/workflows/scripts/update_version.py new file mode 100644 index 00000000000..0857a0da901 --- /dev/null +++ b/.github/workflows/scripts/update_version.py @@ -0,0 +1,105 @@ +copyright = """############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ##############################################################################""" + +copyright_c = """/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/""" + +from subprocess import run +from pathlib import Path + +if __name__ == "__main__": + # 'git describe will print a string with info about the current commit's relationship + # to the last tag. '--tags' gets it working with non-annoted tags. + command = "git describe --tags" + result = run(command, shell=True, capture_output=True) + if result.returncode != 0: + print(f"Failed to run {command} with error {result.returncode}:\n{result.stderr.decode(encoding='utf-8')}") + exit(result.returncode) + + version = result.stdout.decode(encoding="utf-8").strip() + print(version) + # Our tagging convention is v{version_year}_{version_month} + # git describe will sometimes return something like v2024_02-5-g5f0770a64e + version_year = int(version.split("_")[0][1:]) # Split the year and month based on the '_', and strip off the leading 'v' + version_minor = version.split("_")[1].split("-")[0] + version_month = int(version_minor[0]) if isinstance(version_minor, list) else int(version_minor) + + # Locate maxim_path relative to this file. + maxim_path = Path(__file__).parent.parent.parent.parent + + # Place mxc_version.h in the root directory of the MSDK + filename = "mxc_version" + output_file = maxim_path / f"{filename}.h" + with open(output_file, "w") as f: + print(f"Writing to {output_file}") + f.write( +f"""{copyright_c} +#ifndef MXC_VERSION_H_ +#define MXC_VERSION_H_ +// @autogenerated version info + +/** + * @brief The string representing the current MSDK version. + * Format: `[Release tag]-[commits since release tag]-g[commit SHA]` + * If exactly on a release tag, this string will match the tag + */ +#define MSDK_VERSION_STRING "{version}" +/** + * @brief The month of the current MSDK version + */ +#define MSDK_VERSION_YEAR {version_year} +/** + * @brief The year of the current MSDK version + */ +#define MSDK_VERSION_MONTH {version_month} + +#endif // MXC_VERSION_H_ +""") + + # Place msdk_version.mk next to the gcc/gcc_riscv.mk files. + # This file will be used to print version info at build time. + # Generating it is easier than trying to parse msdk_version.h with native Make functions + output_file = maxim_path / f"Libraries/CMSIS/Device/Maxim/GCC/{filename}.mk" + with open(output_file, "w") as f: + print(f"Writing to {output_file}") + f.write( +f"""{copyright} +# Autogenerated version info for build system. +MSDK_VERSION_STRING := {version} +MSDK_VERSION_YEAR := {version_year} +MSDK_VERSION_MONTH := {version_month} + +# Add root MAXIM_PATH to IPATH so compiler can locate msdk_version.h +IPATH += $(MAXIM_PATH) +""" + ) \ No newline at end of file diff --git a/.github/workflows/scripts/zephyr-hal.sh b/.github/workflows/scripts/zephyr-hal.sh new file mode 100644 index 00000000000..42b212ab5b9 --- /dev/null +++ b/.github/workflows/scripts/zephyr-hal.sh @@ -0,0 +1,58 @@ +#!/bin/bash + +echo +echo "Test workflow and script for copying files from MSDK repo to hal_adi." +echo + +if [ $# -eq 2 ]; then + msdk="$1" + hal_adi="$2" +else + msdk="./msdk" + hal_adi="./hal_adi" +fi + +root_dir=$(pwd) + +# Get SHA +cd ${msdk} +msdk_head=$(git rev-parse HEAD) +cd ${root_dir} + + +# Cleanup hal_adi +rm -rf ${hal_adi}/MAX/ + +# Create parent folder +mkdir -p ${hal_adi}/MAX/Libraries/CMSIS +mkdir -p ${hal_adi}/MAX/Libraries/PeriphDrivers + +# Copy zephyr wrappers, system files and cmakefiles +cp -rf ${msdk}/Libraries/zephyr/MAX/* ${hal_adi}/MAX/ + +# Copy CMSIS folder +cp -rf ${msdk}/Libraries/CMSIS/Device ${hal_adi}/MAX/Libraries/CMSIS/ +cp -rf ${msdk}/Libraries/CMSIS/Include ${hal_adi}/MAX/Libraries/CMSIS/ + +# Copy PeriphDrivers folder +cp -rf ${msdk}/Libraries/PeriphDrivers/Include ${hal_adi}/MAX/Libraries/PeriphDrivers/ +cp -rf ${msdk}/Libraries/PeriphDrivers/Source ${hal_adi}/MAX/Libraries/PeriphDrivers/ + +# Remove unneeded files +rm -rf ${hal_adi}/MAX/Libraries/CMSIS/Device/Maxim/GCC +rm -rf ${hal_adi}/MAX/Libraries/CMSIS/Device/Maxim/MAX*/Source/IAR +rm -rf ${hal_adi}/MAX/Libraries/CMSIS/Device/Maxim/MAX*/Source/GCC +rm -rf ${hal_adi}/MAX/Libraries/CMSIS/Device/Maxim/MAX*/Source/ARM + +# Check either dirty or clean +cd ${hal_adi} +if [[ -n $(git status -s) ]]; then + echo "New change exist need to be pushed" + # Set new SHA + echo "${msdk_head}" > MAX/msdk_sha +else + # No need to push to hal_adi + echo "No any change in hal_adi" +fi + +cd ${root_dir} diff --git a/.github/workflows/simple_per_test.yml b/.github/workflows/simple_per_test.yml index 0daea963ebb..f5d68dff9f4 100644 --- a/.github/workflows/simple_per_test.yml +++ b/.github/workflows/simple_per_test.yml @@ -1,3 +1,23 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + name: simple_per_test concurrency: @@ -27,7 +47,7 @@ jobs: - uses: actions/checkout@v3 with: submodules: false - repository: Analog-Devices-MSDK/msdk + repository: analogdevicesinc/msdk ref: main - name: clean diff --git a/.github/workflows/update_version.yml b/.github/workflows/update_version.yml new file mode 100644 index 00000000000..0800657b41e --- /dev/null +++ b/.github/workflows/update_version.yml @@ -0,0 +1,51 @@ +############################################################################### +# +# Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by +# Analog Devices, Inc.), +# Copyright (C) 2023-2024 Analog Devices, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +############################################################################## + +name: Update Version Info + +on: + push: + tags: [ "release" ] + + workflow_dispatch: + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Setup Python + uses: actions/setup-python@v2.3.3 + + - name: Update Version Files + run: | + python3 .github/workflows/scripts/update_version.py + + - uses: EndBug/add-and-commit@v9 + + - name: Update Existing Tag + run: | + CURRENT_TAG=$(git describe --abbrev=0 --tags) + git tag -f $CURRENT_TAG + git push --tags --force diff --git a/.github/workflows/zephyr-hal.yml b/.github/workflows/zephyr-hal.yml new file mode 100644 index 00000000000..ad6c917d332 --- /dev/null +++ b/.github/workflows/zephyr-hal.yml @@ -0,0 +1,78 @@ +name: Publish MSDK HAL for Zephyr + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +# Controls when the workflow will run +on: + # Run only when a pull-request is closed. + # The 'if_merged' condition in the 'jobs' section below will make sure the PR was + # approved before running the steps. + # Caution: pull_request_target grants workflows triggered by forks access to secrets and write permissions. + pull_request_target: + types: + - closed + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +env: + # Add environment variables here + PR_NUM: ${{ github.event.pull_request.number }} + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + if_merged: + # The type of OS that the job will run on + runs-on: [ ubuntu-latest ] + + permissions: + # This will depend on permissions set by repo and org (separate levels of permissions) + contents: write + pull-requests: write + + steps: + # Checkout msdk repository + - name: Checkout msdk repository + uses: actions/checkout@v4 + with: + # Specific Branch, tag, or SHA to checkout (uses default branch if empty) + ref: '' + ssh-key: ${{ secrets.MSDK_SSH_KEY }} + # Repository name (Default will be the current repo the action is running from) + repository: ${{ github.repository }} + fetch-depth: 0 + # Name the path/directory of this repo for the runner's workspacee + path: msdk + + # Checkout another repository + - name: Checkout zephry hal repository + uses: actions/checkout@v4 + with: + # Specific Branch, tag, or SHA to checkout (uses default branch if empty) + ref: 'develop' + ssh-key: ${{ secrets.MSDK_SSH_KEY }} + # Name of different repository ('organization_name/repo_name') + # Update the following line to point to the hal_adi repo once that repo is created. + repository: 'analogdevicesinc/hal_adi' + fetch-depth: 0 + # Name the path/directory of this repo for the runner's workspacee + path: hal_adi + + - name: Copy necessary files from msdk to hal_adi + run: | + # Call or run any tasks here + # The working directory for scripts will be the root of the runner workspace. + # Using the checkout commands above, the script will start out in the same + # directory that contains the 'msdk' and 'hal_adi' folders. + bash ./msdk/.github/workflows/scripts/zephyr-hal.sh + + - name: Push changes to hal_adi repository + run: | + echo "$(pwd) - $(ls)" + cd ./hal_adi + git config --global user.email "actions@github.com" + git config --global user.name "GitHub Actions" + git add * + git commit -m "Update Zephyr MSDK Hal based on MSDK PR: https://github.com/analogdevicesinc/msdk/pull/${PR_NUM}" + git push diff --git a/.gitignore b/.gitignore index 85ab7ee4683..3573714a36a 100644 --- a/.gitignore +++ b/.gitignore @@ -5,7 +5,6 @@ Examples/*/*/*/buildrv .vscode/settings.json Libraries/PeriphDrivers/Documentation/MAX* Libraries/PeriphDrivers/bin -docs Documentation/Libraries Documentation/res Examples/MAX78000/PowerTest @@ -38,3 +37,7 @@ node_modules package-lock.json package.json .python-version +mxc_version.h +mxc_version.mk +Packetcraft-ADI +packetcraft-adi diff --git a/Documentation/CONTRIBUTING.md b/Documentation/CONTRIBUTING.md index a9d89e0e63c..d75c4c8a516 100644 --- a/Documentation/CONTRIBUTING.md +++ b/Documentation/CONTRIBUTING.md @@ -10,7 +10,7 @@ For beginners, [learngitbranching.js.org](https://learngitbranching.js.org/) is The MSDK follows the [GitHub contribution guidelines](https://docs.github.com/en/get-started/quickstart/contributing-to-projects). -External contributions from outside the [Analog Devices organization](https://github.com/Analog-Devices-MSDK) should be made via a Pull Request opened from a fork. Internal contributions should also preferrably use a fork where possible. +External contributions from outside the [Analog Devices organization](https://github.com/analogdevicesinc) should be made via a Pull Request opened from a fork. Internal contributions should also preferrably use a fork where possible. If a direct branch on the mainline MSDK repo is made, the following branch naming conventions should be used when possible: @@ -24,7 +24,7 @@ If a direct branch on the mainline MSDK repo is made, the following branch namin Format: `type(scope): Subject` -For more information of the format, please review the [pull_request_template.md](https://github.com/Analog-Devices-MSDK/msdk/blob/main/Documentation/pull_request_template.md). +For more information of the format, please review the [pull_request_template.md](https://github.com/analogdevicesinc/msdk/blob/main/Documentation/pull_request_template.md). These are the rules for the `Subject`. @@ -184,11 +184,11 @@ clang-format rules are loaded from the **.clang-format** and cpplint rules are l 1. First, ensure that the example project has been linted and formatted to follow the [Style Guide](#style-guide) -2. Copy the example project into the [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) folder of the SDK for the applicable target microcontrollers. +2. Copy the example project into the [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) folder of the SDK for the applicable target microcontrollers. 3. `git add` and `git commit` the Example project. **Commit your project files before running MSDKGen.** -4. Run the [MSDKGen](https://github.com/Analog-Devices-MSDK/MSDKGen) utility to ensure the example project's support files are updated to the latest version. +4. Run the [MSDKGen](https://github.com/analogdevicesinc/MSDKGen) utility to ensure the example project's support files are updated to the latest version. python msdkgen.py update-all --projects yourprojectname --overwrite @@ -206,9 +206,9 @@ clang-format rules are loaded from the **.clang-format** and cpplint rules are l ## Contributing Libraries -Libraries should be added to the [Libraries](Libraries) sub-folder of the MSDK. +Libraries should be added to the `Libraries` sub-folder of the MSDK. -- All libraries should include a `libraryname.mk` file that can be added to `Libraries/libs.mk` via a toggle-switch. The filename should match the name of library as closely as possible, and expose any required [configuration variables](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration). +- All libraries should include a `libraryname.mk` file that can be added to `Libraries/libs.mk` via a toggle-switch. The filename should match the name of library as closely as possible, and expose any required [configuration variables](https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration). - If necessary, a library may also include a "core" Makefile or set of Makefiles to build it as a standalone static library file. The naming convention is `lib.a`. @@ -238,13 +238,13 @@ For example: SRCS += libfile1.c SRCS += libfile2.c -An example of this is [MiscDrivers](Libraries/MiscDrivers/), which is a simple source-file-only library. It gets its source code selectively added to the build via `Libraries/Boards/MAX78000/EvKit_V1/board.mk` files. +An example of this is `MiscDrivers`, which is a simple source-file-only library. It gets its source code selectively added to the build via files like `Libraries/Boards/MAX78000/EvKit_V1/board.mk`. ### Advanced Libraries More advanced libraries (including those with a large number of source files) should include a rule to build as a static library file with a [recursive Make call](https://www.gnu.org/software/make/manual/make.html#Recursion). -This type of library should also set up the appropriate [configuration variables](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration) to include that static library to the build. +This type of library should also set up the appropriate [configuration variables](https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration) to include that static library to the build. ## Contributing Documentation @@ -256,7 +256,7 @@ DoxyGen is automatically run across the MSDK code as part of the User Guide's bu ### User Guide -An MSDK User Guide is maintained in the [USERUIDE.md](USERGUIDE.md) file. This document contains higher-level usage info for the MSDK. If a part, IDE, or library is supported by the MSDK then there should be some relevant info in the User Guide covering its setup, configuration, and usage. +An MSDK User Guide is maintained in the [USERGUIDE.md](USERGUIDE.md) file. This document contains higher-level usage info for the MSDK. If a part, IDE, or library is supported by the MSDK then there should be some relevant info in the User Guide covering its setup, configuration, and usage. When writing markdown links, relative paths should always be used. Additionally, links to local files on the user's filesystem **cannot** be used, since the online copy of the docs will throw a 404 on them. See [Writing Your Docs](https://www.mkdocs.org/user-guide/writing-your-docs/) for more details. diff --git a/Documentation/build.py b/Documentation/build.py index b782fe7dce9..7e5c521849f 100644 --- a/Documentation/build.py +++ b/Documentation/build.py @@ -120,7 +120,7 @@ class CommonExampleInfo(ExampleInfo): for main_file in Path(i).rglob("**/main.c"): example_info = parse_example_info(main_file) if example_info and example_info.name not in common_example_names: - link = f"https://github.com/Analog-Devices-MSDK/msdk/tree/release/{Path(example_info.folder).relative_to(repo).as_posix()}" + link = f"https://github.com/analogdevicesinc/msdk/tree/release/{Path(example_info.folder).relative_to(repo).as_posix()}" table_entries.append(f"| **{example_info.name}** | {example_info.description} | _Local:_`{Path(example_info.folder).relative_to(repo)}`
_Github:_ [link]({link})") markdown_content += "\n".join(sorted(table_entries)) markdown_content += "\n\n" diff --git a/Documentation/index.md b/Documentation/index.md index af9bea4b710..7cc6a522a2b 100644 --- a/Documentation/index.md +++ b/Documentation/index.md @@ -8,5 +8,5 @@ To **get started** see the [**User Guide**](USERGUIDE.md). For **development resources**: -* [Github](https://github.com/Analog-Devices-MSDK/msdk) +* [Github](https://github.com/analogdevicesinc/msdk) * [Contributing](CONTRIBUTING.md) diff --git a/Examples/MAX32520/AES/.vscode/README.md b/Examples/MAX32520/AES/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/AES/.vscode/README.md +++ b/Examples/MAX32520/AES/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/AES/.vscode/settings.json b/Examples/MAX32520/AES/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/AES/.vscode/settings.json +++ b/Examples/MAX32520/AES/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/AES/Makefile b/Examples/MAX32520/AES/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/AES/Makefile +++ b/Examples/MAX32520/AES/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/AES/main.c b/Examples/MAX32520/AES/main.c index e77e0373ca8..f99664d1abc 100644 --- a/Examples/MAX32520/AES/main.c +++ b/Examples/MAX32520/AES/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/AES/project.mk b/Examples/MAX32520/AES/project.mk index fae9288173e..fcfbdaeab59 100644 --- a/Examples/MAX32520/AES/project.mk +++ b/Examples/MAX32520/AES/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/ARM-DSP/README.md b/Examples/MAX32520/ARM-DSP/README.md index 9bb2d50bedc..5e1d116671b 100644 --- a/Examples/MAX32520/ARM-DSP/README.md +++ b/Examples/MAX32520/ARM-DSP/README.md @@ -8,7 +8,7 @@ The projects in this folder are ports of ARM's DSP example projects that can be Debug launch configurations are included in each project, and should appear in the "Favorites" menu in Eclipse. -Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop) +Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop) ## Software diff --git a/Examples/MAX32520/ARM-DSP/arm_bayes_example/.vscode/README.md b/Examples/MAX32520/ARM-DSP/arm_bayes_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/ARM-DSP/arm_bayes_example/.vscode/README.md +++ b/Examples/MAX32520/ARM-DSP/arm_bayes_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/ARM-DSP/arm_bayes_example/.vscode/settings.json b/Examples/MAX32520/ARM-DSP/arm_bayes_example/.vscode/settings.json index b5ea881e4da..daf9156a850 100755 --- a/Examples/MAX32520/ARM-DSP/arm_bayes_example/.vscode/settings.json +++ b/Examples/MAX32520/ARM-DSP/arm_bayes_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/ARM-DSP/arm_bayes_example/Makefile b/Examples/MAX32520/ARM-DSP/arm_bayes_example/Makefile index 2259b4a1f66..3ccfc6f5d0c 100644 --- a/Examples/MAX32520/ARM-DSP/arm_bayes_example/Makefile +++ b/Examples/MAX32520/ARM-DSP/arm_bayes_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/ARM-DSP/arm_bayes_example/project.mk b/Examples/MAX32520/ARM-DSP/arm_bayes_example/project.mk index de9a85c515e..9806abcf7b4 100644 --- a/Examples/MAX32520/ARM-DSP/arm_bayes_example/project.mk +++ b/Examples/MAX32520/ARM-DSP/arm_bayes_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/ARM-DSP/arm_class_marks_example/.vscode/README.md b/Examples/MAX32520/ARM-DSP/arm_class_marks_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/ARM-DSP/arm_class_marks_example/.vscode/README.md +++ b/Examples/MAX32520/ARM-DSP/arm_class_marks_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/ARM-DSP/arm_class_marks_example/.vscode/settings.json b/Examples/MAX32520/ARM-DSP/arm_class_marks_example/.vscode/settings.json index b5ea881e4da..daf9156a850 100755 --- a/Examples/MAX32520/ARM-DSP/arm_class_marks_example/.vscode/settings.json +++ b/Examples/MAX32520/ARM-DSP/arm_class_marks_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/ARM-DSP/arm_class_marks_example/Makefile b/Examples/MAX32520/ARM-DSP/arm_class_marks_example/Makefile index 2259b4a1f66..3ccfc6f5d0c 100644 --- a/Examples/MAX32520/ARM-DSP/arm_class_marks_example/Makefile +++ b/Examples/MAX32520/ARM-DSP/arm_class_marks_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c b/Examples/MAX32520/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c index 30f548bc888..2ea5e90d59a 100644 --- a/Examples/MAX32520/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c +++ b/Examples/MAX32520/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c @@ -139,7 +139,7 @@ uint32_t student_num; * Main f32 test function. It returns maximum marks secured and student number * ------------------------------------------------------------------------------- */ -int main() +int main(void) { #ifndef USE_STATIC_INIT diff --git a/Examples/MAX32520/ARM-DSP/arm_class_marks_example/project.mk b/Examples/MAX32520/ARM-DSP/arm_class_marks_example/project.mk index de9a85c515e..9806abcf7b4 100644 --- a/Examples/MAX32520/ARM-DSP/arm_class_marks_example/project.mk +++ b/Examples/MAX32520/ARM-DSP/arm_class_marks_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/ARM-DSP/arm_convolution_example/.vscode/README.md b/Examples/MAX32520/ARM-DSP/arm_convolution_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/ARM-DSP/arm_convolution_example/.vscode/README.md +++ b/Examples/MAX32520/ARM-DSP/arm_convolution_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/ARM-DSP/arm_convolution_example/.vscode/settings.json b/Examples/MAX32520/ARM-DSP/arm_convolution_example/.vscode/settings.json index b5ea881e4da..daf9156a850 100755 --- a/Examples/MAX32520/ARM-DSP/arm_convolution_example/.vscode/settings.json +++ b/Examples/MAX32520/ARM-DSP/arm_convolution_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/ARM-DSP/arm_convolution_example/Makefile b/Examples/MAX32520/ARM-DSP/arm_convolution_example/Makefile index 2259b4a1f66..3ccfc6f5d0c 100644 --- a/Examples/MAX32520/ARM-DSP/arm_convolution_example/Makefile +++ b/Examples/MAX32520/ARM-DSP/arm_convolution_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/ARM-DSP/arm_convolution_example/project.mk b/Examples/MAX32520/ARM-DSP/arm_convolution_example/project.mk index de9a85c515e..9806abcf7b4 100644 --- a/Examples/MAX32520/ARM-DSP/arm_convolution_example/project.mk +++ b/Examples/MAX32520/ARM-DSP/arm_convolution_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md b/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md +++ b/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json b/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json index b5ea881e4da..daf9156a850 100755 --- a/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json +++ b/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/Makefile b/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/Makefile index 2259b4a1f66..3ccfc6f5d0c 100644 --- a/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/Makefile +++ b/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/project.mk b/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/project.mk index de9a85c515e..9806abcf7b4 100644 --- a/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/project.mk +++ b/Examples/MAX32520/ARM-DSP/arm_dotproduct_example_f32/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/.vscode/README.md b/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/.vscode/README.md +++ b/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/.vscode/settings.json b/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/.vscode/settings.json index b5ea881e4da..daf9156a850 100755 --- a/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/.vscode/settings.json +++ b/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/Makefile b/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/Makefile index 2259b4a1f66..3ccfc6f5d0c 100644 --- a/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/Makefile +++ b/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/project.mk b/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/project.mk index de9a85c515e..9806abcf7b4 100644 --- a/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/project.mk +++ b/Examples/MAX32520/ARM-DSP/arm_fft_bin_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/ARM-DSP/arm_fir_example/.vscode/README.md b/Examples/MAX32520/ARM-DSP/arm_fir_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/ARM-DSP/arm_fir_example/.vscode/README.md +++ b/Examples/MAX32520/ARM-DSP/arm_fir_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/ARM-DSP/arm_fir_example/.vscode/settings.json b/Examples/MAX32520/ARM-DSP/arm_fir_example/.vscode/settings.json index b5ea881e4da..daf9156a850 100755 --- a/Examples/MAX32520/ARM-DSP/arm_fir_example/.vscode/settings.json +++ b/Examples/MAX32520/ARM-DSP/arm_fir_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/ARM-DSP/arm_fir_example/Makefile b/Examples/MAX32520/ARM-DSP/arm_fir_example/Makefile index 2259b4a1f66..3ccfc6f5d0c 100644 --- a/Examples/MAX32520/ARM-DSP/arm_fir_example/Makefile +++ b/Examples/MAX32520/ARM-DSP/arm_fir_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/ARM-DSP/arm_fir_example/project.mk b/Examples/MAX32520/ARM-DSP/arm_fir_example/project.mk index de9a85c515e..9806abcf7b4 100644 --- a/Examples/MAX32520/ARM-DSP/arm_fir_example/project.mk +++ b/Examples/MAX32520/ARM-DSP/arm_fir_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md b/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md +++ b/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json b/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json index b5ea881e4da..daf9156a850 100755 --- a/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json +++ b/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/Makefile b/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/Makefile index 2259b4a1f66..3ccfc6f5d0c 100644 --- a/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/Makefile +++ b/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/project.mk b/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/project.mk index de9a85c515e..9806abcf7b4 100644 --- a/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/project.mk +++ b/Examples/MAX32520/ARM-DSP/arm_graphic_equalizer_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/.vscode/README.md b/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/.vscode/README.md +++ b/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/.vscode/settings.json b/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/.vscode/settings.json index b5ea881e4da..daf9156a850 100755 --- a/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/.vscode/settings.json +++ b/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/Makefile b/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/Makefile index 2259b4a1f66..3ccfc6f5d0c 100644 --- a/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/Makefile +++ b/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/project.mk b/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/project.mk index de9a85c515e..9806abcf7b4 100644 --- a/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/project.mk +++ b/Examples/MAX32520/ARM-DSP/arm_linear_interp_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/ARM-DSP/arm_matrix_example/.vscode/README.md b/Examples/MAX32520/ARM-DSP/arm_matrix_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/ARM-DSP/arm_matrix_example/.vscode/README.md +++ b/Examples/MAX32520/ARM-DSP/arm_matrix_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/ARM-DSP/arm_matrix_example/.vscode/settings.json b/Examples/MAX32520/ARM-DSP/arm_matrix_example/.vscode/settings.json index b5ea881e4da..daf9156a850 100755 --- a/Examples/MAX32520/ARM-DSP/arm_matrix_example/.vscode/settings.json +++ b/Examples/MAX32520/ARM-DSP/arm_matrix_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/ARM-DSP/arm_matrix_example/Makefile b/Examples/MAX32520/ARM-DSP/arm_matrix_example/Makefile index 2259b4a1f66..3ccfc6f5d0c 100644 --- a/Examples/MAX32520/ARM-DSP/arm_matrix_example/Makefile +++ b/Examples/MAX32520/ARM-DSP/arm_matrix_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/ARM-DSP/arm_matrix_example/project.mk b/Examples/MAX32520/ARM-DSP/arm_matrix_example/project.mk index de9a85c515e..9806abcf7b4 100644 --- a/Examples/MAX32520/ARM-DSP/arm_matrix_example/project.mk +++ b/Examples/MAX32520/ARM-DSP/arm_matrix_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/.vscode/README.md b/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/.vscode/README.md +++ b/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/.vscode/settings.json b/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/.vscode/settings.json index b5ea881e4da..daf9156a850 100755 --- a/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/.vscode/settings.json +++ b/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/Makefile b/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/Makefile index 2259b4a1f66..3ccfc6f5d0c 100644 --- a/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/Makefile +++ b/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/project.mk b/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/project.mk index de9a85c515e..9806abcf7b4 100644 --- a/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/project.mk +++ b/Examples/MAX32520/ARM-DSP/arm_signal_converge_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/.vscode/README.md b/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/.vscode/README.md +++ b/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/.vscode/settings.json b/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/.vscode/settings.json index b5ea881e4da..daf9156a850 100755 --- a/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/.vscode/settings.json +++ b/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/Makefile b/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/Makefile index 2259b4a1f66..3ccfc6f5d0c 100644 --- a/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/Makefile +++ b/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/project.mk b/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/project.mk index de9a85c515e..9806abcf7b4 100644 --- a/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/project.mk +++ b/Examples/MAX32520/ARM-DSP/arm_sin_cos_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/ARM-DSP/arm_svm_example/.vscode/README.md b/Examples/MAX32520/ARM-DSP/arm_svm_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/ARM-DSP/arm_svm_example/.vscode/README.md +++ b/Examples/MAX32520/ARM-DSP/arm_svm_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/ARM-DSP/arm_svm_example/.vscode/settings.json b/Examples/MAX32520/ARM-DSP/arm_svm_example/.vscode/settings.json index b5ea881e4da..daf9156a850 100755 --- a/Examples/MAX32520/ARM-DSP/arm_svm_example/.vscode/settings.json +++ b/Examples/MAX32520/ARM-DSP/arm_svm_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/ARM-DSP/arm_svm_example/Makefile b/Examples/MAX32520/ARM-DSP/arm_svm_example/Makefile index 2259b4a1f66..3ccfc6f5d0c 100644 --- a/Examples/MAX32520/ARM-DSP/arm_svm_example/Makefile +++ b/Examples/MAX32520/ARM-DSP/arm_svm_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/ARM-DSP/arm_svm_example/project.mk b/Examples/MAX32520/ARM-DSP/arm_svm_example/project.mk index de9a85c515e..9806abcf7b4 100644 --- a/Examples/MAX32520/ARM-DSP/arm_svm_example/project.mk +++ b/Examples/MAX32520/ARM-DSP/arm_svm_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/ARM-DSP/arm_variance_example/.vscode/README.md b/Examples/MAX32520/ARM-DSP/arm_variance_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/ARM-DSP/arm_variance_example/.vscode/README.md +++ b/Examples/MAX32520/ARM-DSP/arm_variance_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/ARM-DSP/arm_variance_example/.vscode/settings.json b/Examples/MAX32520/ARM-DSP/arm_variance_example/.vscode/settings.json index b5ea881e4da..daf9156a850 100755 --- a/Examples/MAX32520/ARM-DSP/arm_variance_example/.vscode/settings.json +++ b/Examples/MAX32520/ARM-DSP/arm_variance_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/ARM-DSP/arm_variance_example/Makefile b/Examples/MAX32520/ARM-DSP/arm_variance_example/Makefile index 2259b4a1f66..3ccfc6f5d0c 100644 --- a/Examples/MAX32520/ARM-DSP/arm_variance_example/Makefile +++ b/Examples/MAX32520/ARM-DSP/arm_variance_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/ARM-DSP/arm_variance_example/project.mk b/Examples/MAX32520/ARM-DSP/arm_variance_example/project.mk index de9a85c515e..9806abcf7b4 100644 --- a/Examples/MAX32520/ARM-DSP/arm_variance_example/project.mk +++ b/Examples/MAX32520/ARM-DSP/arm_variance_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/CRC/.vscode/README.md b/Examples/MAX32520/CRC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/CRC/.vscode/README.md +++ b/Examples/MAX32520/CRC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/CRC/.vscode/settings.json b/Examples/MAX32520/CRC/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/CRC/.vscode/settings.json +++ b/Examples/MAX32520/CRC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/CRC/Makefile b/Examples/MAX32520/CRC/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/CRC/Makefile +++ b/Examples/MAX32520/CRC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/CRC/main.c b/Examples/MAX32520/CRC/main.c index 50c34dcf25d..1f2472daa5f 100644 --- a/Examples/MAX32520/CRC/main.c +++ b/Examples/MAX32520/CRC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/CRC/project.mk b/Examples/MAX32520/CRC/project.mk index fae9288173e..fcfbdaeab59 100644 --- a/Examples/MAX32520/CRC/project.mk +++ b/Examples/MAX32520/CRC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/Coremark/.vscode/README.md b/Examples/MAX32520/Coremark/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/Coremark/.vscode/README.md +++ b/Examples/MAX32520/Coremark/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/Coremark/.vscode/settings.json b/Examples/MAX32520/Coremark/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/Coremark/.vscode/settings.json +++ b/Examples/MAX32520/Coremark/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/Coremark/Makefile b/Examples/MAX32520/Coremark/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/Coremark/Makefile +++ b/Examples/MAX32520/Coremark/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/Coremark/project.mk b/Examples/MAX32520/Coremark/project.mk index 9ded8091069..a6efc624169 100644 --- a/Examples/MAX32520/Coremark/project.mk +++ b/Examples/MAX32520/Coremark/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/DMA/.vscode/README.md b/Examples/MAX32520/DMA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/DMA/.vscode/README.md +++ b/Examples/MAX32520/DMA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/DMA/.vscode/settings.json b/Examples/MAX32520/DMA/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/DMA/.vscode/settings.json +++ b/Examples/MAX32520/DMA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/DMA/Makefile b/Examples/MAX32520/DMA/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/DMA/Makefile +++ b/Examples/MAX32520/DMA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/DMA/main.c b/Examples/MAX32520/DMA/main.c index 2ca1059ed12..27c64eb7f58 100644 --- a/Examples/MAX32520/DMA/main.c +++ b/Examples/MAX32520/DMA/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -57,7 +56,7 @@ void memCpyComplete(void *dest) flag++; } -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); } diff --git a/Examples/MAX32520/DMA/project.mk b/Examples/MAX32520/DMA/project.mk index fae9288173e..fcfbdaeab59 100644 --- a/Examples/MAX32520/DMA/project.mk +++ b/Examples/MAX32520/DMA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/ECDSA/.vscode/README.md b/Examples/MAX32520/ECDSA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/ECDSA/.vscode/README.md +++ b/Examples/MAX32520/ECDSA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/ECDSA/.vscode/settings.json b/Examples/MAX32520/ECDSA/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/ECDSA/.vscode/settings.json +++ b/Examples/MAX32520/ECDSA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/ECDSA/Makefile b/Examples/MAX32520/ECDSA/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/ECDSA/Makefile +++ b/Examples/MAX32520/ECDSA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/ECDSA/main.c b/Examples/MAX32520/ECDSA/main.c index 140205b94a2..f765dcdcc9b 100644 --- a/Examples/MAX32520/ECDSA/main.c +++ b/Examples/MAX32520/ECDSA/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/ECDSA/project.mk b/Examples/MAX32520/ECDSA/project.mk index 7d5879106d6..b91ea71d2de 100644 --- a/Examples/MAX32520/ECDSA/project.mk +++ b/Examples/MAX32520/ECDSA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/EEPROM_Emulator/.vscode/README.md b/Examples/MAX32520/EEPROM_Emulator/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/EEPROM_Emulator/.vscode/README.md +++ b/Examples/MAX32520/EEPROM_Emulator/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/EEPROM_Emulator/.vscode/settings.json b/Examples/MAX32520/EEPROM_Emulator/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/EEPROM_Emulator/.vscode/settings.json +++ b/Examples/MAX32520/EEPROM_Emulator/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/EEPROM_Emulator/Makefile b/Examples/MAX32520/EEPROM_Emulator/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/EEPROM_Emulator/Makefile +++ b/Examples/MAX32520/EEPROM_Emulator/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/EEPROM_Emulator/include/cache.h b/Examples/MAX32520/EEPROM_Emulator/include/cache.h index b1e75c28091..dd7c8ded678 100644 --- a/Examples/MAX32520/EEPROM_Emulator/include/cache.h +++ b/Examples/MAX32520/EEPROM_Emulator/include/cache.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/EEPROM_Emulator/include/eeprom.h b/Examples/MAX32520/EEPROM_Emulator/include/eeprom.h index 57899da225d..75b9231af01 100644 --- a/Examples/MAX32520/EEPROM_Emulator/include/eeprom.h +++ b/Examples/MAX32520/EEPROM_Emulator/include/eeprom.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/EEPROM_Emulator/main.c b/Examples/MAX32520/EEPROM_Emulator/main.c index 5b07f09fef3..afe2247a9fd 100644 --- a/Examples/MAX32520/EEPROM_Emulator/main.c +++ b/Examples/MAX32520/EEPROM_Emulator/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/EEPROM_Emulator/project.mk b/Examples/MAX32520/EEPROM_Emulator/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32520/EEPROM_Emulator/project.mk +++ b/Examples/MAX32520/EEPROM_Emulator/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/EEPROM_Emulator/src/cache.c b/Examples/MAX32520/EEPROM_Emulator/src/cache.c index 17bc7b57c13..adf98b89839 100644 --- a/Examples/MAX32520/EEPROM_Emulator/src/cache.c +++ b/Examples/MAX32520/EEPROM_Emulator/src/cache.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/EEPROM_Emulator/src/eeprom.c b/Examples/MAX32520/EEPROM_Emulator/src/eeprom.c index 3af2f9198c9..878bf622fff 100644 --- a/Examples/MAX32520/EEPROM_Emulator/src/eeprom.c +++ b/Examples/MAX32520/EEPROM_Emulator/src/eeprom.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/Flash/.vscode/README.md b/Examples/MAX32520/Flash/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/Flash/.vscode/README.md +++ b/Examples/MAX32520/Flash/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/Flash/.vscode/settings.json b/Examples/MAX32520/Flash/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/Flash/.vscode/settings.json +++ b/Examples/MAX32520/Flash/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/Flash/Makefile b/Examples/MAX32520/Flash/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/Flash/Makefile +++ b/Examples/MAX32520/Flash/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/Flash/main.c b/Examples/MAX32520/Flash/main.c index 8d97d060bc9..19468d4df04 100644 --- a/Examples/MAX32520/Flash/main.c +++ b/Examples/MAX32520/Flash/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -63,7 +62,7 @@ volatile uint32_t isr_flags; //****************************************************************************** int button_pressed = 0; -void button_handler() +void button_handler(void) { button_pressed = 1; } @@ -131,7 +130,7 @@ void setup_irqs(void) isr_cnt = 0; } -int write_test_pattern() +int write_test_pattern(void) { int err; // A flash address must be in the erased state before writing to it, because the @@ -173,7 +172,7 @@ int write_test_pattern() return err; } -int validate_test_pattern() +int validate_test_pattern(void) { int err = 0; @@ -193,7 +192,7 @@ int validate_test_pattern() return err; } -int validate_test_pattern_erase() +int validate_test_pattern_erase(void) { int err = 0; @@ -211,7 +210,7 @@ int validate_test_pattern_erase() return err; } -int erase_magic() +int erase_magic(void) { /* To modify a location in flash that has already been written to, diff --git a/Examples/MAX32520/Flash/project.mk b/Examples/MAX32520/Flash/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32520/Flash/project.mk +++ b/Examples/MAX32520/Flash/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/Flash_CLI/.vscode/README.md b/Examples/MAX32520/Flash_CLI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/Flash_CLI/.vscode/README.md +++ b/Examples/MAX32520/Flash_CLI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/Flash_CLI/.vscode/settings.json b/Examples/MAX32520/Flash_CLI/.vscode/settings.json index 530b798f9ac..55b4989e192 100755 --- a/Examples/MAX32520/Flash_CLI/.vscode/settings.json +++ b/Examples/MAX32520/Flash_CLI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/Flash_CLI/FreeRTOSConfig.h b/Examples/MAX32520/Flash_CLI/FreeRTOSConfig.h index 0395bf9f811..5fc6fd8d05d 100644 --- a/Examples/MAX32520/Flash_CLI/FreeRTOSConfig.h +++ b/Examples/MAX32520/Flash_CLI/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/Flash_CLI/Makefile b/Examples/MAX32520/Flash_CLI/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/Flash_CLI/Makefile +++ b/Examples/MAX32520/Flash_CLI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/Flash_CLI/definitions.h b/Examples/MAX32520/Flash_CLI/definitions.h index 99920ef3f64..3d1bf64f21d 100644 --- a/Examples/MAX32520/Flash_CLI/definitions.h +++ b/Examples/MAX32520/Flash_CLI/definitions.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/Flash_CLI/main.c b/Examples/MAX32520/Flash_CLI/main.c index 57a55aa4a58..89f1494c3ec 100644 --- a/Examples/MAX32520/Flash_CLI/main.c +++ b/Examples/MAX32520/Flash_CLI/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/Flash_CLI/project.mk b/Examples/MAX32520/Flash_CLI/project.mk index dda92612f6b..c540f739960 100644 --- a/Examples/MAX32520/Flash_CLI/project.mk +++ b/Examples/MAX32520/Flash_CLI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/FreeRTOSDemo/.vscode/README.md b/Examples/MAX32520/FreeRTOSDemo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/FreeRTOSDemo/.vscode/README.md +++ b/Examples/MAX32520/FreeRTOSDemo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/FreeRTOSDemo/.vscode/settings.json b/Examples/MAX32520/FreeRTOSDemo/.vscode/settings.json index 530b798f9ac..55b4989e192 100755 --- a/Examples/MAX32520/FreeRTOSDemo/.vscode/settings.json +++ b/Examples/MAX32520/FreeRTOSDemo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/FreeRTOSDemo/FreeRTOSConfig.h b/Examples/MAX32520/FreeRTOSDemo/FreeRTOSConfig.h index b9ad66cc521..08e87bba764 100644 --- a/Examples/MAX32520/FreeRTOSDemo/FreeRTOSConfig.h +++ b/Examples/MAX32520/FreeRTOSDemo/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/FreeRTOSDemo/Makefile b/Examples/MAX32520/FreeRTOSDemo/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/FreeRTOSDemo/Makefile +++ b/Examples/MAX32520/FreeRTOSDemo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/FreeRTOSDemo/main.c b/Examples/MAX32520/FreeRTOSDemo/main.c index 9866958d4ca..129feb6cfc3 100644 --- a/Examples/MAX32520/FreeRTOSDemo/main.c +++ b/Examples/MAX32520/FreeRTOSDemo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/FreeRTOSDemo/project.mk b/Examples/MAX32520/FreeRTOSDemo/project.mk index dda92612f6b..c540f739960 100644 --- a/Examples/MAX32520/FreeRTOSDemo/project.mk +++ b/Examples/MAX32520/FreeRTOSDemo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/GPIO/.vscode/README.md b/Examples/MAX32520/GPIO/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/GPIO/.vscode/README.md +++ b/Examples/MAX32520/GPIO/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/GPIO/.vscode/settings.json b/Examples/MAX32520/GPIO/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/GPIO/.vscode/settings.json +++ b/Examples/MAX32520/GPIO/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/GPIO/Makefile b/Examples/MAX32520/GPIO/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/GPIO/Makefile +++ b/Examples/MAX32520/GPIO/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/GPIO/main.c b/Examples/MAX32520/GPIO/main.c index d0b0740fb17..5606ad364a5 100644 --- a/Examples/MAX32520/GPIO/main.c +++ b/Examples/MAX32520/GPIO/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/GPIO/project.mk b/Examples/MAX32520/GPIO/project.mk index fae9288173e..fcfbdaeab59 100644 --- a/Examples/MAX32520/GPIO/project.mk +++ b/Examples/MAX32520/GPIO/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/Hello_World/.vscode/README.md b/Examples/MAX32520/Hello_World/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/Hello_World/.vscode/README.md +++ b/Examples/MAX32520/Hello_World/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/Hello_World/.vscode/settings.json b/Examples/MAX32520/Hello_World/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/Hello_World/.vscode/settings.json +++ b/Examples/MAX32520/Hello_World/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/Hello_World/Makefile b/Examples/MAX32520/Hello_World/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/Hello_World/Makefile +++ b/Examples/MAX32520/Hello_World/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/Hello_World/main.c b/Examples/MAX32520/Hello_World/main.c index 97db09811d1..00e31c99779 100644 --- a/Examples/MAX32520/Hello_World/main.c +++ b/Examples/MAX32520/Hello_World/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/Hello_World/project.mk b/Examples/MAX32520/Hello_World/project.mk index fae9288173e..fcfbdaeab59 100644 --- a/Examples/MAX32520/Hello_World/project.mk +++ b/Examples/MAX32520/Hello_World/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/Hello_World_Cpp/.vscode/README.md b/Examples/MAX32520/Hello_World_Cpp/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/Hello_World_Cpp/.vscode/README.md +++ b/Examples/MAX32520/Hello_World_Cpp/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/Hello_World_Cpp/.vscode/settings.json b/Examples/MAX32520/Hello_World_Cpp/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/Hello_World_Cpp/.vscode/settings.json +++ b/Examples/MAX32520/Hello_World_Cpp/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/Hello_World_Cpp/Makefile b/Examples/MAX32520/Hello_World_Cpp/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/Hello_World_Cpp/Makefile +++ b/Examples/MAX32520/Hello_World_Cpp/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/Hello_World_Cpp/main.cpp b/Examples/MAX32520/Hello_World_Cpp/main.cpp index daade0e995d..fdf8363cde1 100644 --- a/Examples/MAX32520/Hello_World_Cpp/main.cpp +++ b/Examples/MAX32520/Hello_World_Cpp/main.cpp @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -66,7 +65,7 @@ class LED { int blink_count; }; -int main() +int main(void) { LED led = LED(0); diff --git a/Examples/MAX32520/Hello_World_Cpp/project.mk b/Examples/MAX32520/Hello_World_Cpp/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX32520/Hello_World_Cpp/project.mk +++ b/Examples/MAX32520/Hello_World_Cpp/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/I2C_MNGR/.vscode/README.md b/Examples/MAX32520/I2C_MNGR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/I2C_MNGR/.vscode/README.md +++ b/Examples/MAX32520/I2C_MNGR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/I2C_MNGR/.vscode/settings.json b/Examples/MAX32520/I2C_MNGR/.vscode/settings.json index d320fe5df57..f383b9bf871 100755 --- a/Examples/MAX32520/I2C_MNGR/.vscode/settings.json +++ b/Examples/MAX32520/I2C_MNGR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/I2C_MNGR/FreeRTOSConfig.h b/Examples/MAX32520/I2C_MNGR/FreeRTOSConfig.h index a519646b1e5..147efec6867 100644 --- a/Examples/MAX32520/I2C_MNGR/FreeRTOSConfig.h +++ b/Examples/MAX32520/I2C_MNGR/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/I2C_MNGR/Makefile b/Examples/MAX32520/I2C_MNGR/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/I2C_MNGR/Makefile +++ b/Examples/MAX32520/I2C_MNGR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/I2C_MNGR/i2c_mngr/i2c_mngr.c b/Examples/MAX32520/I2C_MNGR/i2c_mngr/i2c_mngr.c index 10e5ce9a282..8127eaaaa6a 100644 --- a/Examples/MAX32520/I2C_MNGR/i2c_mngr/i2c_mngr.c +++ b/Examples/MAX32520/I2C_MNGR/i2c_mngr/i2c_mngr.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +38,7 @@ typedef struct { static i2c_txn_mngr_t s_mngr; /******************************************************************************/ -int I2C_MNGR_Init() +int I2C_MNGR_Init(void) { s_mngr.inst0 = MXC_I2C0; diff --git a/Examples/MAX32520/I2C_MNGR/i2c_mngr/i2c_mngr.h b/Examples/MAX32520/I2C_MNGR/i2c_mngr/i2c_mngr.h index 222a4794dbb..84220cd440a 100644 --- a/Examples/MAX32520/I2C_MNGR/i2c_mngr/i2c_mngr.h +++ b/Examples/MAX32520/I2C_MNGR/i2c_mngr/i2c_mngr.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +54,7 @@ typedef struct { * @brief Initializes I2C transaction manager * @return #E_NO_ERROR if succeeded, error code otherwise */ -int I2C_MNGR_Init(); +int I2C_MNGR_Init(void); /* * @brief Executes I2C transaction diff --git a/Examples/MAX32520/I2C_MNGR/main.c b/Examples/MAX32520/I2C_MNGR/main.c index 82f6ad41704..29895dfe28d 100644 --- a/Examples/MAX32520/I2C_MNGR/main.c +++ b/Examples/MAX32520/I2C_MNGR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/I2C_MNGR/project.mk b/Examples/MAX32520/I2C_MNGR/project.mk index 90e76c6363a..da687b6e847 100644 --- a/Examples/MAX32520/I2C_MNGR/project.mk +++ b/Examples/MAX32520/I2C_MNGR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/I2C_SCAN/.vscode/README.md b/Examples/MAX32520/I2C_SCAN/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/I2C_SCAN/.vscode/README.md +++ b/Examples/MAX32520/I2C_SCAN/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/I2C_SCAN/.vscode/settings.json b/Examples/MAX32520/I2C_SCAN/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/I2C_SCAN/.vscode/settings.json +++ b/Examples/MAX32520/I2C_SCAN/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/I2C_SCAN/Makefile b/Examples/MAX32520/I2C_SCAN/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/I2C_SCAN/Makefile +++ b/Examples/MAX32520/I2C_SCAN/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/I2C_SCAN/main.c b/Examples/MAX32520/I2C_SCAN/main.c index 25f21597d13..11bfe493a1f 100644 --- a/Examples/MAX32520/I2C_SCAN/main.c +++ b/Examples/MAX32520/I2C_SCAN/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -43,7 +42,7 @@ uint8_t counter = 0; // ***************************************************************************** -int main() +int main(void) { printf("\n******** I2C SLAVE ADDRESS SCANNER *********\n"); printf("\nThis example finds the addresses of any I2C Slave devices connected to the"); diff --git a/Examples/MAX32520/I2C_SCAN/project.mk b/Examples/MAX32520/I2C_SCAN/project.mk index fae9288173e..fcfbdaeab59 100644 --- a/Examples/MAX32520/I2C_SCAN/project.mk +++ b/Examples/MAX32520/I2C_SCAN/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/I2C_Sensor/.vscode/README.md b/Examples/MAX32520/I2C_Sensor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/I2C_Sensor/.vscode/README.md +++ b/Examples/MAX32520/I2C_Sensor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/I2C_Sensor/.vscode/settings.json b/Examples/MAX32520/I2C_Sensor/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/I2C_Sensor/.vscode/settings.json +++ b/Examples/MAX32520/I2C_Sensor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/I2C_Sensor/Makefile b/Examples/MAX32520/I2C_Sensor/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/I2C_Sensor/Makefile +++ b/Examples/MAX32520/I2C_Sensor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/I2C_Sensor/main.c b/Examples/MAX32520/I2C_Sensor/main.c index 3f1a15b31ec..644dc6ab609 100644 --- a/Examples/MAX32520/I2C_Sensor/main.c +++ b/Examples/MAX32520/I2C_Sensor/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/I2C_Sensor/project.mk b/Examples/MAX32520/I2C_Sensor/project.mk index 6a77af63372..fa0464ac6ba 100644 --- a/Examples/MAX32520/I2C_Sensor/project.mk +++ b/Examples/MAX32520/I2C_Sensor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/ICC/.vscode/README.md b/Examples/MAX32520/ICC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/ICC/.vscode/README.md +++ b/Examples/MAX32520/ICC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/ICC/.vscode/settings.json b/Examples/MAX32520/ICC/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/ICC/.vscode/settings.json +++ b/Examples/MAX32520/ICC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/ICC/Makefile b/Examples/MAX32520/ICC/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/ICC/Makefile +++ b/Examples/MAX32520/ICC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/ICC/main.c b/Examples/MAX32520/ICC/main.c index b6c4e409f6d..57afba70d70 100644 --- a/Examples/MAX32520/ICC/main.c +++ b/Examples/MAX32520/ICC/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/ICC/project.mk b/Examples/MAX32520/ICC/project.mk index fae9288173e..fcfbdaeab59 100644 --- a/Examples/MAX32520/ICC/project.mk +++ b/Examples/MAX32520/ICC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/LP/.vscode/README.md b/Examples/MAX32520/LP/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/LP/.vscode/README.md +++ b/Examples/MAX32520/LP/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/LP/.vscode/settings.json b/Examples/MAX32520/LP/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/LP/.vscode/settings.json +++ b/Examples/MAX32520/LP/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/LP/Makefile b/Examples/MAX32520/LP/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/LP/Makefile +++ b/Examples/MAX32520/LP/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/LP/lp-sla.ld b/Examples/MAX32520/LP/lp-sla.ld index bb9da82be53..2c60c2e9596 100644 --- a/Examples/MAX32520/LP/lp-sla.ld +++ b/Examples/MAX32520/LP/lp-sla.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/LP/main.c b/Examples/MAX32520/LP/main.c index 8b5218f43cf..58b9a367142 100644 --- a/Examples/MAX32520/LP/main.c +++ b/Examples/MAX32520/LP/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/LP/project.mk b/Examples/MAX32520/LP/project.mk index 816b582e5ba..d642771ae82 100644 --- a/Examples/MAX32520/LP/project.mk +++ b/Examples/MAX32520/LP/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/Library_Generate/.vscode/README.md b/Examples/MAX32520/Library_Generate/.vscode/README.md index e2e9a1a6522..a740741c3ab 100644 --- a/Examples/MAX32520/Library_Generate/.vscode/README.md +++ b/Examples/MAX32520/Library_Generate/.vscode/README.md @@ -7,11 +7,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) * If it's not in the README, check the UG. * If it's not in the UG, open a ticket! -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -38,7 +38,7 @@ The steps below are also available in video form in "Understanding Artificial In 2. Run the installer executable, and ensure that "Visual Studio Code Support" is enabled for your installation. - ![Selected Components](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/installer_components.JPG) + ![Selected Components](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/installer_components.JPG) 3. Finish the MSDK installation, taking note of where the MSDK was installed. @@ -54,7 +54,7 @@ The steps below are also available in video form in "Understanding Artificial In 9. Type "open settings json" and select the "Preferences: Open Settings (JSON)" option (_not_ the "Preferences: Open _Default_ Settings (JSON)"). This will open your user settings.json file in VS Code's editor. - ![Open Settings JSON Command](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/open_settings_json.jpg) + ![Open Settings JSON Command](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/open_settings_json.jpg) 10. Add the entries below into your user settings.json file. @@ -82,7 +82,7 @@ This section covers basic usage of the VSCode-Maxim project files. For document Visual Studio Code is built around a "working directory" paradigm. The editor is always rooted in a working directory, and the main mechanism for changing that directory is `File -> Open Folder...`. -![File -> Open Folder](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/file_openfolder.JPG) +![File -> Open Folder](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/file_openfolder.JPG) As a result, you'll notice that there is no "New Project" mechanism. A "project" in VS Code is simply a folder. It will look inside of the opened folder for a `.vscode` _sub_-folder to load project-specific settings from. @@ -90,11 +90,11 @@ A project that is configured for VS Code will have, at minimum, a .vscode sub-fo Ex: -![Example Directory Contents](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/opening_projects_2.jpg) +![Example Directory Contents](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/opening_projects_2.jpg) ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MSDK installation. @@ -102,7 +102,7 @@ Additionally, empty project templates and a drag-and-drop folder for "injecting" Once a project is opened 4 available build tasks will become available via `Terminal > Run Build task...` or the shortcut `Ctrl+Shift+B`. These tasks are configured by the `.vscode/task.json` file. -![Build Tasks Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/buildtasks.JPG) +![Build Tasks Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/buildtasks.JPG) #### Build @@ -138,7 +138,7 @@ Once a project is opened 4 available build tasks will become available via `Term ### Debugging -![Debug Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger.JPG) +![Debug Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger.JPG) Debugging is enabled by Visual Studio Code's integrated debugger. Launch configurations can be found in the `.vscode/launch.json` file. @@ -162,11 +162,11 @@ In general, the MAX-series microcontrollers have the following debugger limitati 3. Launch the debugger with `Run > Start Debugging`, with the shortcut `F5`, or via the `Run and Debug` window (Ctrl + Shift + D) and the green "launch" arrow. - ![Debug Tab](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_window.JPG) + ![Debug Tab](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_window.JPG) 4. The debugger will launch a GDB client & OpenOCD server, reset the microcontroller, and should break on entry into `main`. - ![Debugger Break on Main](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_breakmain.JPG) + ![Debugger Break on Main](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_breakmain.JPG) #### Using the Debugger @@ -174,13 +174,13 @@ In general, the MAX-series microcontrollers have the following debugger limitati The main interface for the debugger is the debugger control bar: -![Debugger Control Bar Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_bar.JPG) +![Debugger Control Bar Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_bar.JPG) `Continue | Step Over | Step Into | Step Out | Restart | Stop` Breakpoints can be set by clicking in the space next to the line number in a source code file. A red dot indicates a line to break on. Breakpoints can be removed by clicking on them again. Ex: -![Breakpoint](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/breakpoint.JPG) +![Breakpoint](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/breakpoint.JPG) ## Project Configuration @@ -190,7 +190,7 @@ Breakpoints can be set by clicking in the space next to the line number in a sou **When a change is made to this file, VS Code should be reloaded with CTRL+SHIFT+P -> Reload Window (or alternatively restarted completely) to force a re-parse.** -![Reload Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/reload_window.JPG) +![Reload Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/reload_window.JPG) The default project configuration should work for most use cases as long as `"target"` and `"board"` are set correctly. @@ -227,7 +227,7 @@ The following configuration options are available: * ... can be found in the `Libraries/Boards` folder of the MSDK * For example, the supported options for the MAX78000 are `"EvKit_V1"`, `"FTHR_RevA"`, and `"MAXREFDES178"`. - ![MAX78000 Boards](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/78000_boards.JPG) + ![MAX78000 Boards](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/78000_boards.JPG) ### Advanced Config Options @@ -353,7 +353,7 @@ A project's build system is managed by two files found in the project's root dir * `Makefile` * `project.mk` -![Files are located in the root directory](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) +![Files are located in the root directory](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) When the command... @@ -416,7 +416,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the @@ -540,7 +540,7 @@ If you want to start from scratch, take this option. ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/Library_Generate/Makefile b/Examples/MAX32520/Library_Generate/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/Library_Generate/Makefile +++ b/Examples/MAX32520/Library_Generate/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/Library_Generate/gpiolib.c b/Examples/MAX32520/Library_Generate/gpiolib.c index 5c8845edc78..252f6df4c44 100644 --- a/Examples/MAX32520/Library_Generate/gpiolib.c +++ b/Examples/MAX32520/Library_Generate/gpiolib.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/Library_Generate/gpiolib.h b/Examples/MAX32520/Library_Generate/gpiolib.h index 44867ff5ff9..a2c9f52482d 100644 --- a/Examples/MAX32520/Library_Generate/gpiolib.h +++ b/Examples/MAX32520/Library_Generate/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/Library_Generate/project.mk b/Examples/MAX32520/Library_Generate/project.mk index 01dcd9fbb2a..b5729be6ef0 100644 --- a/Examples/MAX32520/Library_Generate/project.mk +++ b/Examples/MAX32520/Library_Generate/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/Library_Use/.vscode/README.md b/Examples/MAX32520/Library_Use/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/Library_Use/.vscode/README.md +++ b/Examples/MAX32520/Library_Use/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/Library_Use/.vscode/settings.json b/Examples/MAX32520/Library_Use/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/Library_Use/.vscode/settings.json +++ b/Examples/MAX32520/Library_Use/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/Library_Use/Makefile b/Examples/MAX32520/Library_Use/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/Library_Use/Makefile +++ b/Examples/MAX32520/Library_Use/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/Library_Use/lib/include/gpiolib.h b/Examples/MAX32520/Library_Use/lib/include/gpiolib.h index fe4b1899380..4f7b4cee0dd 100644 --- a/Examples/MAX32520/Library_Use/lib/include/gpiolib.h +++ b/Examples/MAX32520/Library_Use/lib/include/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/Library_Use/main.c b/Examples/MAX32520/Library_Use/main.c index 1a0441dea5b..9681e205e82 100644 --- a/Examples/MAX32520/Library_Use/main.c +++ b/Examples/MAX32520/Library_Use/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/Library_Use/project.mk b/Examples/MAX32520/Library_Use/project.mk index 35cf5faf80b..b52c9527689 100644 --- a/Examples/MAX32520/Library_Use/project.mk +++ b/Examples/MAX32520/Library_Use/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/LockDebug/.vscode/README.md b/Examples/MAX32520/LockDebug/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/LockDebug/.vscode/README.md +++ b/Examples/MAX32520/LockDebug/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/LockDebug/.vscode/settings.json b/Examples/MAX32520/LockDebug/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/LockDebug/.vscode/settings.json +++ b/Examples/MAX32520/LockDebug/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/LockDebug/Makefile b/Examples/MAX32520/LockDebug/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/LockDebug/Makefile +++ b/Examples/MAX32520/LockDebug/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/LockDebug/main.c b/Examples/MAX32520/LockDebug/main.c index 4ff74bc80f9..ca1a969e3e3 100644 --- a/Examples/MAX32520/LockDebug/main.c +++ b/Examples/MAX32520/LockDebug/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/LockDebug/project.mk b/Examples/MAX32520/LockDebug/project.mk index 764ed9c737f..a557a6f0a6b 100644 --- a/Examples/MAX32520/LockDebug/project.mk +++ b/Examples/MAX32520/LockDebug/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/OTP_Dump/.vscode/README.md b/Examples/MAX32520/OTP_Dump/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/OTP_Dump/.vscode/README.md +++ b/Examples/MAX32520/OTP_Dump/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/OTP_Dump/.vscode/settings.json b/Examples/MAX32520/OTP_Dump/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/OTP_Dump/.vscode/settings.json +++ b/Examples/MAX32520/OTP_Dump/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/OTP_Dump/Makefile b/Examples/MAX32520/OTP_Dump/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/OTP_Dump/Makefile +++ b/Examples/MAX32520/OTP_Dump/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/OTP_Dump/main.c b/Examples/MAX32520/OTP_Dump/main.c index 2fad1bcccd0..1752c22ce80 100644 --- a/Examples/MAX32520/OTP_Dump/main.c +++ b/Examples/MAX32520/OTP_Dump/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/OTP_Dump/project.mk b/Examples/MAX32520/OTP_Dump/project.mk index 40d9955ae3d..9563617984b 100644 --- a/Examples/MAX32520/OTP_Dump/project.mk +++ b/Examples/MAX32520/OTP_Dump/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used for project configuration. # It's a sibling to the core "Makefile", which offers # various configuration variables that you can set here diff --git a/Examples/MAX32520/SCPA_OTP_Dump/.vscode/README.md b/Examples/MAX32520/SCPA_OTP_Dump/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/SCPA_OTP_Dump/.vscode/README.md +++ b/Examples/MAX32520/SCPA_OTP_Dump/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/SCPA_OTP_Dump/.vscode/settings.json b/Examples/MAX32520/SCPA_OTP_Dump/.vscode/settings.json index b5ea881e4da..daf9156a850 100755 --- a/Examples/MAX32520/SCPA_OTP_Dump/.vscode/settings.json +++ b/Examples/MAX32520/SCPA_OTP_Dump/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/SCPA_OTP_Dump/Makefile b/Examples/MAX32520/SCPA_OTP_Dump/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/SCPA_OTP_Dump/Makefile +++ b/Examples/MAX32520/SCPA_OTP_Dump/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/SCPA_OTP_Dump/README.md b/Examples/MAX32520/SCPA_OTP_Dump/README.md index 37c5df56374..2fdff10294a 100644 --- a/Examples/MAX32520/SCPA_OTP_Dump/README.md +++ b/Examples/MAX32520/SCPA_OTP_Dump/README.md @@ -21,11 +21,15 @@ PROJ_CFLAGS+=-DMAX32520_A2 ### Project Usage -Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. +Universal instructions on building this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +NOTE: This SCP Applet example project cannot be flashed and debugged like a regular example. It must be sent to the ROM bootloader using the SCP protocol. The MSDK offers Secure Bootloader Tools (SBT) in the `Tools/SBT` folder, and the `send_scp` utility is used to send the SCP packets to the device. + +See the [Secure Boot Tools User Guide](https://pdfserv.maximintegrated.com/en/an/ug7637-secure-boot-tools.pdf) for additional documentation. ### Project-Specific Build Notes -(None - this project builds as a standard example) +This project targets `scpa` builds by default (see [project.mk](project.mk)), which generates SCP packets for the application in the `build/scp_packets` folder. ## Required Connections @@ -33,9 +37,9 @@ Universal instructions on building, flashing, and debugging this project can be - Open a console (Powershell or bash) then send scp packages to device. ## Expected Output - ` - send_scp -c -i UART -s scp_packets\packet.list" - ` +``` +$ send_scp -c -i UART -s build/scp_packets/packet.list + [==================================================== ] 73% @@ -112,3 +116,4 @@ Please wait, reading data...
Disconnected !
SCP session OK
+``` \ No newline at end of file diff --git a/Examples/MAX32520/SCPA_OTP_Dump/main.c b/Examples/MAX32520/SCPA_OTP_Dump/main.c index 60c1793bdc0..7d8dfeec06e 100644 --- a/Examples/MAX32520/SCPA_OTP_Dump/main.c +++ b/Examples/MAX32520/SCPA_OTP_Dump/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/SCPA_OTP_Dump/project.mk b/Examples/MAX32520/SCPA_OTP_Dump/project.mk index e8ebc6a5303..6d96227a076 100644 --- a/Examples/MAX32520/SCPA_OTP_Dump/project.mk +++ b/Examples/MAX32520/SCPA_OTP_Dump/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/SCPA_OTP_Dump/utils.c b/Examples/MAX32520/SCPA_OTP_Dump/utils.c index ae02a263b80..63e6ae19fbf 100644 --- a/Examples/MAX32520/SCPA_OTP_Dump/utils.c +++ b/Examples/MAX32520/SCPA_OTP_Dump/utils.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/SCPA_OTP_Dump/utils.h b/Examples/MAX32520/SCPA_OTP_Dump/utils.h index 45064ac534b..71044c69df0 100644 --- a/Examples/MAX32520/SCPA_OTP_Dump/utils.h +++ b/Examples/MAX32520/SCPA_OTP_Dump/utils.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/SFE/.vscode/README.md b/Examples/MAX32520/SFE/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/SFE/.vscode/README.md +++ b/Examples/MAX32520/SFE/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/SFE/.vscode/settings.json b/Examples/MAX32520/SFE/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/SFE/.vscode/settings.json +++ b/Examples/MAX32520/SFE/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/SFE/Makefile b/Examples/MAX32520/SFE/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/SFE/Makefile +++ b/Examples/MAX32520/SFE/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/SFE/main.c b/Examples/MAX32520/SFE/main.c index 403e9bf84e4..b7c2944f6af 100644 --- a/Examples/MAX32520/SFE/main.c +++ b/Examples/MAX32520/SFE/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -98,7 +97,7 @@ int Flash_CheckErased(uint32_t startaddr) } //****************************************************************************** -void Flash_Write() +void Flash_Write(void) { int fail = 0; int i = 0; @@ -167,7 +166,7 @@ void Flash_InterruptEN(mxc_flc_regs_t *regs) } //****************************************************************************** -void Flash_CommandCheck() +void Flash_CommandCheck(void) { static uint8_t isErased = 0; diff --git a/Examples/MAX32520/SFE/project.mk b/Examples/MAX32520/SFE/project.mk index fae9288173e..fcfbdaeab59 100644 --- a/Examples/MAX32520/SFE/project.mk +++ b/Examples/MAX32520/SFE/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/SFE_Host/.vscode/README.md b/Examples/MAX32520/SFE_Host/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/SFE_Host/.vscode/README.md +++ b/Examples/MAX32520/SFE_Host/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/SFE_Host/.vscode/settings.json b/Examples/MAX32520/SFE_Host/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/SFE_Host/.vscode/settings.json +++ b/Examples/MAX32520/SFE_Host/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/SFE_Host/Makefile b/Examples/MAX32520/SFE_Host/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/SFE_Host/Makefile +++ b/Examples/MAX32520/SFE_Host/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/SFE_Host/main.c b/Examples/MAX32520/SFE_Host/main.c index 2917a1be8e1..41b153fcbfb 100644 --- a/Examples/MAX32520/SFE_Host/main.c +++ b/Examples/MAX32520/SFE_Host/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/SFE_Host/project.mk b/Examples/MAX32520/SFE_Host/project.mk index fae9288173e..fcfbdaeab59 100644 --- a/Examples/MAX32520/SFE_Host/project.mk +++ b/Examples/MAX32520/SFE_Host/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/SFE_Host/sfe_host.c b/Examples/MAX32520/SFE_Host/sfe_host.c index 35614131ad1..735ff4304c2 100644 --- a/Examples/MAX32520/SFE_Host/sfe_host.c +++ b/Examples/MAX32520/SFE_Host/sfe_host.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,7 +28,7 @@ mxc_spi_req_t master_req; //****************************************************************************** -void SFE_Reset() +void SFE_Reset(void) { uint8_t cmd = SFE_CMD_RST_EN; @@ -482,7 +481,7 @@ void SFE_Read(uint8_t *rxdata, uint32_t length, uint32_t address, spi_width_t wi } // ***************************************************************************** -void SFE_4ByteModeEnable() +void SFE_4ByteModeEnable(void) { uint8_t cmd = SFE_4BYTE_ENTER; @@ -513,7 +512,7 @@ void SFE_4ByteModeEnable() } // ***************************************************************************** -void SFE_4ByteModeDisable() +void SFE_4ByteModeDisable(void) { uint8_t cmd = SFE_4BYTE_EXIT; diff --git a/Examples/MAX32520/SFE_Host/sfe_host.h b/Examples/MAX32520/SFE_Host/sfe_host.h index d44e7bcef8b..ba23753b772 100644 --- a/Examples/MAX32520/SFE_Host/sfe_host.h +++ b/Examples/MAX32520/SFE_Host/sfe_host.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -90,7 +89,7 @@ typedef enum { * @brief * */ -void SFE_Reset(); +void SFE_Reset(void); /** * @brief @@ -140,12 +139,12 @@ void SFE_Read(uint8_t *rxdata, uint32_t length, uint32_t address, spi_width_t wi * @brief * */ -void SFE_4ByteModeEnable(); +void SFE_4ByteModeEnable(void); /** * @brief * */ -void SFE_4ByteModeDisable(); +void SFE_4ByteModeDisable(void); #endif // EXAMPLES_MAX32520_SFE_HOST_SFE_HOST_H_ diff --git a/Examples/MAX32520/SMON/.vscode/README.md b/Examples/MAX32520/SMON/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/SMON/.vscode/README.md +++ b/Examples/MAX32520/SMON/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/SMON/.vscode/settings.json b/Examples/MAX32520/SMON/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/SMON/.vscode/settings.json +++ b/Examples/MAX32520/SMON/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/SMON/Makefile b/Examples/MAX32520/SMON/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/SMON/Makefile +++ b/Examples/MAX32520/SMON/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/SMON/main.c b/Examples/MAX32520/SMON/main.c index c320cca69e5..041481886b2 100644 --- a/Examples/MAX32520/SMON/main.c +++ b/Examples/MAX32520/SMON/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/SMON/project.mk b/Examples/MAX32520/SMON/project.mk index fae9288173e..fcfbdaeab59 100644 --- a/Examples/MAX32520/SMON/project.mk +++ b/Examples/MAX32520/SMON/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/SPI/.vscode/README.md b/Examples/MAX32520/SPI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/SPI/.vscode/README.md +++ b/Examples/MAX32520/SPI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/SPI/.vscode/settings.json b/Examples/MAX32520/SPI/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/SPI/.vscode/settings.json +++ b/Examples/MAX32520/SPI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/SPI/Makefile b/Examples/MAX32520/SPI/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/SPI/Makefile +++ b/Examples/MAX32520/SPI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/SPI/main.c b/Examples/MAX32520/SPI/main.c index d6231911b9a..26201b20ce1 100644 --- a/Examples/MAX32520/SPI/main.c +++ b/Examples/MAX32520/SPI/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/SPI/project.mk b/Examples/MAX32520/SPI/project.mk index fae9288173e..fcfbdaeab59 100644 --- a/Examples/MAX32520/SPI/project.mk +++ b/Examples/MAX32520/SPI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/SPI_MasterSlave/.vscode/README.md b/Examples/MAX32520/SPI_MasterSlave/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/SPI_MasterSlave/.vscode/README.md +++ b/Examples/MAX32520/SPI_MasterSlave/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/SPI_MasterSlave/.vscode/settings.json b/Examples/MAX32520/SPI_MasterSlave/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/SPI_MasterSlave/.vscode/settings.json +++ b/Examples/MAX32520/SPI_MasterSlave/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/SPI_MasterSlave/Makefile b/Examples/MAX32520/SPI_MasterSlave/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/SPI_MasterSlave/Makefile +++ b/Examples/MAX32520/SPI_MasterSlave/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/SPI_MasterSlave/main.c b/Examples/MAX32520/SPI_MasterSlave/main.c index fb6b6726739..d0019aac907 100644 --- a/Examples/MAX32520/SPI_MasterSlave/main.c +++ b/Examples/MAX32520/SPI_MasterSlave/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/SPI_MasterSlave/project.mk b/Examples/MAX32520/SPI_MasterSlave/project.mk index a298e084edb..e6a4e75d314 100644 --- a/Examples/MAX32520/SPI_MasterSlave/project.mk +++ b/Examples/MAX32520/SPI_MasterSlave/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/TMR/.vscode/README.md b/Examples/MAX32520/TMR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/TMR/.vscode/README.md +++ b/Examples/MAX32520/TMR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/TMR/.vscode/settings.json b/Examples/MAX32520/TMR/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/TMR/.vscode/settings.json +++ b/Examples/MAX32520/TMR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/TMR/Makefile b/Examples/MAX32520/TMR/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/TMR/Makefile +++ b/Examples/MAX32520/TMR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/TMR/main.c b/Examples/MAX32520/TMR/main.c index 70b22e7b5aa..cf4fe52cd50 100644 --- a/Examples/MAX32520/TMR/main.c +++ b/Examples/MAX32520/TMR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -64,7 +63,7 @@ /***** Functions *****/ -void PWMTimer() +void PWMTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; // to configure timer @@ -99,14 +98,14 @@ void PWMTimer() } // Toggles GPIO when continuous timer repeats -void ContinuousTimerHandler() +void ContinuousTimerHandler(void) { // Clear interrupt MXC_TMR_ClearFlags(CONT_TIMER); MXC_GPIO_OutToggle(led_pin[1].port, led_pin[1].mask); } -void ContinuousTimer() +void ContinuousTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; diff --git a/Examples/MAX32520/TMR/project.mk b/Examples/MAX32520/TMR/project.mk index fae9288173e..fcfbdaeab59 100644 --- a/Examples/MAX32520/TMR/project.mk +++ b/Examples/MAX32520/TMR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/TRNG/.vscode/README.md b/Examples/MAX32520/TRNG/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/TRNG/.vscode/README.md +++ b/Examples/MAX32520/TRNG/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/TRNG/.vscode/settings.json b/Examples/MAX32520/TRNG/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/TRNG/.vscode/settings.json +++ b/Examples/MAX32520/TRNG/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/TRNG/Makefile b/Examples/MAX32520/TRNG/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/TRNG/Makefile +++ b/Examples/MAX32520/TRNG/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/TRNG/main.c b/Examples/MAX32520/TRNG/main.c index 4bda337a42f..d73799208d4 100644 --- a/Examples/MAX32520/TRNG/main.c +++ b/Examples/MAX32520/TRNG/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32520/TRNG/project.mk b/Examples/MAX32520/TRNG/project.mk index fae9288173e..fcfbdaeab59 100644 --- a/Examples/MAX32520/TRNG/project.mk +++ b/Examples/MAX32520/TRNG/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/UCL/.vscode/README.md b/Examples/MAX32520/UCL/.vscode/README.md index f57d4364851..cc0783881d1 100644 --- a/Examples/MAX32520/UCL/.vscode/README.md +++ b/Examples/MAX32520/UCL/.vscode/README.md @@ -4,14 +4,14 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) -* [Wiki](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/wiki) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) +* [Wiki](https://github.com/analogdevicesinc/VSCode-Maxim/wiki) * If it's not in the readme, check the wiki. * If it's not in the wiki, open a ticket! ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. The following features are supported: @@ -91,7 +91,7 @@ Ex: ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MaximSDK installation. @@ -413,7 +413,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the diff --git a/Examples/MAX32520/UCL/Makefile b/Examples/MAX32520/UCL/Makefile index b7fb123b807..f382cbfee7c 100644 --- a/Examples/MAX32520/UCL/Makefile +++ b/Examples/MAX32520/UCL/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -25,7 +24,7 @@ # in "project.mk", on the command-line, or with system environment # variables. -# See https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# See https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # for more detailed instructions on how to use this system. # The detailed instructions mentioned above are easier to read than @@ -375,7 +374,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/UCL/project.mk b/Examples/MAX32520/UCL/project.mk index 673be81abde..36d277ad082 100644 --- a/Examples/MAX32520/UCL/project.mk +++ b/Examples/MAX32520/UCL/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32520/Watchdog/.vscode/README.md b/Examples/MAX32520/Watchdog/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32520/Watchdog/.vscode/README.md +++ b/Examples/MAX32520/Watchdog/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32520/Watchdog/.vscode/settings.json b/Examples/MAX32520/Watchdog/.vscode/settings.json index f4896b45884..159d87ee1e3 100755 --- a/Examples/MAX32520/Watchdog/.vscode/settings.json +++ b/Examples/MAX32520/Watchdog/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32520/Watchdog/Makefile b/Examples/MAX32520/Watchdog/Makefile index e5b7e712ff3..e69b9d8d547 100644 --- a/Examples/MAX32520/Watchdog/Makefile +++ b/Examples/MAX32520/Watchdog/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32520/Watchdog/main.c b/Examples/MAX32520/Watchdog/main.c index 9ab3a82f93b..1f0e04896c2 100644 --- a/Examples/MAX32520/Watchdog/main.c +++ b/Examples/MAX32520/Watchdog/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -51,7 +50,7 @@ /***** Functions *****/ // ***************************************************************************** -void watchdog_timeout_handler() +void watchdog_timeout_handler(void) { //get and clear flag MXC_WDT_GetIntFlag(MXC_WDT0); diff --git a/Examples/MAX32520/Watchdog/project.mk b/Examples/MAX32520/Watchdog/project.mk index 878df049ef6..220a8f3b3eb 100644 --- a/Examples/MAX32520/Watchdog/project.mk +++ b/Examples/MAX32520/Watchdog/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ADC/.vscode/README.md b/Examples/MAX32650/ADC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ADC/.vscode/README.md +++ b/Examples/MAX32650/ADC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ADC/.vscode/settings.json b/Examples/MAX32650/ADC/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/ADC/.vscode/settings.json +++ b/Examples/MAX32650/ADC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ADC/Makefile b/Examples/MAX32650/ADC/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/ADC/Makefile +++ b/Examples/MAX32650/ADC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ADC/main.c b/Examples/MAX32650/ADC/main.c index 5c8db95049a..84e7e5fdb08 100644 --- a/Examples/MAX32650/ADC/main.c +++ b/Examples/MAX32650/ADC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/ADC/project.mk b/Examples/MAX32650/ADC/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/ADC/project.mk +++ b/Examples/MAX32650/ADC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ADC_MAX11261/.vscode/README.md b/Examples/MAX32650/ADC_MAX11261/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ADC_MAX11261/.vscode/README.md +++ b/Examples/MAX32650/ADC_MAX11261/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ADC_MAX11261/.vscode/settings.json b/Examples/MAX32650/ADC_MAX11261/.vscode/settings.json index f7abbd6a0c0..f211277bdd2 100755 --- a/Examples/MAX32650/ADC_MAX11261/.vscode/settings.json +++ b/Examples/MAX32650/ADC_MAX11261/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ADC_MAX11261/Makefile b/Examples/MAX32650/ADC_MAX11261/Makefile index 93ee2392809..428e67f1cd1 100644 --- a/Examples/MAX32650/ADC_MAX11261/Makefile +++ b/Examples/MAX32650/ADC_MAX11261/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ADC_MAX11261/main.c b/Examples/MAX32650/ADC_MAX11261/main.c index e71143a9a09..93820e0a695 100644 --- a/Examples/MAX32650/ADC_MAX11261/main.c +++ b/Examples/MAX32650/ADC_MAX11261/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/ADC_MAX11261/project.mk b/Examples/MAX32650/ADC_MAX11261/project.mk index 7071a3a2c29..1d7d6b27138 100644 --- a/Examples/MAX32650/ADC_MAX11261/project.mk +++ b/Examples/MAX32650/ADC_MAX11261/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/AES/.vscode/README.md b/Examples/MAX32650/AES/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/AES/.vscode/README.md +++ b/Examples/MAX32650/AES/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/AES/.vscode/settings.json b/Examples/MAX32650/AES/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/AES/.vscode/settings.json +++ b/Examples/MAX32650/AES/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/AES/Makefile b/Examples/MAX32650/AES/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/AES/Makefile +++ b/Examples/MAX32650/AES/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/AES/main.c b/Examples/MAX32650/AES/main.c index 196370f6ad7..02d07782ccf 100644 --- a/Examples/MAX32650/AES/main.c +++ b/Examples/MAX32650/AES/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/AES/project.mk b/Examples/MAX32650/AES/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/AES/project.mk +++ b/Examples/MAX32650/AES/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ARM-DSP/README.md b/Examples/MAX32650/ARM-DSP/README.md index 9bb2d50bedc..5e1d116671b 100644 --- a/Examples/MAX32650/ARM-DSP/README.md +++ b/Examples/MAX32650/ARM-DSP/README.md @@ -8,7 +8,7 @@ The projects in this folder are ports of ARM's DSP example projects that can be Debug launch configurations are included in each project, and should appear in the "Favorites" menu in Eclipse. -Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop) +Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop) ## Software diff --git a/Examples/MAX32650/ARM-DSP/arm_bayes_example/.vscode/README.md b/Examples/MAX32650/ARM-DSP/arm_bayes_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ARM-DSP/arm_bayes_example/.vscode/README.md +++ b/Examples/MAX32650/ARM-DSP/arm_bayes_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ARM-DSP/arm_bayes_example/.vscode/settings.json b/Examples/MAX32650/ARM-DSP/arm_bayes_example/.vscode/settings.json index 0e32b55f8a0..5355a763017 100755 --- a/Examples/MAX32650/ARM-DSP/arm_bayes_example/.vscode/settings.json +++ b/Examples/MAX32650/ARM-DSP/arm_bayes_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ARM-DSP/arm_bayes_example/Makefile b/Examples/MAX32650/ARM-DSP/arm_bayes_example/Makefile index 2765ae15e10..71bc32d20b4 100644 --- a/Examples/MAX32650/ARM-DSP/arm_bayes_example/Makefile +++ b/Examples/MAX32650/ARM-DSP/arm_bayes_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ARM-DSP/arm_bayes_example/project.mk b/Examples/MAX32650/ARM-DSP/arm_bayes_example/project.mk index 7d3b6a16279..d9368717eb6 100644 --- a/Examples/MAX32650/ARM-DSP/arm_bayes_example/project.mk +++ b/Examples/MAX32650/ARM-DSP/arm_bayes_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ARM-DSP/arm_class_marks_example/.vscode/README.md b/Examples/MAX32650/ARM-DSP/arm_class_marks_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ARM-DSP/arm_class_marks_example/.vscode/README.md +++ b/Examples/MAX32650/ARM-DSP/arm_class_marks_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ARM-DSP/arm_class_marks_example/.vscode/settings.json b/Examples/MAX32650/ARM-DSP/arm_class_marks_example/.vscode/settings.json index 0e32b55f8a0..5355a763017 100755 --- a/Examples/MAX32650/ARM-DSP/arm_class_marks_example/.vscode/settings.json +++ b/Examples/MAX32650/ARM-DSP/arm_class_marks_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ARM-DSP/arm_class_marks_example/Makefile b/Examples/MAX32650/ARM-DSP/arm_class_marks_example/Makefile index 2765ae15e10..71bc32d20b4 100644 --- a/Examples/MAX32650/ARM-DSP/arm_class_marks_example/Makefile +++ b/Examples/MAX32650/ARM-DSP/arm_class_marks_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c b/Examples/MAX32650/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c index 30f548bc888..2ea5e90d59a 100644 --- a/Examples/MAX32650/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c +++ b/Examples/MAX32650/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c @@ -139,7 +139,7 @@ uint32_t student_num; * Main f32 test function. It returns maximum marks secured and student number * ------------------------------------------------------------------------------- */ -int main() +int main(void) { #ifndef USE_STATIC_INIT diff --git a/Examples/MAX32650/ARM-DSP/arm_class_marks_example/project.mk b/Examples/MAX32650/ARM-DSP/arm_class_marks_example/project.mk index 7d3b6a16279..d9368717eb6 100644 --- a/Examples/MAX32650/ARM-DSP/arm_class_marks_example/project.mk +++ b/Examples/MAX32650/ARM-DSP/arm_class_marks_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ARM-DSP/arm_convolution_example/.vscode/README.md b/Examples/MAX32650/ARM-DSP/arm_convolution_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ARM-DSP/arm_convolution_example/.vscode/README.md +++ b/Examples/MAX32650/ARM-DSP/arm_convolution_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ARM-DSP/arm_convolution_example/.vscode/settings.json b/Examples/MAX32650/ARM-DSP/arm_convolution_example/.vscode/settings.json index 0e32b55f8a0..5355a763017 100755 --- a/Examples/MAX32650/ARM-DSP/arm_convolution_example/.vscode/settings.json +++ b/Examples/MAX32650/ARM-DSP/arm_convolution_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ARM-DSP/arm_convolution_example/Makefile b/Examples/MAX32650/ARM-DSP/arm_convolution_example/Makefile index 2765ae15e10..71bc32d20b4 100644 --- a/Examples/MAX32650/ARM-DSP/arm_convolution_example/Makefile +++ b/Examples/MAX32650/ARM-DSP/arm_convolution_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ARM-DSP/arm_convolution_example/project.mk b/Examples/MAX32650/ARM-DSP/arm_convolution_example/project.mk index 7d3b6a16279..d9368717eb6 100644 --- a/Examples/MAX32650/ARM-DSP/arm_convolution_example/project.mk +++ b/Examples/MAX32650/ARM-DSP/arm_convolution_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md b/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md +++ b/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json b/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json index 0e32b55f8a0..5355a763017 100755 --- a/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json +++ b/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/Makefile b/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/Makefile index 2765ae15e10..71bc32d20b4 100644 --- a/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/Makefile +++ b/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/project.mk b/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/project.mk index 7d3b6a16279..d9368717eb6 100644 --- a/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/project.mk +++ b/Examples/MAX32650/ARM-DSP/arm_dotproduct_example_f32/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/.vscode/README.md b/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/.vscode/README.md +++ b/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/.vscode/settings.json b/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/.vscode/settings.json index 0e32b55f8a0..5355a763017 100755 --- a/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/.vscode/settings.json +++ b/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/Makefile b/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/Makefile index 2765ae15e10..71bc32d20b4 100644 --- a/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/Makefile +++ b/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/project.mk b/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/project.mk index 7d3b6a16279..d9368717eb6 100644 --- a/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/project.mk +++ b/Examples/MAX32650/ARM-DSP/arm_fft_bin_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ARM-DSP/arm_fir_example/.vscode/README.md b/Examples/MAX32650/ARM-DSP/arm_fir_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ARM-DSP/arm_fir_example/.vscode/README.md +++ b/Examples/MAX32650/ARM-DSP/arm_fir_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ARM-DSP/arm_fir_example/.vscode/settings.json b/Examples/MAX32650/ARM-DSP/arm_fir_example/.vscode/settings.json index 0e32b55f8a0..5355a763017 100755 --- a/Examples/MAX32650/ARM-DSP/arm_fir_example/.vscode/settings.json +++ b/Examples/MAX32650/ARM-DSP/arm_fir_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ARM-DSP/arm_fir_example/Makefile b/Examples/MAX32650/ARM-DSP/arm_fir_example/Makefile index 2765ae15e10..71bc32d20b4 100644 --- a/Examples/MAX32650/ARM-DSP/arm_fir_example/Makefile +++ b/Examples/MAX32650/ARM-DSP/arm_fir_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ARM-DSP/arm_fir_example/project.mk b/Examples/MAX32650/ARM-DSP/arm_fir_example/project.mk index 7d3b6a16279..d9368717eb6 100644 --- a/Examples/MAX32650/ARM-DSP/arm_fir_example/project.mk +++ b/Examples/MAX32650/ARM-DSP/arm_fir_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md b/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md +++ b/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json b/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json index 0e32b55f8a0..5355a763017 100755 --- a/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json +++ b/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/Makefile b/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/Makefile index 2765ae15e10..71bc32d20b4 100644 --- a/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/Makefile +++ b/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/project.mk b/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/project.mk index 7d3b6a16279..d9368717eb6 100644 --- a/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/project.mk +++ b/Examples/MAX32650/ARM-DSP/arm_graphic_equalizer_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/.vscode/README.md b/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/.vscode/README.md +++ b/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/.vscode/settings.json b/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/.vscode/settings.json index 0e32b55f8a0..5355a763017 100755 --- a/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/.vscode/settings.json +++ b/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/Makefile b/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/Makefile index 2765ae15e10..71bc32d20b4 100644 --- a/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/Makefile +++ b/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/project.mk b/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/project.mk index 7d3b6a16279..d9368717eb6 100644 --- a/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/project.mk +++ b/Examples/MAX32650/ARM-DSP/arm_linear_interp_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ARM-DSP/arm_matrix_example/.vscode/README.md b/Examples/MAX32650/ARM-DSP/arm_matrix_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ARM-DSP/arm_matrix_example/.vscode/README.md +++ b/Examples/MAX32650/ARM-DSP/arm_matrix_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ARM-DSP/arm_matrix_example/.vscode/settings.json b/Examples/MAX32650/ARM-DSP/arm_matrix_example/.vscode/settings.json index 0e32b55f8a0..5355a763017 100755 --- a/Examples/MAX32650/ARM-DSP/arm_matrix_example/.vscode/settings.json +++ b/Examples/MAX32650/ARM-DSP/arm_matrix_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ARM-DSP/arm_matrix_example/Makefile b/Examples/MAX32650/ARM-DSP/arm_matrix_example/Makefile index 2765ae15e10..71bc32d20b4 100644 --- a/Examples/MAX32650/ARM-DSP/arm_matrix_example/Makefile +++ b/Examples/MAX32650/ARM-DSP/arm_matrix_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ARM-DSP/arm_matrix_example/project.mk b/Examples/MAX32650/ARM-DSP/arm_matrix_example/project.mk index 7d3b6a16279..d9368717eb6 100644 --- a/Examples/MAX32650/ARM-DSP/arm_matrix_example/project.mk +++ b/Examples/MAX32650/ARM-DSP/arm_matrix_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/.vscode/README.md b/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/.vscode/README.md +++ b/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/.vscode/settings.json b/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/.vscode/settings.json index 0e32b55f8a0..5355a763017 100755 --- a/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/.vscode/settings.json +++ b/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/Makefile b/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/Makefile index 2765ae15e10..71bc32d20b4 100644 --- a/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/Makefile +++ b/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/project.mk b/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/project.mk index 7d3b6a16279..d9368717eb6 100644 --- a/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/project.mk +++ b/Examples/MAX32650/ARM-DSP/arm_signal_converge_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/.vscode/README.md b/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/.vscode/README.md +++ b/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/.vscode/settings.json b/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/.vscode/settings.json index 0e32b55f8a0..5355a763017 100755 --- a/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/.vscode/settings.json +++ b/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/Makefile b/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/Makefile index 2765ae15e10..71bc32d20b4 100644 --- a/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/Makefile +++ b/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/project.mk b/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/project.mk index 7d3b6a16279..d9368717eb6 100644 --- a/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/project.mk +++ b/Examples/MAX32650/ARM-DSP/arm_sin_cos_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ARM-DSP/arm_svm_example/.vscode/README.md b/Examples/MAX32650/ARM-DSP/arm_svm_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ARM-DSP/arm_svm_example/.vscode/README.md +++ b/Examples/MAX32650/ARM-DSP/arm_svm_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ARM-DSP/arm_svm_example/.vscode/settings.json b/Examples/MAX32650/ARM-DSP/arm_svm_example/.vscode/settings.json index 0e32b55f8a0..5355a763017 100755 --- a/Examples/MAX32650/ARM-DSP/arm_svm_example/.vscode/settings.json +++ b/Examples/MAX32650/ARM-DSP/arm_svm_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ARM-DSP/arm_svm_example/Makefile b/Examples/MAX32650/ARM-DSP/arm_svm_example/Makefile index 2765ae15e10..71bc32d20b4 100644 --- a/Examples/MAX32650/ARM-DSP/arm_svm_example/Makefile +++ b/Examples/MAX32650/ARM-DSP/arm_svm_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ARM-DSP/arm_svm_example/project.mk b/Examples/MAX32650/ARM-DSP/arm_svm_example/project.mk index 7d3b6a16279..d9368717eb6 100644 --- a/Examples/MAX32650/ARM-DSP/arm_svm_example/project.mk +++ b/Examples/MAX32650/ARM-DSP/arm_svm_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ARM-DSP/arm_variance_example/.vscode/README.md b/Examples/MAX32650/ARM-DSP/arm_variance_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ARM-DSP/arm_variance_example/.vscode/README.md +++ b/Examples/MAX32650/ARM-DSP/arm_variance_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ARM-DSP/arm_variance_example/.vscode/settings.json b/Examples/MAX32650/ARM-DSP/arm_variance_example/.vscode/settings.json index 0e32b55f8a0..5355a763017 100755 --- a/Examples/MAX32650/ARM-DSP/arm_variance_example/.vscode/settings.json +++ b/Examples/MAX32650/ARM-DSP/arm_variance_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ARM-DSP/arm_variance_example/Makefile b/Examples/MAX32650/ARM-DSP/arm_variance_example/Makefile index 2765ae15e10..71bc32d20b4 100644 --- a/Examples/MAX32650/ARM-DSP/arm_variance_example/Makefile +++ b/Examples/MAX32650/ARM-DSP/arm_variance_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ARM-DSP/arm_variance_example/project.mk b/Examples/MAX32650/ARM-DSP/arm_variance_example/project.mk index 7d3b6a16279..d9368717eb6 100644 --- a/Examples/MAX32650/ARM-DSP/arm_variance_example/project.mk +++ b/Examples/MAX32650/ARM-DSP/arm_variance_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/CLCD/.vscode/README.md b/Examples/MAX32650/CLCD/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/CLCD/.vscode/README.md +++ b/Examples/MAX32650/CLCD/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/CLCD/.vscode/settings.json b/Examples/MAX32650/CLCD/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/CLCD/.vscode/settings.json +++ b/Examples/MAX32650/CLCD/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/CLCD/Makefile b/Examples/MAX32650/CLCD/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/CLCD/Makefile +++ b/Examples/MAX32650/CLCD/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/CLCD/frame.h b/Examples/MAX32650/CLCD/frame.h index d3fc9f193f1..69b9d7c733a 100644 --- a/Examples/MAX32650/CLCD/frame.h +++ b/Examples/MAX32650/CLCD/frame.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/CLCD/main.c b/Examples/MAX32650/CLCD/main.c index 23af26e8cb9..fb968c9b7df 100644 --- a/Examples/MAX32650/CLCD/main.c +++ b/Examples/MAX32650/CLCD/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/CLCD/project.mk b/Examples/MAX32650/CLCD/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/CLCD/project.mk +++ b/Examples/MAX32650/CLCD/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/CLCD_FreeRTOS/.cproject b/Examples/MAX32650/CLCD_FreeRTOS/.cproject new file mode 100644 index 00000000000..51c0d16d047 --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/.cproject @@ -0,0 +1,84 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32650/CLCD_FreeRTOS/.project b/Examples/MAX32650/CLCD_FreeRTOS/.project new file mode 100644 index 00000000000..9b781da479b --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/.project @@ -0,0 +1,26 @@ + + + CLCD_FreeRTOS + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32650/USB/USB_CDCACM/.settings/language.settings.xml b/Examples/MAX32650/CLCD_FreeRTOS/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32650/USB/USB_CDCACM/.settings/language.settings.xml rename to Examples/MAX32650/CLCD_FreeRTOS/.settings/language.settings.xml diff --git a/Examples/MAX32650/USB/USB_CDCACM/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32650/CLCD_FreeRTOS/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32650/USB/USB_CDCACM/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32650/CLCD_FreeRTOS/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32650/CLCD_FreeRTOS/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32650/CLCD_FreeRTOS/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..1066cd0b35d --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=CLCD_FreeRTOS +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32650 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32650/CLCD_FreeRTOS/.vscode/README.md b/Examples/MAX32650/CLCD_FreeRTOS/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32650/CLCD_FreeRTOS/.vscode/c_cpp_properties.json b/Examples/MAX32650/CLCD_FreeRTOS/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..b043b809363 --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/.vscode/c_cpp_properties.json @@ -0,0 +1,55 @@ +{ + "configurations": [ + { + "name": "windows-gcc-x64", + "includePath": [ + "${workspaceFolder}/**" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "windows-gcc-x64", + "compilerPath": "C:/msys64/mingw64/bin/gcc.exe", + "browse": { + "path": [ + "${default}" + ] + }, + "cStandard": "${default}", + "cppStandard": "${default}" + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32650/USB/USB_CDCACM/.vscode/flash.gdb b/Examples/MAX32650/CLCD_FreeRTOS/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_CDCACM/.vscode/flash.gdb rename to Examples/MAX32650/CLCD_FreeRTOS/.vscode/flash.gdb diff --git a/Examples/MAX32650/CLCD_FreeRTOS/.vscode/launch.json b/Examples/MAX32650/CLCD_FreeRTOS/.vscode/launch.json new file mode 100644 index 00000000000..c3d7a82a4d7 --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/.vscode/launch.json @@ -0,0 +1,209 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd": "${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": [ + "${workspaceFolder}/build/${config:program_file}" + ], + "symbolFiles": [ + { + "file": "${workspaceFolder}/build/${config:symbol_file}" + } + ], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd" + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe" + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd" + }, + "searchDir": [ + "${config:OCD_path}/scripts" + ], + "configFiles": [ + "interface/${config:M4_OCD_interface_file}", + "target/${config:M4_OCD_target_file}" + ], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd" + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe" + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd" + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + { + "text": "-list-features" + } + ], + "setupCommands": [ + { + "text": "set logging overwrite on" + }, + { + "text": "set logging file debug-arm.log" + }, + { + "text": "set logging on" + }, + { + "text": "cd ${workspaceFolder}" + }, + { + "text": "exec-file build/${config:program_file}" + }, + { + "text": "symbol-file build/${config:symbol_file}" + }, + { + "text": "target remote localhost:3333" + }, + { + "text": "monitor reset halt" + }, + { + "text": "set $pc=Reset_Handler" + }, + { + "text": "b main" + } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd" + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe" + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd" + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + { + "text": "-list-features" + } + ], + "targetArchitecture": "arm", + "setupCommands": [ + { + "text": "set logging overwrite on" + }, + { + "text": "set logging file debug-riscv.log" + }, + { + "text": "set logging on" + }, + { + "text": "cd ${workspaceFolder}" + }, + { + "text": "set architecture riscv:rv32", + "ignoreFailures": false + }, + { + "text": "exec-file build/${config:program_file}", + "ignoreFailures": false + }, + { + "text": "symbol-file buildrv/${config:symbol_file}", + "ignoreFailures": false + }, + { + "text": "target remote localhost:3334" + }, + { + "text": "b main" + }, + { + "text": "set $pc=Reset_Handler", + "ignoreFailures": false + } + ] + }, + { + "name": "C/C++ Runner: Debug Session", + "type": "cppdbg", + "request": "launch", + "args": [], + "stopAtEntry": false, + "externalConsole": true, + "cwd": "c:/Workspace/MSDK_Development/brentk-adi-fork/Examples/MAX32650/CLCD_FreeRTOS", + "program": "c:/Workspace/MSDK_Development/brentk-adi-fork/Examples/MAX32650/CLCD_FreeRTOS/build/Debug/outDebug", + "MIMode": "gdb", + "miDebuggerPath": "gdb", + "setupCommands": [ + { + "description": "Enable pretty-printing for gdb", + "text": "-enable-pretty-printing", + "ignoreFailures": true + } + ] + } + ] +} \ No newline at end of file diff --git a/Examples/MAX32650/CLCD_FreeRTOS/.vscode/settings.json b/Examples/MAX32650/CLCD_FreeRTOS/.vscode/settings.json new file mode 100644 index 00000000000..ae20d60e51c --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/.vscode/settings.json @@ -0,0 +1,138 @@ +{ + "terminal.integrated.env.windows": { + "Path": "${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + "terminal.integrated.env.linux": { + "PATH": "${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH": "${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "target": "MAX32650", + "board": "EvKit_V1", + "project_name": "${workspaceFolderBasename}", + "program_file": "${config:project_name}.elf", + "symbol_file": "${config:program_file}", + "M4_OCD_interface_file": "cmsis-dap.cfg", + "M4_OCD_target_file": "max32650.cfg", + "RV_OCD_interface_file": "ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file": "${config:target}_riscv.cfg", + "v_Arm_GCC": "10.3", + "v_xPack_GCC": "12.2.0-3.1", + "OCD_path": "${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path": "${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path": "${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path": "${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path": "${config:MAXIM_PATH}/Tools/MSYS2", + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/FreeRTOS-Plus/Source/FreeRTOS-Plus-CLI", + "${config:MAXIM_PATH}/Libraries/FreeRTOS/Source/include", + "${config:MAXIM_PATH}/Libraries/FreeRTOS/Source/portable/GCC/ARM_CM4F", + "${config:MAXIM_PATH}/Libraries/FreeRTOS/Source/portable/GCC/RISC-V" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/FreeRTOS-Plus/Source/FreeRTOS-Plus-CLI", + "${config:MAXIM_PATH}/Libraries/FreeRTOS/Source", + "${config:MAXIM_PATH}/Libraries/FreeRTOS/Source/portable/GCC/ARM_CM4F", + "${config:MAXIM_PATH}/Libraries/FreeRTOS/Source/portable/GCC/RISC-V" + ], + "C_Cpp.default.defines": [], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ], + "C_Cpp_Runner.cCompilerPath": "gcc", + "C_Cpp_Runner.cppCompilerPath": "g++", + "C_Cpp_Runner.debuggerPath": "gdb", + "C_Cpp_Runner.cStandard": "", + "C_Cpp_Runner.cppStandard": "", + "C_Cpp_Runner.msvcBatchPath": "C:/Program Files/Microsoft Visual Studio/VR_NR/Community/VC/Auxiliary/Build/vcvarsall.bat", + "C_Cpp_Runner.useMsvc": false, + "C_Cpp_Runner.warnings": [ + "-Wall", + "-Wextra", + "-Wpedantic", + "-Wshadow", + "-Wformat=2", + "-Wcast-align", + "-Wconversion", + "-Wsign-conversion", + "-Wnull-dereference" + ], + "C_Cpp_Runner.msvcWarnings": [ + "/W4", + "/permissive-", + "/w14242", + "/w14287", + "/w14296", + "/w14311", + "/w14826", + "/w44062", + "/w44242", + "/w14905", + "/w14906", + "/w14263", + "/w44265", + "/w14928" + ], + "C_Cpp_Runner.enableWarnings": true, + "C_Cpp_Runner.warningsAsError": false, + "C_Cpp_Runner.compilerArgs": [], + "C_Cpp_Runner.linkerArgs": [], + "C_Cpp_Runner.includePaths": [], + "C_Cpp_Runner.includeSearch": [ + "*", + "**/*" + ], + "C_Cpp_Runner.excludeSearch": [ + "**/build", + "**/build/**", + "**/.*", + "**/.*/**", + "**/.vscode", + "**/.vscode/**" + ], + "C_Cpp_Runner.useAddressSanitizer": false, + "C_Cpp_Runner.useUndefinedSanitizer": false, + "C_Cpp_Runner.useLeakSanitizer": false, + "C_Cpp_Runner.showCompilationTime": false, + "C_Cpp_Runner.useLinkTimeOptimization": false, + "C_Cpp_Runner.msvcSecureNoWarnings": false, + "files.associations": { + "usagetrace.h": "c", + "core_cm4.h": "c", + "lcd_task.h": "c" + } +} \ No newline at end of file diff --git a/Examples/MAX32650/USB/USB_CDCACM/.vscode/tasks.json b/Examples/MAX32650/CLCD_FreeRTOS/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_CDCACM/.vscode/tasks.json rename to Examples/MAX32650/CLCD_FreeRTOS/.vscode/tasks.json diff --git a/Examples/MAX32650/CLCD_FreeRTOS/CLCD_FreeRTOS.launch b/Examples/MAX32650/CLCD_FreeRTOS/CLCD_FreeRTOS.launch new file mode 100644 index 00000000000..5967931ccf3 --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/CLCD_FreeRTOS.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32650/CLCD_FreeRTOS/FreeRTOSConfig.h b/Examples/MAX32650/CLCD_FreeRTOS/FreeRTOSConfig.h new file mode 100644 index 00000000000..5e0cfa4b534 --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/FreeRTOSConfig.h @@ -0,0 +1,110 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32650_CLCD_FREERTOS_FREERTOSCONFIG_H_ +#define EXAMPLES_MAX32650_CLCD_FREERTOS_FREERTOSCONFIG_H_ + +#include +#include "max32650.h" + +/*----------------------------------------------------------- + * Application specific definitions. + * + * These definitions should be adjusted for your particular hardware and + * application requirements. + * + * THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE + * FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE. + * + * See http://www.freertos.org/a00110.html. + *----------------------------------------------------------*/ + +/* Ensure definitions are only used by the compiler, and not by the assembler. */ +#if defined(__ICCARM__) || defined(__CC_ARM) || defined(__GNUC__) +extern uint32_t SystemCoreClock; +#endif + +#define configCPU_CLOCK_HZ (SystemCoreClock) + +#define configTICK_RATE_HZ ((portTickType)1000) +#define configRTC_TICK_RATE_HZ (32768) + +#define configTOTAL_HEAP_SIZE ((size_t)(16 * 1024)) + +#define configMINIMAL_STACK_SIZE ((uint16_t)128) + +#define configMAX_PRIORITIES 5 +#define configUSE_PREEMPTION 1 +#define configUSE_IDLE_HOOK 0 +#define configUSE_TICK_HOOK 0 +#define configUSE_CO_ROUTINES 0 +#define configUSE_16_BIT_TICKS 0 +#define configUSE_MUTEXES 1 + +/* Run time and task stats gathering related definitions. */ +#define configUSE_TRACE_FACILITY 1 +#define configUSE_STATS_FORMATTING_FUNCTIONS 1 + +/* Set the following definitions to 1 to include the API function, or zero +to exclude the API function. */ +#define INCLUDE_vTaskPrioritySet 0 +#define INCLUDE_vTaskDelete 0 +#define INCLUDE_vTaskSuspend 1 +#define INCLUDE_vTaskDelayUntil 1 +#define INCLUDE_uxTaskPriorityGet 0 +#define INCLUDE_vTaskDelay 1 + +/* # of priority bits (configured in hardware) is provided by CMSIS */ +#define configPRIO_BITS __NVIC_PRIO_BITS + +/* Priority 7, or 255 as only the top three bits are implemented. This is the lowest priority. */ +#define configKERNEL_INTERRUPT_PRIORITY ((unsigned char)7 << (8 - configPRIO_BITS)) + +/* Priority 5, or 160 as only the top three bits are implemented. */ +#define configMAX_SYSCALL_INTERRUPT_PRIORITY ((unsigned char)5 << (8 - configPRIO_BITS)) + +/* Alias the default handler names to match CMSIS weak symbols */ +#define vPortSVCHandler SVC_Handler +#define xPortPendSVHandler PendSV_Handler +#define xPortSysTickHandler SysTick_Handler + +/* FreeRTOS+CLI requires this size to be defined, but we do not use it */ +#define configCOMMAND_INT_MAX_OUTPUT_SIZE 1 + +// MSDK Debug flags +#if defined(DEBUG) && DEBUG == 1 +// RTOS Stats Timer Functions +extern void ConfigTimerForStats(void); +extern uint32_t GetTimerForStats(void); +#define portCONFIGURE_TIMER_FOR_RUN_TIME_STATS() (ConfigTimerForStats()) +#define portGET_RUN_TIME_COUNTER_VALUE() (GetTimerForStats()) +#define configGENERATE_RUN_TIME_STATS 1 + +// RTOS Assert & other debug configuration +#define configASSERT(x) \ + if ((x) == 0) { \ + taskDISABLE_INTERRUPTS(); \ + for (;;) {} \ + } +#define configENABLE_BACKWARD_COMPATIBILITY 1 +#define configQUEUE_REGISTRY_SIZE 10 +#define configRECORD_STACK_HIGH_ADDRESS 1 + +#endif + +#endif //EXAMPLES_MAX32650_CLCD_FREERTOS_FREERTOSCONFIG_H_ diff --git a/Examples/MAX32650/CLCD_FreeRTOS/FreeRTOS_Debug.c b/Examples/MAX32650/CLCD_FreeRTOS/FreeRTOS_Debug.c new file mode 100644 index 00000000000..b6576a27223 --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/FreeRTOS_Debug.c @@ -0,0 +1,124 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file FreeRTOS_Debug.c + * @brief FreeRTOS Debug utilities including RTOS Stats Timer + * and template HardFault Handler + */ + +#include "FreeRTOS.h" +#include "task.h" +#include "tmr.h" +#include "nvic_table.h" + +// Only include the contents of this file if DEBUG == 1 +#if defined(DEBUG) && (DEBUG == 1) + +// Scheduler tick is 1ms +// RTOS Stats Clock should be 10-100x faster +// MAX32650 Timers are based on PCLK. Prescale 1024 = 58kHz +#define RTOS_STATS_TMR MXC_TMR0 +#define RTOS_STATS_TMR_PSCALE MXC_TMR_PRES_1024 +#define RTOS_STATS_TMR_CNT 0xFFFFFFFF + +/** NOTE: + * Based on this configuration, this timer will roll over after 2^32 / (TMR_SRC / prescaler) seconds. + * Because the RTOS tracks the total time, rollover events cannot be protected by the application. + * Thus, rollover events will affect statistics over long periods of measurement. + **/ +void ConfigTimerForStats() +{ + mxc_tmr_cfg_t tmr; + + MXC_TMR_Shutdown(RTOS_STATS_TMR); + + tmr.pres = RTOS_STATS_TMR_PSCALE; + tmr.mode = TMR_MODE_CONTINUOUS; + tmr.cmp_cnt = RTOS_STATS_TMR_CNT; + tmr.pol = 0; + MXC_TMR_Init(RTOS_STATS_TMR, &tmr); + + MXC_TMR_Start(RTOS_STATS_TMR); +} + +uint32_t GetTimerForStats() +{ + return MXC_TMR_GetCount(RTOS_STATS_TMR); +} + +/* For this debugging function, the register values are loaded into variables + * to be viewed in a debugging context easier. The compiler will complain if + * warnings are enabled, so disable those warnings just for this function + * to filter out build notifications + */ +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wunused-but-set-variable" +void prvGetRegistersFromStack(uint32_t *pulFaultStackAddress) +{ + /* These are volatile to try and prevent the compiler/linker optimising them + away as the variables never actually get used. If the debugger won't show the + values of the variables, make them global my moving their declaration outside + of this function. */ + volatile uint32_t r0; + volatile uint32_t r1; + volatile uint32_t r2; + volatile uint32_t r3; + volatile uint32_t r12; + volatile uint32_t lr; /* Link register. */ + volatile uint32_t pc; /* Program counter. */ + volatile uint32_t psr; /* Program status register. */ + + r0 = pulFaultStackAddress[0]; + r1 = pulFaultStackAddress[1]; + r2 = pulFaultStackAddress[2]; + r3 = pulFaultStackAddress[3]; + + r12 = pulFaultStackAddress[4]; + lr = pulFaultStackAddress[5]; + pc = pulFaultStackAddress[6]; + psr = pulFaultStackAddress[7]; + + /* When the following line is hit, the variables contain the register values. */ + for (;;) {} +} +#pragma GCC diagnostic pop + +void vApplicationStackOverflowHook(TaskHandle_t xTask, signed char *pcTaskName) +{ + for (;;) {} +} + +/* The prototype shows it is a naked function - in effect this is just an +assembly function. */ +void HardFault_Handler(void) __attribute__((naked, aligned(8))); + +/* The fault handler implementation calls a function called +prvGetRegistersFromStack(). */ +void HardFault_Handler(void) +{ + __asm volatile(" tst lr, #4 \n" + " ite eq \n" + " mrseq r0, msp \n" + " mrsne r0, psp \n" + " ldr r1, [r0, #24] \n" + " ldr r2, handler2_address_const \n" + " bx r2 \n" + " handler2_address_const: .word prvGetRegistersFromStack \n"); +} +#endif diff --git a/Examples/MAX32650/CLCD_FreeRTOS/LCD_Task.c b/Examples/MAX32650/CLCD_FreeRTOS/LCD_Task.c new file mode 100644 index 00000000000..0fe9b161949 --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/LCD_Task.c @@ -0,0 +1,360 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#include +#include +#include +#include + +#include "FreeRTOS.h" +#include "FreeRTOSConfig.h" +#include "portable.h" +#include "semphr.h" +#include "task.h" + +#include "clcd.h" +#include "clcd_regs.h" +#include "nvic_table.h" + +#include "LCD_Task.h" +#include "UsageTrace.h" + +/* Update rate for the frame buffer. This drives the FreeRTOS delay time */ +#define FRAME_RATE_MS (1000 / 3) + +/* Panel information */ +#define PANEL_W 320 +#define PANEL_H 240 + +/* Helper constant for drawing colors bars */ +#define COLOR_BAR_COUNT 8 + +/* FreeRTOS task handle */ +static TaskHandle_t lcdTask; + +/* Slightly different operation if double buffering is enabled. Double buffering + * should eliminate any flickering related to drawing while the display is + * updating, at the cost of an additional frame buffer + * + * The variable activeFrame is used for both single and double buffering by the + * task to make code portable + */ +#ifdef LCD_DOUBLE_BUFFER +/* Support for double buffering, Has 2 frame buffers, controlled via a FreeRTOS + * semaphore to ensure frames aren't redrawn mid-update + */ +static uint32_t frameBuffer[2][PANEL_W * PANEL_H] __attribute__((aligned(32))); +static uint32_t *activeFrame; //Frame active for drawing +static uint32_t *runningFrame; //Frame running in the controller +static SemaphoreHandle_t newFrameSem; //Sem that a new frame is ready to show +static SemaphoreHandle_t emptyFrameSem; //Sem that a buffer is avail to draw +#else +/* Frame buffer + * Note: This assumes 24-bits per pixel, word packed to 32. For other bit-depts + * or palletized colors, this buffer will need to change type and/or size. + * However, the 32-bit alignment is required by the peripheral + */ +static uint32_t activeFrame[PANEL_W * PANEL_H] __attribute__((aligned(32))); +#endif + +/* Local Prototypes */ +static void LCD_TaskBody(void *pvParameters); +static void LCD_DrawColorBars(uint32_t *buf); +static void LCD_DrawTaskStats(uint32_t *buf); +static void LCD_DrawTextString(uint32_t *buf, const char *str, uint32_t color); +static int LCD_DrawCharacter(uint32_t *buf, char ch, uint32_t color); +static void LCD_ISR_Handler(void); + +/** + * Initializes the LCD task. Configures the LCD peripheral for the panel and + * kicks off the FreeRTOS task. +*/ +void LCD_TaskInitialize() +{ + mxc_clcd_cfg_t panel; + + panel.width = PANEL_W; //Set the size of the panel in pixels + panel.height = PANEL_H; //Set the width of the panel in pixels + panel.frequency = 6400000; //minimum panel supported frequency + panel.vfrontporch = 2; + panel.vbackporch = 2; + panel.vsyncwidth = 10; + panel.hfrontporch = 12; + panel.hbackporch = 2; + panel.hsyncwidth = 70; + panel.bpp = MXC_BPP24; //24-bit per pixel + panel.palette = NULL; //Only palletized for lower bit depths + panel.paletteSize = 0; + + //Initialize the peripheral + MXC_CLCD_Init(&panel); + +#ifdef LCD_DOUBLE_BUFFER + /* For double buffering, create the semaphores and initialize the empty + * frame as available to draw, and the newFrame as not yet ready + */ + newFrameSem = xSemaphoreCreateBinary(); + emptyFrameSem = xSemaphoreCreateBinary(); + xSemaphoreTake(newFrameSem, 0); + xSemaphoreGive(emptyFrameSem); + activeFrame = frameBuffer[0]; + runningFrame = frameBuffer[1]; + memset(runningFrame, 0, sizeof(uint32_t) * PANEL_W * PANEL_H); + MXC_CLCD_SetFrameAddr((void *)runningFrame); + + //Setup the system to get interrupts from the LCD + MXC_NVIC_SetVector(LCD_IRQn, LCD_ISR_Handler); + NVIC_SetPriority(LCD_IRQn, configMAX_PRIORITIES); + NVIC_EnableIRQ(LCD_IRQn); + + //Set interrupts on Address Ready + MXC_CLCD->int_en = MXC_S_CLCD_INT_EN_ADDR_RDY_IE_EN; +#else + memset(activeFrame, 0, sizeof(uint32_t) * PANEL_W * PANEL_H); + MXC_CLCD_SetFrameAddr((void *)activeFrame); +#endif + + //Enable the CLCD to display the image + MXC_CLCD_Enable(); + + //Create the LCD task + xTaskCreate(LCD_TaskBody, (const char *)"LCD", 1024, NULL, tskIDLE_PRIORITY + 2, &lcdTask); +} + +/** + * Task body for the LCD task. Periodically draw the updated display. +*/ +void LCD_TaskBody(void *pvParameters) +{ + while (1) //Loop forever + { +//When double buffering, need to wait for a frame to be ready +#ifdef LCD_DOUBLE_BUFFER + xSemaphoreTake(emptyFrameSem, portMAX_DELAY); +#endif + + //Track time spent here + _UsageTraceStart(); + +#if defined(LCD_DISP_COLORBARS) + LCD_DrawColorBars(activeFrame); +#elif defined(LCD_DISP_TASK_STATS) + LCD_DrawTaskStats(activeFrame); +#else +//You can add your own drawing routine here +#error "No Display type defined" +#endif + + //Track time spent here + _UsageTraceEnd(); + +//When double buffering, notify of a new frame ready +#ifdef LCD_DOUBLE_BUFFER + xSemaphoreGive(newFrameSem); +#endif + + //Delay until the next frame. This will give us a close match to the + //desired frame rate. Because of the time it takes to actually do the + //drawing, we'll be a bit slower. A more exact implementation would use + //a timer and have this task wake up at the frame rate period, versus + //delaying + vTaskDelay(FRAME_RATE_MS / portTICK_PERIOD_MS); + } +} + +/** + * Interrupt handler for the LCD. This specifically looks for the Address ready + * bit, and if a new frame is available does a buffer swap +*/ +static void LCD_ISR_Handler() +{ + //Get and clear all the flags + uint32_t flags = MXC_CLCD->int_stat; + MXC_CLCD->int_stat = flags; + +#ifdef LCD_DOUBLE_BUFFER + BaseType_t higherPriorityWoken = 0; + uint32_t *tempAddr; + if (flags & MXC_F_CLCD_INT_STAT_ADDR_RDY) //Address is available for update + { + //Try to take a new frame semaphore, only swap frames if successful + if (xSemaphoreTakeFromISR(newFrameSem, &higherPriorityWoken) == pdTRUE) { + tempAddr = runningFrame; + runningFrame = activeFrame; + MXC_CLCD_SetFrameAddr((void *)runningFrame); + activeFrame = tempAddr; + + //Let the task know they can draw on activeFrame again + xSemaphoreGiveFromISR(emptyFrameSem, &higherPriorityWoken); + } + } +#endif +} + +#ifdef LCD_DISP_TASK_STATS +/* Buffer for holding task information. + * FreeRTOS recommends 40 chars per task. Arbitrarily assume 20 tasks or less + */ +#define MAX_TASK_STATUS 20 +static char taskStatusBuf[MAX_TASK_STATUS * 40]; + +/* Grab the font from the MSDK's Provided Library */ +extern const unsigned char Liberation_Sans16x16[]; + +/** + * Helper for accessing font data. For the 16x16 font, the first byte is the + * width of the character in pixels, following by 16, 16-bitmapped vertical + * columns + */ +#pragma pack(1) +typedef struct { + uint8_t width; + uint16_t vertPixels[16]; +} font16x16_helper_t; +#pragma pack() + +/* The Font table in the .C has 4 bytes of header info, skip ahead to the chars */ +static const font16x16_helper_t *fontTable = (font16x16_helper_t *)&(Liberation_Sans16x16[4]); + +/** + * Draws the task statistics from FreeRTOS onto the screen based on the data + * provided by vTaskGetRunTimeStats() + * + * It is assumed the buf + * pointer is the correct depth and size per the PANEL_W and PANEL_H constants. + * + * @param buf - Frame buffer to draw + */ +static void LCD_DrawTaskStats(uint32_t *buf) +{ + //Clean slate. Could be smarter here an just erase area's we've touched + memset(buf, 0, sizeof(uint32_t) * PANEL_W * PANEL_H); + + snprintf(taskStatusBuf, sizeof(taskStatusBuf), "Tick Count: %u", xTaskGetTickCount()); + LCD_DrawTextString(buf + (PANEL_W * 5), taskStatusBuf, 0xFFFFFFFF); + vTaskGetRunTimeStats(taskStatusBuf); + LCD_DrawTextString(buf + (PANEL_W * 22), taskStatusBuf, 0xFFFFFFFF); +} + +/** + * Draws a string of text on the display. Buf represents the upper left corner + * of the display to draw. Will automatically jump lines when a '\n' is + * seen. Loops until a '\0' is found. + * + * @param buf - Buffer to draw into + * @param str - String to draw + * @param color - Color to use +*/ +static void LCD_DrawTextString(uint32_t *buf, const char *str, uint32_t color) +{ + uint32_t *workingBuf = buf; + uint32_t *lineStart = buf; + while (*str != '\0') { + if (*str == '\n') { + lineStart += PANEL_W * 17; + workingBuf = lineStart; + } else { + workingBuf += LCD_DrawCharacter(workingBuf, *str, color) + 1; + } + str++; + } +} + +/** + * Draws a character on the location of the screen. Buf is the upper left pixel + * location. Returns the width of the pixel drawn + * + * @param buf - Buffer to draw into + * @param ch - Character to draw + * @param color - Color to use + * @returns Widdth in pixels of the character drawn +*/ +static int LCD_DrawCharacter(uint32_t *buf, char ch, uint32_t color) +{ + uint32_t *workingBuf; + const font16x16_helper_t *charData; + + //The font supports ' ' through '~'. If outside that range, draw a space + if ((ch < ' ') || (ch > '~')) { + ch = ' '; + } + + //Grab the pixel data + charData = &fontTable[ch - ' ']; + + //For each row in the font + for (int y = 0; y < 16; y++) { + //Get the start of the row + workingBuf = buf + (PANEL_W * y); + + //For each column in the font + for (int x = 0; x < 16; x++) { + //Font is based on vertical pixels, so mask is based on y + if (charData->vertPixels[x] & (1U << y)) { + *workingBuf++ = color; + } else { + *workingBuf++ = 0x00; + } + } + } + + return charData->width; +} +#endif //LCD_DISP_TASK_STATS + +#ifdef LCD_DISP_COLORBARS +/* Color definitions for drawing color bars */ +static const uint32_t colors[COLOR_BAR_COUNT] = { 0x00000000, 0x000000FF, 0x0000FF00, 0x0000FFFF, + 0x00FF0000, 0x00FF00FF, 0x00FFFF00, 0x00FFFFFF }; + +/** + * Draws a simple color bar test pattern in the buffer. It is assumed the buf + * pointer is the correct depth and size per the PANEL_W and PANEL_H constants. + * + * This does a 'rolling' color bar, where the location of the bars shift by 1 + * column on every refresh. + * + * @param buf - Frame buffer to draw + */ +static void LCD_DrawColorBars(uint32_t *buf) +{ + static uint8_t colorIdx = 0; //Non-volatile tracking of color index + + uint32_t *ptr = buf; + uint32_t color; + + //Loop the height of the frame + for (int y = 0; y < PANEL_H; y++) { + //Loop through each color + for (int i = 0; i < COLOR_BAR_COUNT; i++) { + //Grab the next colors + color = colors[colorIdx]; + + //Divide the width evenly + for (int x = 0; x < (PANEL_W / COLOR_BAR_COUNT); x++) { + *ptr++ = color; + } + + //Increment the color index + colorIdx = (colorIdx + 1) % COLOR_BAR_COUNT; + } + } + + //Once again at the end to give a rotating effect + colorIdx = (colorIdx + 1) % COLOR_BAR_COUNT; +} +#endif //LCD_DISP_COLORBARS diff --git a/Examples/MAX32650/CLCD_FreeRTOS/LCD_Task.h b/Examples/MAX32650/CLCD_FreeRTOS/LCD_Task.h new file mode 100644 index 00000000000..a4450603bc1 --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/LCD_Task.h @@ -0,0 +1,24 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#ifndef EXAMPLES_MAX32650_CLCD_FREERTOS_LCD_TASK_H_ +#define EXAMPLES_MAX32650_CLCD_FREERTOS_LCD_TASK_H_ + +/* Initializes the LCD and starts the FreeRTOS task */ +void LCD_TaskInitialize(void); + +#endif //EXAMPLES_MAX32650_CLCD_FREERTOS_LCD_TASK_H_ diff --git a/Examples/MAX32650/CLCD_FreeRTOS/LiberationSans16x16.c b/Examples/MAX32650/CLCD_FreeRTOS/LiberationSans16x16.c new file mode 100644 index 00000000000..19c01385222 --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/LiberationSans16x16.c @@ -0,0 +1,306 @@ +//Digitized data copyright (c) 2010 Google Corporation +// with Reserved Font Arimo, Tinos and Cousine. +//Copyright (c) 2012 Red Hat, Inc. +// with Reserved Font Name Liberation. +// +//This Font Software is licensed under the SIL Open Font License, +//Version 1.1, see LICENSE +// +//Font Generated by MikroElektronika GLCD Font Creator 1.2.0.0 +//MikroElektronika 2011 +//http://www.mikroe.com + +//GLCD FontName : Liberation_Sans16x16 +//GLCD FontSize : 16 x 16 + +const unsigned char Liberation_Sans16x16[] = { + 33, 16, 16, 2, // number of bytes per character; horizontal size in pixels; vertical size in pixels; number of bytes per vertical line + 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char + 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1B, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char ! + 0x06, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char " + 0x0A, 0x00, 0x00, 0x10, 0x02, 0x10, 0x1E, 0xF0, 0x03, 0x1E, 0x02, + 0x10, 0x02, 0x10, 0x1E, 0xF8, 0x03, 0x16, 0x02, 0x10, 0x02, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char # + 0x0A, 0x00, 0x00, 0x00, 0x08, 0x3C, 0x18, 0x66, 0x10, 0x42, 0x10, + 0xFF, 0x3F, 0xC2, 0x10, 0x82, 0x10, 0x84, 0x0F, 0x00, 0x07, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char $ + 0x0E, 0x00, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x42, 0x00, 0x42, 0x10, + 0x7E, 0x0C, 0x00, 0x06, 0x80, 0x01, 0x60, 0x00, 0x38, 0x00, 0x8C, + 0x1F, 0x82, 0x10, 0x80, 0x10, 0x80, 0x1F, 0x00, 0x00, 0x00, 0x00, // Code for char % + 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x80, 0x19, 0xF8, 0x10, + 0xC4, 0x11, 0x44, 0x13, 0x64, 0x0E, 0x38, 0x0C, 0x00, 0x1B, 0x80, + 0x10, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char & + 0x03, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char ' + 0x06, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x0F, 0x3C, 0x78, 0x06, 0xC0, + 0x02, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char ( + 0x05, 0x00, 0x00, 0x02, 0x80, 0x06, 0xC0, 0x3C, 0x78, 0xE0, 0x0F, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char ) + 0x07, 0x00, 0x00, 0x08, 0x00, 0x48, 0x00, 0x38, 0x00, 0x3E, 0x00, + 0x48, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char * + 0x09, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, + 0xF0, 0x07, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char + + 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x78, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char , + 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char - + 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x18, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char . + 0x05, 0x00, 0x00, 0x00, 0x18, 0x80, 0x07, 0x78, 0x00, 0x06, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char / + 0x09, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x07, 0x04, 0x0C, 0x02, 0x10, + 0x02, 0x10, 0x02, 0x10, 0x04, 0x0C, 0xF8, 0x07, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char 0 + 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x10, 0x06, 0x10, + 0xFE, 0x1F, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char 1 + 0x09, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x18, 0x06, 0x1C, 0x02, 0x12, + 0x02, 0x11, 0x82, 0x10, 0xEE, 0x10, 0x3C, 0x10, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char 2 + 0x09, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x0C, 0x06, 0x18, 0x42, 0x10, + 0x42, 0x10, 0x62, 0x10, 0xF6, 0x18, 0x9C, 0x0F, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char 3 + 0x0A, 0x00, 0x00, 0x00, 0x02, 0x80, 0x03, 0xC0, 0x02, 0x30, 0x02, + 0x1C, 0x02, 0x06, 0x02, 0xFE, 0x1F, 0x00, 0x02, 0x00, 0x02, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char 4 + 0x09, 0x00, 0x00, 0x00, 0x00, 0x7E, 0x08, 0x4E, 0x18, 0x22, 0x10, + 0x22, 0x10, 0x22, 0x10, 0x62, 0x08, 0xC2, 0x0F, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char 5 + 0x09, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x07, 0xCC, 0x0C, 0x22, 0x10, + 0x22, 0x10, 0x22, 0x10, 0x66, 0x18, 0xC4, 0x0F, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char 6 + 0x09, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x1E, + 0xC2, 0x07, 0x72, 0x00, 0x1A, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char 7 + 0x09, 0x00, 0x00, 0x00, 0x00, 0xBC, 0x0F, 0xA6, 0x18, 0x42, 0x10, + 0x42, 0x10, 0x42, 0x10, 0xA6, 0x18, 0xBC, 0x0F, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char 8 + 0x09, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x08, 0x86, 0x19, 0x02, 0x11, + 0x02, 0x11, 0x02, 0x11, 0x8C, 0x0C, 0xF8, 0x07, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char 9 + 0x04, 0x00, 0x00, 0x00, 0x00, 0x30, 0x18, 0x30, 0x18, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char : + 0x04, 0x00, 0x00, 0x00, 0x00, 0x30, 0x18, 0x30, 0x78, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char ; + 0x09, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x01, 0x40, 0x01, 0x40, 0x01, + 0x60, 0x03, 0x20, 0x02, 0x20, 0x02, 0x10, 0x04, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char < + 0x09, 0x00, 0x00, 0x00, 0x00, 0x20, 0x02, 0x20, 0x02, 0x20, 0x02, + 0x20, 0x02, 0x20, 0x02, 0x20, 0x02, 0x20, 0x02, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char = + 0x09, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x20, 0x02, 0x20, 0x02, + 0x60, 0x03, 0x40, 0x01, 0x40, 0x01, 0xC0, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char > + 0x09, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x06, 0x00, 0x02, 0x18, + 0x02, 0x1B, 0x82, 0x00, 0xC6, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char ? + 0x10, 0x00, 0x00, 0x00, 0x00, 0x80, 0x07, 0x70, 0x1C, 0x18, 0x30, + 0x84, 0x27, 0xE4, 0x4C, 0x32, 0x48, 0x12, 0x48, 0x12, 0x44, 0x32, + 0x42, 0xE2, 0x2F, 0x34, 0x28, 0x0C, 0x0C, 0x38, 0x07, 0xE0, 0x00, // Code for char @ + 0x0C, 0x00, 0x00, 0x00, 0x10, 0x00, 0x1E, 0x80, 0x03, 0xF0, 0x01, + 0x1E, 0x01, 0x02, 0x01, 0x1E, 0x01, 0xF0, 0x01, 0x80, 0x03, 0x00, + 0x1E, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char A + 0x0B, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0xFE, 0x1F, 0x42, 0x10, + 0x42, 0x10, 0x42, 0x10, 0x42, 0x10, 0x66, 0x10, 0xBC, 0x0C, 0x80, + 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char B + 0x0C, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x03, 0x1C, 0x0F, 0x04, 0x08, + 0x02, 0x10, 0x02, 0x10, 0x02, 0x10, 0x02, 0x10, 0x02, 0x10, 0x04, + 0x08, 0x0C, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char C + 0x0C, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0xFE, 0x1F, 0x02, 0x10, + 0x02, 0x10, 0x02, 0x10, 0x02, 0x10, 0x02, 0x18, 0x04, 0x08, 0x1C, + 0x0E, 0xF0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char D + 0x0B, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0xFE, 0x1F, 0x42, 0x10, + 0x42, 0x10, 0x42, 0x10, 0x42, 0x10, 0x42, 0x10, 0x42, 0x10, 0x02, + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char E + 0x0A, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0xFE, 0x1F, 0x82, 0x00, + 0x82, 0x00, 0x82, 0x00, 0x82, 0x00, 0x82, 0x00, 0x82, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char F + 0x0C, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x03, 0x1C, 0x0E, 0x04, 0x08, + 0x02, 0x10, 0x02, 0x10, 0x82, 0x10, 0x82, 0x10, 0x86, 0x18, 0x8C, + 0x0F, 0x88, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char G + 0x0B, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0xFE, 0x1F, 0x40, 0x00, + 0x40, 0x00, 0x40, 0x00, 0x40, 0x00, 0x40, 0x00, 0xFE, 0x1F, 0xFE, + 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char H + 0x03, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char I + 0x08, 0x00, 0x00, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x10, 0x02, 0x10, + 0x02, 0x10, 0xFE, 0x0F, 0xFE, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char J + 0x0B, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0xFE, 0x1F, 0xC0, 0x00, + 0x60, 0x00, 0xF0, 0x01, 0x18, 0x03, 0x0C, 0x06, 0x06, 0x0C, 0x02, + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char K + 0x09, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0xFE, 0x1F, 0x00, 0x10, + 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char L + 0x0D, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0xFE, 0x1F, 0x3C, 0x00, + 0xE0, 0x00, 0x00, 0x07, 0x00, 0x18, 0x00, 0x0F, 0xE0, 0x01, 0x3C, + 0x00, 0xFE, 0x1F, 0xFE, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char M + 0x0B, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0xFE, 0x1F, 0x1C, 0x00, + 0x30, 0x00, 0xC0, 0x00, 0x00, 0x03, 0x00, 0x0C, 0xFE, 0x1F, 0xFE, + 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char N + 0x0C, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x03, 0x1C, 0x0E, 0x04, 0x08, + 0x02, 0x10, 0x02, 0x10, 0x02, 0x10, 0x02, 0x10, 0x04, 0x08, 0x1C, + 0x0E, 0xF8, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char O + 0x0B, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0xFE, 0x1F, 0x82, 0x00, + 0x82, 0x00, 0x82, 0x00, 0x82, 0x00, 0x82, 0x00, 0x6C, 0x00, 0x7C, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char P + 0x0C, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x03, 0x1C, 0x0E, 0x04, 0x08, + 0x02, 0x10, 0x02, 0x10, 0x02, 0x70, 0x02, 0xD0, 0x04, 0x88, 0x1C, + 0x8E, 0xF8, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char Q + 0x0B, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0xFE, 0x1F, 0x82, 0x00, + 0x82, 0x00, 0x82, 0x00, 0x82, 0x01, 0x82, 0x07, 0x7C, 0x1C, 0x38, + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char R + 0x0B, 0x00, 0x00, 0x00, 0x00, 0x18, 0x0C, 0x3C, 0x08, 0x66, 0x10, + 0x42, 0x10, 0x42, 0x10, 0xC2, 0x10, 0x82, 0x10, 0x8C, 0x09, 0x0C, + 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char S + 0x0A, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, + 0xFE, 0x1F, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char T + 0x0B, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x03, 0xFE, 0x0F, 0x00, 0x18, + 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x18, 0xFE, 0x0F, 0xFE, + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char U + 0x0C, 0x00, 0x00, 0x02, 0x00, 0x1E, 0x00, 0x78, 0x00, 0xC0, 0x03, + 0x00, 0x0E, 0x00, 0x10, 0x00, 0x0E, 0xC0, 0x03, 0x78, 0x00, 0x1E, + 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char V + 0x10, 0x00, 0x00, 0x06, 0x00, 0x3E, 0x00, 0xF0, 0x03, 0x00, 0x1F, + 0x00, 0x1C, 0xC0, 0x07, 0x7C, 0x00, 0x06, 0x00, 0x7C, 0x00, 0xC0, + 0x07, 0x00, 0x1C, 0x00, 0x1E, 0xE0, 0x03, 0x3E, 0x00, 0x06, 0x00, // Code for char W + 0x0B, 0x00, 0x00, 0x00, 0x00, 0x02, 0x18, 0x0E, 0x0C, 0x18, 0x07, + 0xB0, 0x01, 0xC0, 0x00, 0xF0, 0x01, 0x18, 0x07, 0x0E, 0x0C, 0x02, + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char X + 0x09, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x1C, 0x00, 0x70, 0x00, + 0xC0, 0x1F, 0x70, 0x00, 0x1C, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char Y + 0x0A, 0x00, 0x00, 0x00, 0x10, 0x02, 0x1C, 0x02, 0x16, 0x82, 0x13, + 0xE2, 0x10, 0x32, 0x10, 0x1E, 0x10, 0x06, 0x10, 0x00, 0x10, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char Z + 0x05, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0x02, 0x80, 0x02, 0x80, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char [ + 0x05, 0x00, 0x00, 0x06, 0x00, 0x78, 0x00, 0x80, 0x07, 0x00, 0x18, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char BackSlash + 0x04, 0x00, 0x00, 0x02, 0x80, 0x02, 0x80, 0xFE, 0xFF, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char ] + 0x08, 0x00, 0x00, 0x40, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x02, 0x00, + 0x0E, 0x00, 0x70, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char ^ + 0x0A, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, + 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char _ + 0x05, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char ` + 0x0A, 0x00, 0x00, 0x00, 0x00, 0x20, 0x0E, 0x30, 0x13, 0x10, 0x11, + 0x10, 0x11, 0x10, 0x09, 0xF0, 0x0F, 0xC0, 0x1F, 0x00, 0x10, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char a + 0x09, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0xEE, 0x0F, 0x10, 0x10, + 0x10, 0x10, 0x10, 0x10, 0x30, 0x18, 0xE0, 0x0F, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char b + 0x08, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x0F, 0x30, 0x18, 0x10, 0x10, + 0x10, 0x10, 0x10, 0x10, 0x20, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char c + 0x09, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x0F, 0x30, 0x18, 0x10, 0x10, + 0x10, 0x10, 0x10, 0x10, 0xFE, 0x0F, 0xFE, 0x1F, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char d + 0x09, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x0F, 0x30, 0x19, 0x10, 0x11, + 0x10, 0x11, 0x10, 0x11, 0x30, 0x19, 0xE0, 0x09, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char e + 0x05, 0x00, 0x00, 0x10, 0x00, 0xFC, 0x1F, 0xFE, 0x1F, 0x12, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char f + 0x09, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x4F, 0x30, 0xD8, 0x10, 0x90, + 0x10, 0x90, 0x30, 0x88, 0xC0, 0x7F, 0xF0, 0x3F, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char g + 0x08, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0x60, 0x00, 0x10, 0x00, + 0x10, 0x00, 0x30, 0x00, 0xE0, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char h + 0x04, 0x00, 0x00, 0x00, 0x00, 0xF2, 0x1F, 0xF2, 0x1F, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char i + 0x03, 0x00, 0x00, 0x00, 0x80, 0xF2, 0xFF, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char j + 0x09, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0x00, 0x03, 0x80, 0x01, + 0xC0, 0x03, 0x60, 0x0E, 0x30, 0x18, 0x00, 0x10, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char k + 0x03, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x1F, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char l + 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x1F, 0x60, 0x00, 0x10, 0x00, + 0x10, 0x00, 0x10, 0x00, 0xE0, 0x1F, 0x20, 0x00, 0x10, 0x00, 0x10, + 0x00, 0x30, 0x00, 0xE0, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char m + 0x08, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x1F, 0x60, 0x00, 0x10, 0x00, + 0x10, 0x00, 0x30, 0x00, 0xE0, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char n + 0x09, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x0F, 0x30, 0x18, 0x10, 0x10, + 0x10, 0x10, 0x10, 0x10, 0x30, 0x18, 0xE0, 0x0F, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char o + 0x09, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xE0, 0xEF, 0x10, 0x10, + 0x10, 0x10, 0x10, 0x10, 0x30, 0x18, 0xE0, 0x0F, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char p + 0x09, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x0F, 0x30, 0x18, 0x10, 0x10, + 0x10, 0x10, 0x10, 0x10, 0xE0, 0xEF, 0xF0, 0xFF, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char q + 0x06, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x1F, 0x60, 0x00, 0x10, 0x00, + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char r + 0x08, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x08, 0x90, 0x11, 0x10, 0x11, + 0x10, 0x11, 0x10, 0x13, 0x20, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char s + 0x05, 0x00, 0x00, 0x10, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0x10, 0x10, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char t + 0x08, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x0F, 0x00, 0x18, 0x00, 0x10, + 0x00, 0x10, 0x00, 0x0C, 0xF0, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char u + 0x08, 0x00, 0x00, 0x30, 0x00, 0xF0, 0x01, 0x00, 0x1F, 0x00, 0x10, + 0x00, 0x0F, 0xF0, 0x01, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char v + 0x0C, 0x00, 0x00, 0x30, 0x00, 0xE0, 0x03, 0x00, 0x1E, 0x00, 0x1E, + 0xE0, 0x03, 0x10, 0x00, 0xE0, 0x03, 0x00, 0x1C, 0x00, 0x1E, 0xE0, + 0x03, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char w + 0x08, 0x00, 0x00, 0x00, 0x10, 0x30, 0x18, 0xE0, 0x06, 0x80, 0x01, + 0xE0, 0x06, 0x30, 0x18, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char x + 0x08, 0x00, 0x00, 0x10, 0x80, 0xF0, 0x81, 0x80, 0xCF, 0x00, 0x78, + 0x00, 0x0F, 0xF0, 0x01, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char y + 0x07, 0x00, 0x00, 0x00, 0x00, 0x10, 0x1C, 0x10, 0x16, 0x90, 0x13, + 0xF0, 0x10, 0x30, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char z + 0x06, 0x00, 0x00, 0x00, 0x01, 0x80, 0x03, 0xFE, 0xFE, 0x02, 0x80, + 0x02, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char { + 0x03, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char | + 0x06, 0x00, 0x00, 0x02, 0x80, 0x02, 0x80, 0xFE, 0xFE, 0x80, 0x03, + 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char } + 0x09, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x40, 0x00, 0x40, 0x00, + 0x80, 0x00, 0x00, 0x01, 0x00, 0x01, 0x80, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char ~ + 0x04, 0x00, 0x00, 0xFC, 0x0F, 0x04, 0x08, 0xFC, 0x0F, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 // Code for char  +}; diff --git a/Examples/MAX32650/CLCD_FreeRTOS/Makefile b/Examples/MAX32650/CLCD_FreeRTOS/Makefile new file mode 100644 index 00000000000..34c2eb93756 --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32650 +TARGET_UC := MAX32650 +TARGET_LC := max32650 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32650/CLCD_FreeRTOS/README.md b/Examples/MAX32650/CLCD_FreeRTOS/README.md new file mode 100644 index 00000000000..be76e58f7ce --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/README.md @@ -0,0 +1,148 @@ +# Description + +This example demonstrates use of the LCD within a FreeRTOS application. + +In addition to providing display support, the application optionally utilizes +double buffering to eliminate display flicker, and provides several trace and +debug options for measuring execution time of code. + +## Display Example + +The provided display example utilizes a FreeRTOS task to periodically update the +display at a 3Hz. The refresh rate can be adjusted through the `FRAME_RATE_MS` +constant in LCD_Task.c. + +The display example has two different graphics options + - FreeRTOS Stats (default) - Displays the run time statistics for running tasks + - Colorbars - Displays generic colorbar test pattern with a rotating effect. + +### Page Flipping / Double Buffering + +The display task has an optional (enabled by default) double buffering +capability through the use of page flipping. Two frame buffers are utilized, +one is actively being drawn by the display controller, and the other is free to +be updated by the display task. The flipping is synchronized with the Address +Ready interrupt of the display controller, and is protected by FreeRTOS +semaphores to ensure frame data is not changed while being redrawn to the screen. +This use of page flipping eliminates flickering and tearing artifacts that can +occur while the actively displayed frame buffer is modified. + +## Usage Tracing + +This project also incorporates several CPU usage features to track the execution +time and utilization of the display task. These concepts can easily by migrated +to other tasks or applications. + +### FreeRTOS Run-Time Stats + +FreeRTOS run time stats are enabled through the `configGENERATE_RUN_TIME_STATS` +definition in FreeRTOSConfig.h. This, along with the assigned timer and +supporting functions, allow FreeRTOS to track the amount of CPU time each +individual task is utilizing, relative to the whole system. + +The run time statistics may be accessed in code through the `vTaskGetRunTimeStats()` +function. This method populates a string buffer, and is by default printed to +the console of this application (via the BackgroundTask) and shown on the LCD. + +It is also possible to get the run time statistics from a debugging context. +Utilizing VS Code as the development IDE, the XRTOS tab may be used. This comes +installed as a default when using the Cortex-Debug extension. With the +application running in the debugger, pause execution and view the XRTOS tab. +The task run times will be populated with the RTOS data. In addition, with the +`configRECORD_STACK_HIGH_ADDRESS` definition in FreeRTOSConfig.h, the stack +usage and high watermark will also be shown. + +![XRTOS Output](doc/xrtos.png) + +### Execution Time Tracing + +To provide a detailed look at the executing time for a specific block of code, +two methods are provided with the UsageTrace implementation. To measure a block +of code with the executing time tracing, wrap the block with `_UsageTraceStart()` +and `_UsageTraceEnd()` respectively. + +Due to interrupts potential running during the code block, the UsageTrace code +can optionally be compiled to disable interrupts during the measured block. This +should only be used for measurement and debug, and not recommended for release +code. + +#### GPIO Tracing + +GPIO Tracing uses a spare GPIO pin on the device to set its state high while +the specified block of code running. With this pin, you can utilize an +oscilloscope or other test equipment to accurately measure run time and see the +frequency of the code running. The default GPIO assigned for this application +is P2.0. + +![GPIO Output](doc/gpio_output.png) ![GPIO Output](doc/gpio_output2.png) + +#### Timer Tracing + +Timer tracing uses a spare timer peripheral to count ticks that elapsed during +the code block executing. The UsageTrace module has a prototype for function +`UsageTraceUserHook()` which needs to be implemented by the user to handle the +completion of each code block event. In this demo application, the hook simply +just prints the results to the console + +``` +void UsageTraceUserHook(uint32_t count, usage_src_t src) +{ + printf("Usage: %d %d\n", count, src); +} +``` + +# Software + +## Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +## Project-Specific Build Notes + +There are several user configurable options to tailor what aspects of this +project are run. While these #defines can be added to the source code, it +is recommended they are incorporated with PROJ_CFLAGS variable in the project.mk +file. + +| Definition | Description | Default | +| ---------- | ----------- |-| +| `LCD_DISP_COLORBARS` | Displays a colorbar pattern on the screen. | | +| `LCD_DISP_TASK_STATS` | Displays the FreeRTOS task stats on the screen. | Y | +| `LCD_DOUBLE_BUFFER` | Uses double buffering for the display. | Y | +| `USAGE_NO_IRQ` | Disables interrupts when tracing usage. | Y | +| `USAGE_GPIO_OUT` | Enables GPIO toggling for usage tracing. | Y | +| `USAGE_TMR` | Enables Timer counts for usage tracing. | Y | + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. +- Open an terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. + +## Expected Output + +Using the default build definitions, the default console output will be the +FreeRTOS task statistics every 10 seconds, as well as the output from the +`UsageTraceUserHook()` on each call. + +``` +Usage: 252014 0 +Usage: 251702 0 +Usage: 251327 0 +Usage: 251709 0 +Usage: 251197 0 +Usage: 251433 0 +==================== +Tick Count: 540542 +Background 33527 <1 +IDLE 31522282 98 +LCD 400989 1 +==================== +Usage: 251116 0 +Usage: 251423 0 +Usage: 250642 0 +Usage: 250764 0 +Usage: 251576 0 +Usage: 251805 0 +``` + + diff --git a/Examples/MAX32650/CLCD_FreeRTOS/UsageTrace.c b/Examples/MAX32650/CLCD_FreeRTOS/UsageTrace.c new file mode 100644 index 00000000000..88bffa2c568 --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/UsageTrace.c @@ -0,0 +1,48 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#include "UsageTrace.h" + +/** + * Initializes the UsageTrace functionality. Needs to be called before Start and + * End are used +*/ +void UsageTraceInit() +{ +#ifdef USAGE_GPIO_OUT + mxc_gpio_cfg_t gpioCfg; + gpioCfg.port = USAGE_GPIO_PORT; + gpioCfg.mask = USAGE_GPIO_PIN; + gpioCfg.drvstr = MXC_GPIO_DRVSTR_0; + gpioCfg.func = MXC_GPIO_FUNC_OUT; + gpioCfg.pad = MXC_GPIO_PAD_NONE; + gpioCfg.vssel = MXC_GPIO_VSSEL_VDDIO; + USAGE_GPIO_PORT->out_clr = USAGE_GPIO_PIN; + MXC_GPIO_Config(&gpioCfg); +#endif + +#ifdef USAGE_TMR + mxc_tmr_cfg_t tmrCfg; + MXC_TMR_Shutdown(USAGE_TMR_INST); + tmrCfg.pres = MXC_TMR_PRES_1; + tmrCfg.mode = TMR_MODE_CONTINUOUS; + tmrCfg.cmp_cnt = 0xFFFFFFFF; + tmrCfg.pol = 0; + MXC_TMR_Init(USAGE_TMR_INST, &tmrCfg); + MXC_TMR_Start(USAGE_TMR_INST); +#endif +} diff --git a/Examples/MAX32650/CLCD_FreeRTOS/UsageTrace.h b/Examples/MAX32650/CLCD_FreeRTOS/UsageTrace.h new file mode 100644 index 00000000000..128aeb4a909 --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/UsageTrace.h @@ -0,0 +1,110 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#ifndef EXAMPLES_MAX32650_CLCD_FREERTOS_USAGETRACE_H_ +#define EXAMPLES_MAX32650_CLCD_FREERTOS_USAGETRACE_H_ +#include "gpio.h" +#include "mxc_device.h" +#include "tmr.h" + +/**************************************** + * This code intends to provide a basic wrapper of functionality for tracking + * amount of time spent in a block of code. It provides several methods for + * doing so, enabled by the various #defines: + * + * - USAGE_TMR - Measure time in a code block using a timer peripheral + * - USAGE_GPIO_OUT - Set a GPIO high while the block is executing + * - USAGE_NO_IRQ - Disable interrupts while this block is running +*/ + +/* If USAGE_TMR, configure the peripheral timer */ +#ifdef USAGE_TMR +#define USAGE_TMR_INST MXC_TMR3 +#endif + +/* If USAGE_GPIO_OUT, configure the GPIO signal */ +#ifdef USAGE_GPIO_OUT +#define USAGE_GPIO_PORT MXC_GPIO2 +#define USAGE_GPIO_PIN MXC_GPIO_PIN_0 +#endif + +/* Enum used for notifying the source during the hook*/ +typedef enum { USAGE_SRC_TMR } usage_src_t; + +/** + * Initializes the UsageTrace functionality. Needs to be called before Start and + * End are used +*/ +void UsageTraceInit(void); + +/** + * Prototype type for the UserHook. For timer based tracing, it is up to the + * user to implement this and determine what to do with the timing data + * + * @param count - Timer count in the units defined by the source + * @param src - Source of the timer data. In case multiple sources are enabled +*/ +void UsageTraceUserHook(uint32_t count, usage_src_t src); + +/** + * Inline function to be placed at the start of the code to be measured. + * Disables interrupts (if defined) and starts all defined timing mechanisms + */ +static inline void _UsageTraceStart(void) +{ +#ifdef USAGE_NO_IRQ + __disable_irq(); +#endif + +#ifdef USAGE_TMR + USAGE_TMR_INST->cnt = 0; +#endif + +#ifdef USAGE_GPIO_OUT + USAGE_GPIO_PORT->out_set = USAGE_GPIO_PIN; +#endif +} + +/** + * Inline function to be placed at the end of the code to be measured. + * Stops all defined timing mechanisms, calls the user hook (if necessary) and + * re-enables interrupts if they were disabled. + */ +static inline void _UsageTraceEnd(void) +{ +#ifdef USAGE_GPIO_OUT + USAGE_GPIO_PORT->out_clr = USAGE_GPIO_PIN; +#endif + +#ifdef USAGE_TMR + uint32_t countTmr; + countTmr = USAGE_TMR_INST->cnt; +#endif + +#ifdef USAGE_NO_IRQ + __enable_irq(); +#endif + +//Defer the user hook until after interrupts are enabled and all counts are +//gathered to not skew the timing, and let the user do what they want in the +//hook +#ifdef USAGE_TMR + UsageTraceUserHook(countTmr, USAGE_SRC_TMR); +#endif +} + +#endif //EXAMPLES_MAX32650_CLCD_FREERTOS_USAGETRACE_H_ diff --git a/Examples/MAX32650/CLCD_FreeRTOS/doc/gpio_output.png b/Examples/MAX32650/CLCD_FreeRTOS/doc/gpio_output.png new file mode 100644 index 00000000000..fa077213770 Binary files /dev/null and b/Examples/MAX32650/CLCD_FreeRTOS/doc/gpio_output.png differ diff --git a/Examples/MAX32650/CLCD_FreeRTOS/doc/gpio_output2.png b/Examples/MAX32650/CLCD_FreeRTOS/doc/gpio_output2.png new file mode 100644 index 00000000000..3f2fbf9bbbf Binary files /dev/null and b/Examples/MAX32650/CLCD_FreeRTOS/doc/gpio_output2.png differ diff --git a/Examples/MAX32650/CLCD_FreeRTOS/doc/xrtos.png b/Examples/MAX32650/CLCD_FreeRTOS/doc/xrtos.png new file mode 100644 index 00000000000..a4fb12c9781 Binary files /dev/null and b/Examples/MAX32650/CLCD_FreeRTOS/doc/xrtos.png differ diff --git a/Examples/MAX32650/CLCD_FreeRTOS/main.c b/Examples/MAX32650/CLCD_FreeRTOS/main.c new file mode 100644 index 00000000000..8ec6dc0f2d9 --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/main.c @@ -0,0 +1,117 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#include +#include +#include + +#include "FreeRTOS.h" +#include "FreeRTOSConfig.h" +#include "portable.h" +#include "task.h" + +#include "mxc_device.h" +#include "mxc_sys.h" +#include "tmr.h" + +#include "LCD_Task.h" +#include "UsageTrace.h" + +/* Frequency to print the task information to the console */ +#define TASK_PRINT_PERIOD_MS 10000 + +/* Buffer for holding task information. + * FreeRTOS recommends 40 chars per task. Arbitrarily assume 20 tasks or less + */ +#define MAX_TASK_STATUS 20 +static char taskStatusBuf[MAX_TASK_STATUS * 40]; + +/* Background task handle */ +static TaskHandle_t backgroundTask; + +/* Local Prototypes */ +static void BackgroundTaskBody(void *pvParameters); + +/** + * Define a custom PreInit function to set the system clock to the full 120MHz + * overriding the default 60MHz. This is done here prior to the BSP getting + * initialized so the console baud rate and other features are correct + * + * See Libraries\CMSIS\Device\Maxim\MAX32650\Source\system_max32650.c + */ +int PreInit(void) +{ + /* Workaround: Write to SCON register on power up to fix trim issue for SRAM */ + MXC_GCR->scon = (MXC_GCR->scon & ~(MXC_F_GCR_SCON_OVR)) | (MXC_S_GCR_SCON_OVR_1V1); + + MXC_SYS_Clock_Select(MXC_SYS_CLOCK_HIRC96); + MXC_SYS_Clock_Div(MXC_SYS_SYSTEM_DIV_1); + return 0; +} + +/** + * Main entry point into our application. + */ +int main(void) +{ + /* Print banner (RTOS scheduler not running) */ + printf("\n-=- FreeRTOS (%s) Demo -=-\n", tskKERNEL_VERSION_NUMBER); + printf("SystemCoreClock = %d\n", SystemCoreClock); + + /* Initialize the trace helper */ + UsageTraceInit(); + + //Create the background task, which also initializes any other system tasks + xTaskCreate(BackgroundTaskBody, (const char *)"Background", 1024, NULL, tskIDLE_PRIORITY + 1, + &backgroundTask); + vTaskStartScheduler(); + + //Should never get here! + while (1) { + __NOP(); + } +} + +/** + * Hook for handling the timer trace calls. This application just prints to the + * terminal. + * @param count - Number of timer ticks + * @param src - Source of the timer data + */ +void UsageTraceUserHook(uint32_t count, usage_src_t src) +{ + printf("Usage: %d %d\n", count, src); +} + +/** + * Background task body. Initialize the other tasks at startup, then + * periodically print the FreeRTOS task statistics + */ +void BackgroundTaskBody(void *pvParameters) +{ + LCD_TaskInitialize(); + + while (1) { + //Periodically print the Task information + vTaskGetRunTimeStats(taskStatusBuf); + printf("====================\n"); + printf("Tick Count: %u\n", xTaskGetTickCount()); + printf("%s", taskStatusBuf); + printf("====================\n"); + vTaskDelay(TASK_PRINT_PERIOD_MS / portTICK_PERIOD_MS); + } +} diff --git a/Examples/MAX32650/CLCD_FreeRTOS/project.mk b/Examples/MAX32650/CLCD_FreeRTOS/project.mk new file mode 100644 index 00000000000..78f525b09c4 --- /dev/null +++ b/Examples/MAX32650/CLCD_FreeRTOS/project.mk @@ -0,0 +1,42 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +#BOARD=FTHR_RevA +# ^ For example, you can uncomment this line to make the +# project build for the "FTHR_RevA" board. + +# ********************************************************** + +MXC_OPTIMIZE_CFLAGS += -Og + +PROJ_CFLAGS += -DUSAGE_GPIO_OUT -DUSAGE_TMR -DUSAGE_NO_IRQ +PROJ_CFLAGS += -DLCD_DISP_TASK_STATS -DLCD_DOUBLE_BUFFER + +# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable FreeRTOS library +LIB_FREERTOS=1 diff --git a/Examples/MAX32650/CRC/.vscode/README.md b/Examples/MAX32650/CRC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/CRC/.vscode/README.md +++ b/Examples/MAX32650/CRC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/CRC/.vscode/settings.json b/Examples/MAX32650/CRC/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/CRC/.vscode/settings.json +++ b/Examples/MAX32650/CRC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/CRC/Makefile b/Examples/MAX32650/CRC/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/CRC/Makefile +++ b/Examples/MAX32650/CRC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/CRC/main.c b/Examples/MAX32650/CRC/main.c index 099014223af..b4a7e5ceff4 100644 --- a/Examples/MAX32650/CRC/main.c +++ b/Examples/MAX32650/CRC/main.c @@ -5,10 +5,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/CRC/project.mk b/Examples/MAX32650/CRC/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/CRC/project.mk +++ b/Examples/MAX32650/CRC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/Coremark/.vscode/README.md b/Examples/MAX32650/Coremark/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/Coremark/.vscode/README.md +++ b/Examples/MAX32650/Coremark/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/Coremark/.vscode/settings.json b/Examples/MAX32650/Coremark/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/Coremark/.vscode/settings.json +++ b/Examples/MAX32650/Coremark/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/Coremark/Makefile b/Examples/MAX32650/Coremark/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/Coremark/Makefile +++ b/Examples/MAX32650/Coremark/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/Coremark/project.mk b/Examples/MAX32650/Coremark/project.mk index 9ded8091069..a6efc624169 100644 --- a/Examples/MAX32650/Coremark/project.mk +++ b/Examples/MAX32650/Coremark/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/DES/.vscode/README.md b/Examples/MAX32650/DES/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/DES/.vscode/README.md +++ b/Examples/MAX32650/DES/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/DES/.vscode/settings.json b/Examples/MAX32650/DES/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/DES/.vscode/settings.json +++ b/Examples/MAX32650/DES/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/DES/Makefile b/Examples/MAX32650/DES/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/DES/Makefile +++ b/Examples/MAX32650/DES/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/DES/main.c b/Examples/MAX32650/DES/main.c index bfe7268cf01..071ee1c43c5 100644 --- a/Examples/MAX32650/DES/main.c +++ b/Examples/MAX32650/DES/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/DES/project.mk b/Examples/MAX32650/DES/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/DES/project.mk +++ b/Examples/MAX32650/DES/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/DMA/.vscode/README.md b/Examples/MAX32650/DMA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/DMA/.vscode/README.md +++ b/Examples/MAX32650/DMA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/DMA/.vscode/settings.json b/Examples/MAX32650/DMA/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/DMA/.vscode/settings.json +++ b/Examples/MAX32650/DMA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/DMA/Makefile b/Examples/MAX32650/DMA/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/DMA/Makefile +++ b/Examples/MAX32650/DMA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/DMA/main.c b/Examples/MAX32650/DMA/main.c index fa9c5a6d1ed..6c753df6212 100644 --- a/Examples/MAX32650/DMA/main.c +++ b/Examples/MAX32650/DMA/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -57,7 +56,7 @@ void memCpyComplete(void *dest) flag++; } -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); } diff --git a/Examples/MAX32650/DMA/project.mk b/Examples/MAX32650/DMA/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/DMA/project.mk +++ b/Examples/MAX32650/DMA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/EEPROM_Emulator/.vscode/README.md b/Examples/MAX32650/EEPROM_Emulator/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/EEPROM_Emulator/.vscode/README.md +++ b/Examples/MAX32650/EEPROM_Emulator/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/EEPROM_Emulator/.vscode/settings.json b/Examples/MAX32650/EEPROM_Emulator/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/EEPROM_Emulator/.vscode/settings.json +++ b/Examples/MAX32650/EEPROM_Emulator/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/EEPROM_Emulator/Makefile b/Examples/MAX32650/EEPROM_Emulator/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/EEPROM_Emulator/Makefile +++ b/Examples/MAX32650/EEPROM_Emulator/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/EEPROM_Emulator/include/cache.h b/Examples/MAX32650/EEPROM_Emulator/include/cache.h index e394ca605be..f88d96616f3 100644 --- a/Examples/MAX32650/EEPROM_Emulator/include/cache.h +++ b/Examples/MAX32650/EEPROM_Emulator/include/cache.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/EEPROM_Emulator/include/eeprom.h b/Examples/MAX32650/EEPROM_Emulator/include/eeprom.h index 75b71adde71..3b931f60deb 100644 --- a/Examples/MAX32650/EEPROM_Emulator/include/eeprom.h +++ b/Examples/MAX32650/EEPROM_Emulator/include/eeprom.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/EEPROM_Emulator/main.c b/Examples/MAX32650/EEPROM_Emulator/main.c index 6705ebd7b88..6c65b41fa1c 100644 --- a/Examples/MAX32650/EEPROM_Emulator/main.c +++ b/Examples/MAX32650/EEPROM_Emulator/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/EEPROM_Emulator/project.mk b/Examples/MAX32650/EEPROM_Emulator/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32650/EEPROM_Emulator/project.mk +++ b/Examples/MAX32650/EEPROM_Emulator/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/EEPROM_Emulator/src/cache.c b/Examples/MAX32650/EEPROM_Emulator/src/cache.c index 17bc7b57c13..adf98b89839 100644 --- a/Examples/MAX32650/EEPROM_Emulator/src/cache.c +++ b/Examples/MAX32650/EEPROM_Emulator/src/cache.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/EEPROM_Emulator/src/eeprom.c b/Examples/MAX32650/EEPROM_Emulator/src/eeprom.c index 7f89677e096..7f7e50ad52e 100644 --- a/Examples/MAX32650/EEPROM_Emulator/src/eeprom.c +++ b/Examples/MAX32650/EEPROM_Emulator/src/eeprom.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/EMCC/.vscode/README.md b/Examples/MAX32650/EMCC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/EMCC/.vscode/README.md +++ b/Examples/MAX32650/EMCC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/EMCC/.vscode/settings.json b/Examples/MAX32650/EMCC/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/EMCC/.vscode/settings.json +++ b/Examples/MAX32650/EMCC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/EMCC/Makefile b/Examples/MAX32650/EMCC/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/EMCC/Makefile +++ b/Examples/MAX32650/EMCC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/EMCC/main.c b/Examples/MAX32650/EMCC/main.c index 32f14d08015..362e113cb43 100644 --- a/Examples/MAX32650/EMCC/main.c +++ b/Examples/MAX32650/EMCC/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/EMCC/project.mk b/Examples/MAX32650/EMCC/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/EMCC/project.mk +++ b/Examples/MAX32650/EMCC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/Flash/.vscode/README.md b/Examples/MAX32650/Flash/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/Flash/.vscode/README.md +++ b/Examples/MAX32650/Flash/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/Flash/.vscode/settings.json b/Examples/MAX32650/Flash/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/Flash/.vscode/settings.json +++ b/Examples/MAX32650/Flash/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/Flash/Makefile b/Examples/MAX32650/Flash/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/Flash/Makefile +++ b/Examples/MAX32650/Flash/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/Flash/main.c b/Examples/MAX32650/Flash/main.c index 20427419ca1..ea4d39ab98f 100644 --- a/Examples/MAX32650/Flash/main.c +++ b/Examples/MAX32650/Flash/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -60,7 +59,7 @@ volatile uint32_t isr_flags; //****************************************************************************** int button_pressed = 0; -void button_handler() +void button_handler(void) { button_pressed = 1; } @@ -121,7 +120,7 @@ void setup_irqs(void) isr_cnt = 0; } -int write_test_pattern() +int write_test_pattern(void) { int err; // A flash address must be in the erased state before writing to it, because the @@ -163,7 +162,7 @@ int write_test_pattern() return err; } -int validate_test_pattern() +int validate_test_pattern(void) { int err = 0; @@ -183,7 +182,7 @@ int validate_test_pattern() return err; } -int erase_magic() +int erase_magic(void) { /* To modify a location in flash that has already been written to, diff --git a/Examples/MAX32650/Flash/project.mk b/Examples/MAX32650/Flash/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32650/Flash/project.mk +++ b/Examples/MAX32650/Flash/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/Flash_CLI/.vscode/README.md b/Examples/MAX32650/Flash_CLI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/Flash_CLI/.vscode/README.md +++ b/Examples/MAX32650/Flash_CLI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/Flash_CLI/.vscode/settings.json b/Examples/MAX32650/Flash_CLI/.vscode/settings.json index 7fb2f9ccf49..7525ba4d0c4 100755 --- a/Examples/MAX32650/Flash_CLI/.vscode/settings.json +++ b/Examples/MAX32650/Flash_CLI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/Flash_CLI/FreeRTOSConfig.h b/Examples/MAX32650/Flash_CLI/FreeRTOSConfig.h index 7bb1524d3c1..09cedaa27c4 100644 --- a/Examples/MAX32650/Flash_CLI/FreeRTOSConfig.h +++ b/Examples/MAX32650/Flash_CLI/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/Flash_CLI/Makefile b/Examples/MAX32650/Flash_CLI/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/Flash_CLI/Makefile +++ b/Examples/MAX32650/Flash_CLI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/Flash_CLI/definitions.h b/Examples/MAX32650/Flash_CLI/definitions.h index 42f505cfcdd..b9549b6a5a4 100644 --- a/Examples/MAX32650/Flash_CLI/definitions.h +++ b/Examples/MAX32650/Flash_CLI/definitions.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/Flash_CLI/main.c b/Examples/MAX32650/Flash_CLI/main.c index a98988dc40c..392fc0084c9 100644 --- a/Examples/MAX32650/Flash_CLI/main.c +++ b/Examples/MAX32650/Flash_CLI/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/Flash_CLI/project.mk b/Examples/MAX32650/Flash_CLI/project.mk index 62f2c02d16a..b4a51ec3afa 100644 --- a/Examples/MAX32650/Flash_CLI/project.mk +++ b/Examples/MAX32650/Flash_CLI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/FreeRTOSDemo/.vscode/README.md b/Examples/MAX32650/FreeRTOSDemo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/FreeRTOSDemo/.vscode/README.md +++ b/Examples/MAX32650/FreeRTOSDemo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/FreeRTOSDemo/.vscode/settings.json b/Examples/MAX32650/FreeRTOSDemo/.vscode/settings.json index 7fb2f9ccf49..7525ba4d0c4 100755 --- a/Examples/MAX32650/FreeRTOSDemo/.vscode/settings.json +++ b/Examples/MAX32650/FreeRTOSDemo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/FreeRTOSDemo/FreeRTOSConfig.h b/Examples/MAX32650/FreeRTOSDemo/FreeRTOSConfig.h index 81d63559c10..7604677feef 100644 --- a/Examples/MAX32650/FreeRTOSDemo/FreeRTOSConfig.h +++ b/Examples/MAX32650/FreeRTOSDemo/FreeRTOSConfig.h @@ -5,10 +5,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/FreeRTOSDemo/Makefile b/Examples/MAX32650/FreeRTOSDemo/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/FreeRTOSDemo/Makefile +++ b/Examples/MAX32650/FreeRTOSDemo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/FreeRTOSDemo/freertos_tickless.c b/Examples/MAX32650/FreeRTOSDemo/freertos_tickless.c index 4df879f5538..479357de999 100644 --- a/Examples/MAX32650/FreeRTOSDemo/freertos_tickless.c +++ b/Examples/MAX32650/FreeRTOSDemo/freertos_tickless.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/FreeRTOSDemo/main.c b/Examples/MAX32650/FreeRTOSDemo/main.c index d5812c85dce..b97b190d164 100644 --- a/Examples/MAX32650/FreeRTOSDemo/main.c +++ b/Examples/MAX32650/FreeRTOSDemo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/FreeRTOSDemo/project.mk b/Examples/MAX32650/FreeRTOSDemo/project.mk index 62f2c02d16a..b4a51ec3afa 100644 --- a/Examples/MAX32650/FreeRTOSDemo/project.mk +++ b/Examples/MAX32650/FreeRTOSDemo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/GPIO/.vscode/README.md b/Examples/MAX32650/GPIO/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/GPIO/.vscode/README.md +++ b/Examples/MAX32650/GPIO/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/GPIO/.vscode/settings.json b/Examples/MAX32650/GPIO/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/GPIO/.vscode/settings.json +++ b/Examples/MAX32650/GPIO/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/GPIO/Makefile b/Examples/MAX32650/GPIO/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/GPIO/Makefile +++ b/Examples/MAX32650/GPIO/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/GPIO/main.c b/Examples/MAX32650/GPIO/main.c index da7772209d8..f35fbaeb67a 100644 --- a/Examples/MAX32650/GPIO/main.c +++ b/Examples/MAX32650/GPIO/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/GPIO/project.mk b/Examples/MAX32650/GPIO/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/GPIO/project.mk +++ b/Examples/MAX32650/GPIO/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/HBMC/.vscode/README.md b/Examples/MAX32650/HBMC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/HBMC/.vscode/README.md +++ b/Examples/MAX32650/HBMC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/HBMC/.vscode/settings.json b/Examples/MAX32650/HBMC/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/HBMC/.vscode/settings.json +++ b/Examples/MAX32650/HBMC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/HBMC/Makefile b/Examples/MAX32650/HBMC/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/HBMC/Makefile +++ b/Examples/MAX32650/HBMC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/HBMC/main.c b/Examples/MAX32650/HBMC/main.c index 4d1ce5247e8..44263e14471 100644 --- a/Examples/MAX32650/HBMC/main.c +++ b/Examples/MAX32650/HBMC/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/HBMC/project.mk b/Examples/MAX32650/HBMC/project.mk index 7f690ed7fa1..eaaebda8088 100644 --- a/Examples/MAX32650/HBMC/project.mk +++ b/Examples/MAX32650/HBMC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/HBMC/ramfunc.c b/Examples/MAX32650/HBMC/ramfunc.c index 744e3c6134f..797f0aaac6a 100644 --- a/Examples/MAX32650/HBMC/ramfunc.c +++ b/Examples/MAX32650/HBMC/ramfunc.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/Hello_World/.vscode/README.md b/Examples/MAX32650/Hello_World/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/Hello_World/.vscode/README.md +++ b/Examples/MAX32650/Hello_World/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/Hello_World/.vscode/settings.json b/Examples/MAX32650/Hello_World/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/Hello_World/.vscode/settings.json +++ b/Examples/MAX32650/Hello_World/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/Hello_World/Makefile b/Examples/MAX32650/Hello_World/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/Hello_World/Makefile +++ b/Examples/MAX32650/Hello_World/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/Hello_World/main.c b/Examples/MAX32650/Hello_World/main.c index 46f44da32ae..ce83587e340 100644 --- a/Examples/MAX32650/Hello_World/main.c +++ b/Examples/MAX32650/Hello_World/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/Hello_World/project.mk b/Examples/MAX32650/Hello_World/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/Hello_World/project.mk +++ b/Examples/MAX32650/Hello_World/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/Hello_World_Cpp/.vscode/README.md b/Examples/MAX32650/Hello_World_Cpp/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/Hello_World_Cpp/.vscode/README.md +++ b/Examples/MAX32650/Hello_World_Cpp/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/Hello_World_Cpp/.vscode/settings.json b/Examples/MAX32650/Hello_World_Cpp/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/Hello_World_Cpp/.vscode/settings.json +++ b/Examples/MAX32650/Hello_World_Cpp/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/Hello_World_Cpp/Makefile b/Examples/MAX32650/Hello_World_Cpp/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/Hello_World_Cpp/Makefile +++ b/Examples/MAX32650/Hello_World_Cpp/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/Hello_World_Cpp/main.cpp b/Examples/MAX32650/Hello_World_Cpp/main.cpp index daade0e995d..fdf8363cde1 100644 --- a/Examples/MAX32650/Hello_World_Cpp/main.cpp +++ b/Examples/MAX32650/Hello_World_Cpp/main.cpp @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -66,7 +65,7 @@ class LED { int blink_count; }; -int main() +int main(void) { LED led = LED(0); diff --git a/Examples/MAX32650/Hello_World_Cpp/project.mk b/Examples/MAX32650/Hello_World_Cpp/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX32650/Hello_World_Cpp/project.mk +++ b/Examples/MAX32650/Hello_World_Cpp/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/I2C/.vscode/README.md b/Examples/MAX32650/I2C/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/I2C/.vscode/README.md +++ b/Examples/MAX32650/I2C/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/I2C/.vscode/settings.json b/Examples/MAX32650/I2C/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/I2C/.vscode/settings.json +++ b/Examples/MAX32650/I2C/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/I2C/Makefile b/Examples/MAX32650/I2C/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/I2C/Makefile +++ b/Examples/MAX32650/I2C/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/I2C/main.c b/Examples/MAX32650/I2C/main.c index be1e8acb213..ad74b19e1e1 100644 --- a/Examples/MAX32650/I2C/main.c +++ b/Examples/MAX32650/I2C/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -188,7 +187,7 @@ int verifyData(void) } // ***************************************************************************** -int main() +int main(void) { printf("\n******** I2C Master-Slave Transaction Demo *********\n"); printf("\nThis example uses one I2C peripheral as a master to\n"); diff --git a/Examples/MAX32650/I2C/project.mk b/Examples/MAX32650/I2C/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/I2C/project.mk +++ b/Examples/MAX32650/I2C/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/I2C_MNGR/.vscode/README.md b/Examples/MAX32650/I2C_MNGR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/I2C_MNGR/.vscode/README.md +++ b/Examples/MAX32650/I2C_MNGR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/I2C_MNGR/.vscode/settings.json b/Examples/MAX32650/I2C_MNGR/.vscode/settings.json index 2e78438545e..10386fe58a2 100755 --- a/Examples/MAX32650/I2C_MNGR/.vscode/settings.json +++ b/Examples/MAX32650/I2C_MNGR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/I2C_MNGR/FreeRTOSConfig.h b/Examples/MAX32650/I2C_MNGR/FreeRTOSConfig.h index 8deb874092d..4a93b7b7e8b 100644 --- a/Examples/MAX32650/I2C_MNGR/FreeRTOSConfig.h +++ b/Examples/MAX32650/I2C_MNGR/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/I2C_MNGR/Makefile b/Examples/MAX32650/I2C_MNGR/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/I2C_MNGR/Makefile +++ b/Examples/MAX32650/I2C_MNGR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/I2C_MNGR/i2c_mngr/i2c_mngr.c b/Examples/MAX32650/I2C_MNGR/i2c_mngr/i2c_mngr.c index be717e17a27..811e6a3b4a4 100644 --- a/Examples/MAX32650/I2C_MNGR/i2c_mngr/i2c_mngr.c +++ b/Examples/MAX32650/I2C_MNGR/i2c_mngr/i2c_mngr.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +38,7 @@ typedef struct { static i2c_txn_mngr_t s_mngr; /******************************************************************************/ -int I2C_MNGR_Init() +int I2C_MNGR_Init(void) { s_mngr.inst0 = MXC_I2C0; s_mngr.inst1 = MXC_I2C1; diff --git a/Examples/MAX32650/I2C_MNGR/i2c_mngr/i2c_mngr.h b/Examples/MAX32650/I2C_MNGR/i2c_mngr/i2c_mngr.h index 84ed81c8a74..9a0a2e7c673 100644 --- a/Examples/MAX32650/I2C_MNGR/i2c_mngr/i2c_mngr.h +++ b/Examples/MAX32650/I2C_MNGR/i2c_mngr/i2c_mngr.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +54,7 @@ typedef struct { * @brief Initializes I2C transaction manager * @return #E_NO_ERROR if succeeded, error code otherwise */ -int I2C_MNGR_Init(); +int I2C_MNGR_Init(void); /* * @brief Executes I2C transaction diff --git a/Examples/MAX32650/I2C_MNGR/main.c b/Examples/MAX32650/I2C_MNGR/main.c index 8d77bef27c8..0016b532d65 100644 --- a/Examples/MAX32650/I2C_MNGR/main.c +++ b/Examples/MAX32650/I2C_MNGR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/I2C_MNGR/project.mk b/Examples/MAX32650/I2C_MNGR/project.mk index a37f9f68bb5..3d5cbbe181c 100644 --- a/Examples/MAX32650/I2C_MNGR/project.mk +++ b/Examples/MAX32650/I2C_MNGR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/I2C_SCAN/.vscode/README.md b/Examples/MAX32650/I2C_SCAN/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/I2C_SCAN/.vscode/README.md +++ b/Examples/MAX32650/I2C_SCAN/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/I2C_SCAN/.vscode/settings.json b/Examples/MAX32650/I2C_SCAN/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/I2C_SCAN/.vscode/settings.json +++ b/Examples/MAX32650/I2C_SCAN/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/I2C_SCAN/Makefile b/Examples/MAX32650/I2C_SCAN/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/I2C_SCAN/Makefile +++ b/Examples/MAX32650/I2C_SCAN/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/I2C_SCAN/main.c b/Examples/MAX32650/I2C_SCAN/main.c index 99986f38458..3c561e84c10 100644 --- a/Examples/MAX32650/I2C_SCAN/main.c +++ b/Examples/MAX32650/I2C_SCAN/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -44,7 +43,7 @@ /***** Globals *****/ // ***************************************************************************** -int main() +int main(void) { int error; uint8_t counter = 0; diff --git a/Examples/MAX32650/I2C_SCAN/project.mk b/Examples/MAX32650/I2C_SCAN/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/I2C_SCAN/project.mk +++ b/Examples/MAX32650/I2C_SCAN/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/I2C_Sensor/.vscode/README.md b/Examples/MAX32650/I2C_Sensor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/I2C_Sensor/.vscode/README.md +++ b/Examples/MAX32650/I2C_Sensor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/I2C_Sensor/.vscode/settings.json b/Examples/MAX32650/I2C_Sensor/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/I2C_Sensor/.vscode/settings.json +++ b/Examples/MAX32650/I2C_Sensor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/I2C_Sensor/Makefile b/Examples/MAX32650/I2C_Sensor/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/I2C_Sensor/Makefile +++ b/Examples/MAX32650/I2C_Sensor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/I2C_Sensor/main.c b/Examples/MAX32650/I2C_Sensor/main.c index 59cef950d03..51131833f6a 100644 --- a/Examples/MAX32650/I2C_Sensor/main.c +++ b/Examples/MAX32650/I2C_Sensor/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/I2C_Sensor/project.mk b/Examples/MAX32650/I2C_Sensor/project.mk index 97f8dbbdc4b..dd7f653bf8c 100644 --- a/Examples/MAX32650/I2C_Sensor/project.mk +++ b/Examples/MAX32650/I2C_Sensor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/I2S/.vscode/README.md b/Examples/MAX32650/I2S/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/I2S/.vscode/README.md +++ b/Examples/MAX32650/I2S/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/I2S/.vscode/settings.json b/Examples/MAX32650/I2S/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/I2S/.vscode/settings.json +++ b/Examples/MAX32650/I2S/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/I2S/Makefile b/Examples/MAX32650/I2S/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/I2S/Makefile +++ b/Examples/MAX32650/I2S/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/I2S/main.c b/Examples/MAX32650/I2S/main.c index 82e1ab8949e..4026046e151 100644 --- a/Examples/MAX32650/I2S/main.c +++ b/Examples/MAX32650/I2S/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -63,7 +62,7 @@ void dma_ctz_cb(int ch, int err) } /*****************************************************************/ -int main() +int main(void) { int err; diff --git a/Examples/MAX32650/I2S/project.mk b/Examples/MAX32650/I2S/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/I2S/project.mk +++ b/Examples/MAX32650/I2S/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/ICC/.vscode/README.md b/Examples/MAX32650/ICC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/ICC/.vscode/README.md +++ b/Examples/MAX32650/ICC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/ICC/.vscode/settings.json b/Examples/MAX32650/ICC/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/ICC/.vscode/settings.json +++ b/Examples/MAX32650/ICC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/ICC/Makefile b/Examples/MAX32650/ICC/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/ICC/Makefile +++ b/Examples/MAX32650/ICC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/ICC/main.c b/Examples/MAX32650/ICC/main.c index 5d00e79ad2a..4df72e85af2 100644 --- a/Examples/MAX32650/ICC/main.c +++ b/Examples/MAX32650/ICC/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/ICC/project.mk b/Examples/MAX32650/ICC/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/ICC/project.mk +++ b/Examples/MAX32650/ICC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/LP/.vscode/README.md b/Examples/MAX32650/LP/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/LP/.vscode/README.md +++ b/Examples/MAX32650/LP/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/LP/.vscode/settings.json b/Examples/MAX32650/LP/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/LP/.vscode/settings.json +++ b/Examples/MAX32650/LP/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/LP/Makefile b/Examples/MAX32650/LP/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/LP/Makefile +++ b/Examples/MAX32650/LP/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/LP/lp-nonsecure.ld b/Examples/MAX32650/LP/lp-nonsecure.ld index d8f158daca0..44ae099d391 100644 --- a/Examples/MAX32650/LP/lp-nonsecure.ld +++ b/Examples/MAX32650/LP/lp-nonsecure.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/LP/lp-sla.ld b/Examples/MAX32650/LP/lp-sla.ld index ca34d4f6200..30702b22d32 100644 --- a/Examples/MAX32650/LP/lp-sla.ld +++ b/Examples/MAX32650/LP/lp-sla.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/LP/main.c b/Examples/MAX32650/LP/main.c index 5fd7ceb5769..62f8856cccc 100644 --- a/Examples/MAX32650/LP/main.c +++ b/Examples/MAX32650/LP/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/LP/project.mk b/Examples/MAX32650/LP/project.mk index 793ed5777df..c4c5ef6aaa3 100644 --- a/Examples/MAX32650/LP/project.mk +++ b/Examples/MAX32650/LP/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/Library_Generate/.vscode/README.md b/Examples/MAX32650/Library_Generate/.vscode/README.md index e2e9a1a6522..a740741c3ab 100644 --- a/Examples/MAX32650/Library_Generate/.vscode/README.md +++ b/Examples/MAX32650/Library_Generate/.vscode/README.md @@ -7,11 +7,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) * If it's not in the README, check the UG. * If it's not in the UG, open a ticket! -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -38,7 +38,7 @@ The steps below are also available in video form in "Understanding Artificial In 2. Run the installer executable, and ensure that "Visual Studio Code Support" is enabled for your installation. - ![Selected Components](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/installer_components.JPG) + ![Selected Components](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/installer_components.JPG) 3. Finish the MSDK installation, taking note of where the MSDK was installed. @@ -54,7 +54,7 @@ The steps below are also available in video form in "Understanding Artificial In 9. Type "open settings json" and select the "Preferences: Open Settings (JSON)" option (_not_ the "Preferences: Open _Default_ Settings (JSON)"). This will open your user settings.json file in VS Code's editor. - ![Open Settings JSON Command](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/open_settings_json.jpg) + ![Open Settings JSON Command](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/open_settings_json.jpg) 10. Add the entries below into your user settings.json file. @@ -82,7 +82,7 @@ This section covers basic usage of the VSCode-Maxim project files. For document Visual Studio Code is built around a "working directory" paradigm. The editor is always rooted in a working directory, and the main mechanism for changing that directory is `File -> Open Folder...`. -![File -> Open Folder](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/file_openfolder.JPG) +![File -> Open Folder](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/file_openfolder.JPG) As a result, you'll notice that there is no "New Project" mechanism. A "project" in VS Code is simply a folder. It will look inside of the opened folder for a `.vscode` _sub_-folder to load project-specific settings from. @@ -90,11 +90,11 @@ A project that is configured for VS Code will have, at minimum, a .vscode sub-fo Ex: -![Example Directory Contents](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/opening_projects_2.jpg) +![Example Directory Contents](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/opening_projects_2.jpg) ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MSDK installation. @@ -102,7 +102,7 @@ Additionally, empty project templates and a drag-and-drop folder for "injecting" Once a project is opened 4 available build tasks will become available via `Terminal > Run Build task...` or the shortcut `Ctrl+Shift+B`. These tasks are configured by the `.vscode/task.json` file. -![Build Tasks Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/buildtasks.JPG) +![Build Tasks Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/buildtasks.JPG) #### Build @@ -138,7 +138,7 @@ Once a project is opened 4 available build tasks will become available via `Term ### Debugging -![Debug Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger.JPG) +![Debug Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger.JPG) Debugging is enabled by Visual Studio Code's integrated debugger. Launch configurations can be found in the `.vscode/launch.json` file. @@ -162,11 +162,11 @@ In general, the MAX-series microcontrollers have the following debugger limitati 3. Launch the debugger with `Run > Start Debugging`, with the shortcut `F5`, or via the `Run and Debug` window (Ctrl + Shift + D) and the green "launch" arrow. - ![Debug Tab](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_window.JPG) + ![Debug Tab](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_window.JPG) 4. The debugger will launch a GDB client & OpenOCD server, reset the microcontroller, and should break on entry into `main`. - ![Debugger Break on Main](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_breakmain.JPG) + ![Debugger Break on Main](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_breakmain.JPG) #### Using the Debugger @@ -174,13 +174,13 @@ In general, the MAX-series microcontrollers have the following debugger limitati The main interface for the debugger is the debugger control bar: -![Debugger Control Bar Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_bar.JPG) +![Debugger Control Bar Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_bar.JPG) `Continue | Step Over | Step Into | Step Out | Restart | Stop` Breakpoints can be set by clicking in the space next to the line number in a source code file. A red dot indicates a line to break on. Breakpoints can be removed by clicking on them again. Ex: -![Breakpoint](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/breakpoint.JPG) +![Breakpoint](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/breakpoint.JPG) ## Project Configuration @@ -190,7 +190,7 @@ Breakpoints can be set by clicking in the space next to the line number in a sou **When a change is made to this file, VS Code should be reloaded with CTRL+SHIFT+P -> Reload Window (or alternatively restarted completely) to force a re-parse.** -![Reload Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/reload_window.JPG) +![Reload Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/reload_window.JPG) The default project configuration should work for most use cases as long as `"target"` and `"board"` are set correctly. @@ -227,7 +227,7 @@ The following configuration options are available: * ... can be found in the `Libraries/Boards` folder of the MSDK * For example, the supported options for the MAX78000 are `"EvKit_V1"`, `"FTHR_RevA"`, and `"MAXREFDES178"`. - ![MAX78000 Boards](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/78000_boards.JPG) + ![MAX78000 Boards](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/78000_boards.JPG) ### Advanced Config Options @@ -353,7 +353,7 @@ A project's build system is managed by two files found in the project's root dir * `Makefile` * `project.mk` -![Files are located in the root directory](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) +![Files are located in the root directory](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) When the command... @@ -416,7 +416,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the @@ -540,7 +540,7 @@ If you want to start from scratch, take this option. ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/Library_Generate/Makefile b/Examples/MAX32650/Library_Generate/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/Library_Generate/Makefile +++ b/Examples/MAX32650/Library_Generate/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/Library_Generate/gpiolib.c b/Examples/MAX32650/Library_Generate/gpiolib.c index 5c8845edc78..252f6df4c44 100644 --- a/Examples/MAX32650/Library_Generate/gpiolib.c +++ b/Examples/MAX32650/Library_Generate/gpiolib.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/Library_Generate/gpiolib.h b/Examples/MAX32650/Library_Generate/gpiolib.h index 6d11c9b39b8..e4432209c5c 100644 --- a/Examples/MAX32650/Library_Generate/gpiolib.h +++ b/Examples/MAX32650/Library_Generate/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/Library_Generate/project.mk b/Examples/MAX32650/Library_Generate/project.mk index 01dcd9fbb2a..b5729be6ef0 100644 --- a/Examples/MAX32650/Library_Generate/project.mk +++ b/Examples/MAX32650/Library_Generate/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/Library_Use/.vscode/README.md b/Examples/MAX32650/Library_Use/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/Library_Use/.vscode/README.md +++ b/Examples/MAX32650/Library_Use/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/Library_Use/.vscode/settings.json b/Examples/MAX32650/Library_Use/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/Library_Use/.vscode/settings.json +++ b/Examples/MAX32650/Library_Use/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/Library_Use/Makefile b/Examples/MAX32650/Library_Use/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/Library_Use/Makefile +++ b/Examples/MAX32650/Library_Use/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/Library_Use/lib/include/gpiolib.h b/Examples/MAX32650/Library_Use/lib/include/gpiolib.h index 76ee52397e6..6bf79e62202 100644 --- a/Examples/MAX32650/Library_Use/lib/include/gpiolib.h +++ b/Examples/MAX32650/Library_Use/lib/include/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/Library_Use/main.c b/Examples/MAX32650/Library_Use/main.c index a9c20ec444f..c686476d185 100644 --- a/Examples/MAX32650/Library_Use/main.c +++ b/Examples/MAX32650/Library_Use/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/Library_Use/project.mk b/Examples/MAX32650/Library_Use/project.mk index 84dbf8cdff6..a5a1e200902 100644 --- a/Examples/MAX32650/Library_Use/project.mk +++ b/Examples/MAX32650/Library_Use/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/MAA/.vscode/README.md b/Examples/MAX32650/MAA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/MAA/.vscode/README.md +++ b/Examples/MAX32650/MAA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/MAA/.vscode/settings.json b/Examples/MAX32650/MAA/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/MAA/.vscode/settings.json +++ b/Examples/MAX32650/MAA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/MAA/Makefile b/Examples/MAX32650/MAA/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/MAA/Makefile +++ b/Examples/MAX32650/MAA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/MAA/main.c b/Examples/MAX32650/MAA/main.c index 68a1b5e1157..c132eb3063b 100644 --- a/Examples/MAX32650/MAA/main.c +++ b/Examples/MAX32650/MAA/main.c @@ -5,10 +5,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/MAA/project.mk b/Examples/MAX32650/MAA/project.mk index 682d322e09c..201abc082b8 100644 --- a/Examples/MAX32650/MAA/project.mk +++ b/Examples/MAX32650/MAA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/OTP_Dump/.vscode/README.md b/Examples/MAX32650/OTP_Dump/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/OTP_Dump/.vscode/README.md +++ b/Examples/MAX32650/OTP_Dump/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/OTP_Dump/.vscode/settings.json b/Examples/MAX32650/OTP_Dump/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/OTP_Dump/.vscode/settings.json +++ b/Examples/MAX32650/OTP_Dump/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/OTP_Dump/Makefile b/Examples/MAX32650/OTP_Dump/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/OTP_Dump/Makefile +++ b/Examples/MAX32650/OTP_Dump/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/OTP_Dump/main.c b/Examples/MAX32650/OTP_Dump/main.c index 969ffadc4be..a6aff33c053 100644 --- a/Examples/MAX32650/OTP_Dump/main.c +++ b/Examples/MAX32650/OTP_Dump/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/OTP_Dump/project.mk b/Examples/MAX32650/OTP_Dump/project.mk index 9b63c610cc1..0a3e9519450 100644 --- a/Examples/MAX32650/OTP_Dump/project.mk +++ b/Examples/MAX32650/OTP_Dump/project.mk @@ -1,9 +1,26 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_APPS_A # ^ For example, you can uncomment this line to make the diff --git a/Examples/MAX32650/OWM/.vscode/README.md b/Examples/MAX32650/OWM/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/OWM/.vscode/README.md +++ b/Examples/MAX32650/OWM/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/OWM/.vscode/settings.json b/Examples/MAX32650/OWM/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/OWM/.vscode/settings.json +++ b/Examples/MAX32650/OWM/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/OWM/Makefile b/Examples/MAX32650/OWM/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/OWM/Makefile +++ b/Examples/MAX32650/OWM/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/OWM/main.c b/Examples/MAX32650/OWM/main.c index 5b564558589..e94c25127d9 100644 --- a/Examples/MAX32650/OWM/main.c +++ b/Examples/MAX32650/OWM/main.c @@ -5,10 +5,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/OWM/project.mk b/Examples/MAX32650/OWM/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/OWM/project.mk +++ b/Examples/MAX32650/OWM/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/Pulse_Train/.vscode/README.md b/Examples/MAX32650/Pulse_Train/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/Pulse_Train/.vscode/README.md +++ b/Examples/MAX32650/Pulse_Train/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/Pulse_Train/.vscode/settings.json b/Examples/MAX32650/Pulse_Train/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/Pulse_Train/.vscode/settings.json +++ b/Examples/MAX32650/Pulse_Train/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/Pulse_Train/Makefile b/Examples/MAX32650/Pulse_Train/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/Pulse_Train/Makefile +++ b/Examples/MAX32650/Pulse_Train/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/Pulse_Train/main.c b/Examples/MAX32650/Pulse_Train/main.c index 60049d17b0a..8fb5cffe285 100644 --- a/Examples/MAX32650/Pulse_Train/main.c +++ b/Examples/MAX32650/Pulse_Train/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -45,7 +44,7 @@ /***** Functions *****/ // ***************************************************************************** -static void PB_Start_Stop_handler() +static void PB_Start_Stop_handler(void) { uint32_t enablePTMask; for (int i = 0; i < 20000; i++) {} diff --git a/Examples/MAX32650/Pulse_Train/project.mk b/Examples/MAX32650/Pulse_Train/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/Pulse_Train/project.mk +++ b/Examples/MAX32650/Pulse_Train/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/RTC/.vscode/README.md b/Examples/MAX32650/RTC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/RTC/.vscode/README.md +++ b/Examples/MAX32650/RTC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/RTC/.vscode/settings.json b/Examples/MAX32650/RTC/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/RTC/.vscode/settings.json +++ b/Examples/MAX32650/RTC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/RTC/Makefile b/Examples/MAX32650/RTC/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/RTC/Makefile +++ b/Examples/MAX32650/RTC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/RTC/main.c b/Examples/MAX32650/RTC/main.c index 32a712b32df..63cb94d9d95 100644 --- a/Examples/MAX32650/RTC/main.c +++ b/Examples/MAX32650/RTC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -107,12 +106,12 @@ void RTC_IRQHandler(void) } volatile int buttonPressed = 0; -void buttonHandler() +void buttonHandler(void) { buttonPressed = 1; } -void printTime() +void printTime(void) { int day, hr, min, err; uint32_t sec, rtc_readout; diff --git a/Examples/MAX32650/RTC/project.mk b/Examples/MAX32650/RTC/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/RTC/project.mk +++ b/Examples/MAX32650/RTC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/RTC_Backup/.vscode/README.md b/Examples/MAX32650/RTC_Backup/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/RTC_Backup/.vscode/README.md +++ b/Examples/MAX32650/RTC_Backup/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/RTC_Backup/.vscode/settings.json b/Examples/MAX32650/RTC_Backup/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/RTC_Backup/.vscode/settings.json +++ b/Examples/MAX32650/RTC_Backup/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/RTC_Backup/Makefile b/Examples/MAX32650/RTC_Backup/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/RTC_Backup/Makefile +++ b/Examples/MAX32650/RTC_Backup/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/RTC_Backup/main.c b/Examples/MAX32650/RTC_Backup/main.c index 89026c58ba7..e8ab015c140 100644 --- a/Examples/MAX32650/RTC_Backup/main.c +++ b/Examples/MAX32650/RTC_Backup/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -61,7 +60,7 @@ void RTC_IRQHandler(void) {} // ***************************************************************************** -void rescheduleAlarm() +void rescheduleAlarm(void) { uint32_t time; int flags = MXC_RTC_GetFlags(); @@ -87,7 +86,7 @@ void rescheduleAlarm() } // ***************************************************************************** -void printTime() +void printTime(void) { int day, hr, min; uint32_t sec; @@ -108,7 +107,7 @@ void printTime() } // ***************************************************************************** -int configureRTC() +int configureRTC(void) { printf("\n\n***************** RTC Wake from Backup Example *****************\n\n"); printf("The time-of-day alarm is set to wake the device every %d seconds.\n", TIME_OF_DAY_SEC); diff --git a/Examples/MAX32650/RTC_Backup/project.mk b/Examples/MAX32650/RTC_Backup/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/RTC_Backup/project.mk +++ b/Examples/MAX32650/RTC_Backup/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/SCPA_OTP_Dump/.vscode/README.md b/Examples/MAX32650/SCPA_OTP_Dump/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/SCPA_OTP_Dump/.vscode/README.md +++ b/Examples/MAX32650/SCPA_OTP_Dump/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/SCPA_OTP_Dump/.vscode/settings.json b/Examples/MAX32650/SCPA_OTP_Dump/.vscode/settings.json index 0e32b55f8a0..5355a763017 100755 --- a/Examples/MAX32650/SCPA_OTP_Dump/.vscode/settings.json +++ b/Examples/MAX32650/SCPA_OTP_Dump/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/SCPA_OTP_Dump/Makefile b/Examples/MAX32650/SCPA_OTP_Dump/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/SCPA_OTP_Dump/Makefile +++ b/Examples/MAX32650/SCPA_OTP_Dump/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/SCPA_OTP_Dump/README.md b/Examples/MAX32650/SCPA_OTP_Dump/README.md index 124bc26fd16..ea8bb529371 100644 --- a/Examples/MAX32650/SCPA_OTP_Dump/README.md +++ b/Examples/MAX32650/SCPA_OTP_Dump/README.md @@ -15,16 +15,19 @@ PROJ_CFLAGS+=-DMAX32651_A1 3. Send SCP Packages to device with scp_sender or SBT GUI tool
Please check: https://pdfserv.maximintegrated.com/en/an/ug7637-secure-boot-tools.pdf
- ## Software ### Project Usage -Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. +Universal instructions on building this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +NOTE: This SCP Applet example project cannot be flashed and debugged like a regular example. It must be sent to the ROM bootloader using the SCP protocol. The MSDK offers Secure Bootloader Tools (SBT) in the `Tools/SBT` folder, and the `send_scp` utility is used to send the SCP packets to the device. + +See the [Secure Boot Tools User Guide](https://pdfserv.maximintegrated.com/en/an/ug7637-secure-boot-tools.pdf) for additional documentation. ### Project-Specific Build Notes -(None - this project builds as a standard example) +This project targets `scpa` builds by default (see [project.mk](project.mk)), which generates SCP packets for the application in the `build/scp_packets` folder. ## Required Connections @@ -32,9 +35,9 @@ Universal instructions on building, flashing, and debugging this project can be - Open a console (Powershell or bash) then send scp packages to device. ## Expected Output - ` - send_scp -c -i UART -s scp_packets\packet.list" - ` +``` +$ send_scp -c -i UART -s build/scp_packets/packet.list + [==================================================== ] 73% @@ -111,3 +114,4 @@ Please wait, reading data...
Disconnected !
SCP session OK
+``` \ No newline at end of file diff --git a/Examples/MAX32650/SCPA_OTP_Dump/main.c b/Examples/MAX32650/SCPA_OTP_Dump/main.c index 9f73ed28324..24b7d58617b 100644 --- a/Examples/MAX32650/SCPA_OTP_Dump/main.c +++ b/Examples/MAX32650/SCPA_OTP_Dump/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/SCPA_OTP_Dump/project.mk b/Examples/MAX32650/SCPA_OTP_Dump/project.mk index 5692908545d..39bfebb53f4 100644 --- a/Examples/MAX32650/SCPA_OTP_Dump/project.mk +++ b/Examples/MAX32650/SCPA_OTP_Dump/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/SCPA_OTP_Dump/utils.c b/Examples/MAX32650/SCPA_OTP_Dump/utils.c index ae02a263b80..63e6ae19fbf 100644 --- a/Examples/MAX32650/SCPA_OTP_Dump/utils.c +++ b/Examples/MAX32650/SCPA_OTP_Dump/utils.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/SCPA_OTP_Dump/utils.h b/Examples/MAX32650/SCPA_OTP_Dump/utils.h index 680d86f95a4..108b5d5530d 100644 --- a/Examples/MAX32650/SCPA_OTP_Dump/utils.h +++ b/Examples/MAX32650/SCPA_OTP_Dump/utils.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/SDHC_FAT/.vscode/README.md b/Examples/MAX32650/SDHC_FAT/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/SDHC_FAT/.vscode/README.md +++ b/Examples/MAX32650/SDHC_FAT/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/SDHC_FAT/.vscode/settings.json b/Examples/MAX32650/SDHC_FAT/.vscode/settings.json index 9178d253907..67d0c664d9d 100755 --- a/Examples/MAX32650/SDHC_FAT/.vscode/settings.json +++ b/Examples/MAX32650/SDHC_FAT/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/SDHC_FAT/Makefile b/Examples/MAX32650/SDHC_FAT/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/SDHC_FAT/Makefile +++ b/Examples/MAX32650/SDHC_FAT/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/SDHC_FAT/include/sdhc_example.h b/Examples/MAX32650/SDHC_FAT/include/sdhc_example.h index 60c85214c69..ec1e70e3bec 100644 --- a/Examples/MAX32650/SDHC_FAT/include/sdhc_example.h +++ b/Examples/MAX32650/SDHC_FAT/include/sdhc_example.h @@ -38,15 +38,15 @@ int sdhc_init(void); void generateMessage(unsigned length); -int mount(); +int mount(void); -int umount(); +int umount(void); -int formatSDHC(); +int formatSDHC(void); -int getSize(); +int getSize(void); -int ls(); +int ls(void); int createFile(char *file_name, unsigned int length); @@ -58,8 +58,8 @@ int cd(char *dir_name); int deleteFile(char *file_name); -int example(); +int example(void); -void waitCardInserted(); +void waitCardInserted(void); #endif // EXAMPLES_MAX32650_SDHC_FAT_INCLUDE_SDHC_EXAMPLE_H_ diff --git a/Examples/MAX32650/SDHC_FAT/main.c b/Examples/MAX32650/SDHC_FAT/main.c index eeba6b66b4f..0684729f7b6 100644 --- a/Examples/MAX32650/SDHC_FAT/main.c +++ b/Examples/MAX32650/SDHC_FAT/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/SDHC_FAT/project.mk b/Examples/MAX32650/SDHC_FAT/project.mk index 12e82a57a81..1bdb12b72b1 100644 --- a/Examples/MAX32650/SDHC_FAT/project.mk +++ b/Examples/MAX32650/SDHC_FAT/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/SDHC_FAT/src/sdhc_example.c b/Examples/MAX32650/SDHC_FAT/src/sdhc_example.c index 86fb7ad91e0..fa1b5d6ea0b 100644 --- a/Examples/MAX32650/SDHC_FAT/src/sdhc_example.c +++ b/Examples/MAX32650/SDHC_FAT/src/sdhc_example.c @@ -133,7 +133,7 @@ void generateMessage(unsigned length) } // ****************************************************************************** -int mount() +int mount(void) { fs = &fs_obj; if ((err = f_mount(fs, "", 1)) != FR_OK) { //Mount the default drive to fs now @@ -150,7 +150,7 @@ int mount() } // ****************************************************************************** -int umount() +int umount(void) { if ((err = f_mount(NULL, "", 0)) != FR_OK) { //Unmount the default drive from its mount point printf("Error unmounting volume: %s\n", FF_ERRORS[err]); @@ -163,7 +163,7 @@ int umount() } // ****************************************************************************** -int formatSDHC() +int formatSDHC(void) { printf("\n\n*****THE DRIVE WILL BE FORMATTED IN 5 SECONDS*****\n"); printf("**************PRESS ANY KEY TO ABORT**************\n\n"); @@ -197,7 +197,7 @@ int formatSDHC() } // ****************************************************************************** -int getSize() +int getSize(void) { if (!mounted) { mount(); @@ -218,7 +218,7 @@ int getSize() } // ****************************************************************************** -int ls() +int ls(void) { if (!mounted) { mount(); @@ -414,7 +414,7 @@ int deleteFile(char *file_name) } // ****************************************************************************** -int example() +int example(void) { unsigned int length = 256; diff --git a/Examples/MAX32650/SDHC_Raw/.vscode/README.md b/Examples/MAX32650/SDHC_Raw/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/SDHC_Raw/.vscode/README.md +++ b/Examples/MAX32650/SDHC_Raw/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/SDHC_Raw/.vscode/settings.json b/Examples/MAX32650/SDHC_Raw/.vscode/settings.json index cee33d480e8..1ba3205e8e0 100755 --- a/Examples/MAX32650/SDHC_Raw/.vscode/settings.json +++ b/Examples/MAX32650/SDHC_Raw/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/SDHC_Raw/Makefile b/Examples/MAX32650/SDHC_Raw/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/SDHC_Raw/Makefile +++ b/Examples/MAX32650/SDHC_Raw/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/SDHC_Raw/main.c b/Examples/MAX32650/SDHC_Raw/main.c index f6cd71d3cd2..8fde63d6645 100644 --- a/Examples/MAX32650/SDHC_Raw/main.c +++ b/Examples/MAX32650/SDHC_Raw/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/SDHC_Raw/project.mk b/Examples/MAX32650/SDHC_Raw/project.mk index 2f4fa9e82eb..09d00430002 100644 --- a/Examples/MAX32650/SDHC_Raw/project.mk +++ b/Examples/MAX32650/SDHC_Raw/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/SPI/.vscode/README.md b/Examples/MAX32650/SPI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/SPI/.vscode/README.md +++ b/Examples/MAX32650/SPI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/SPI/.vscode/settings.json b/Examples/MAX32650/SPI/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/SPI/.vscode/settings.json +++ b/Examples/MAX32650/SPI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/SPI/Makefile b/Examples/MAX32650/SPI/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/SPI/Makefile +++ b/Examples/MAX32650/SPI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/SPI/main.c b/Examples/MAX32650/SPI/main.c index ca3f0d5d843..407fe03f239 100644 --- a/Examples/MAX32650/SPI/main.c +++ b/Examples/MAX32650/SPI/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/SPI/project.mk b/Examples/MAX32650/SPI/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/SPI/project.mk +++ b/Examples/MAX32650/SPI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/SPIMSS/.vscode/README.md b/Examples/MAX32650/SPIMSS/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/SPIMSS/.vscode/README.md +++ b/Examples/MAX32650/SPIMSS/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/SPIMSS/.vscode/settings.json b/Examples/MAX32650/SPIMSS/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/SPIMSS/.vscode/settings.json +++ b/Examples/MAX32650/SPIMSS/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/SPIMSS/Makefile b/Examples/MAX32650/SPIMSS/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/SPIMSS/Makefile +++ b/Examples/MAX32650/SPIMSS/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/SPIMSS/main.c b/Examples/MAX32650/SPIMSS/main.c index db127cc4dad..2dd31158642 100644 --- a/Examples/MAX32650/SPIMSS/main.c +++ b/Examples/MAX32650/SPIMSS/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/SPIMSS/project.mk b/Examples/MAX32650/SPIMSS/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/SPIMSS/project.mk +++ b/Examples/MAX32650/SPIMSS/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/SPIXF/.vscode/README.md b/Examples/MAX32650/SPIXF/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/SPIXF/.vscode/README.md +++ b/Examples/MAX32650/SPIXF/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/SPIXF/.vscode/settings.json b/Examples/MAX32650/SPIXF/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/SPIXF/.vscode/settings.json +++ b/Examples/MAX32650/SPIXF/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/SPIXF/Makefile b/Examples/MAX32650/SPIXF/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/SPIXF/Makefile +++ b/Examples/MAX32650/SPIXF/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/SPIXF/main.c b/Examples/MAX32650/SPIXF/main.c index fe907e9913e..d28aeece645 100644 --- a/Examples/MAX32650/SPIXF/main.c +++ b/Examples/MAX32650/SPIXF/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -62,7 +61,7 @@ uint8_t *__xip_addr; #endif /******************************************************************************/ -void spixf_cfg_setup() +void spixf_cfg_setup(void) { // Disable the SPIXFC before setting the SPIXF MXC_SPIXF_Disable(); diff --git a/Examples/MAX32650/SPIXF/project.mk b/Examples/MAX32650/SPIXF/project.mk index a1168a4745c..eb0b26f3b97 100644 --- a/Examples/MAX32650/SPIXF/project.mk +++ b/Examples/MAX32650/SPIXF/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/SPIXF/ramfunc.c b/Examples/MAX32650/SPIXF/ramfunc.c index 839c1e77364..5ca2ce5ac9a 100644 --- a/Examples/MAX32650/SPIXF/ramfunc.c +++ b/Examples/MAX32650/SPIXF/ramfunc.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/SPIXF_ICC/.vscode/README.md b/Examples/MAX32650/SPIXF_ICC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/SPIXF_ICC/.vscode/README.md +++ b/Examples/MAX32650/SPIXF_ICC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/SPIXF_ICC/.vscode/settings.json b/Examples/MAX32650/SPIXF_ICC/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/SPIXF_ICC/.vscode/settings.json +++ b/Examples/MAX32650/SPIXF_ICC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/SPIXF_ICC/Makefile b/Examples/MAX32650/SPIXF_ICC/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/SPIXF_ICC/Makefile +++ b/Examples/MAX32650/SPIXF_ICC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/SPIXF_ICC/main.c b/Examples/MAX32650/SPIXF_ICC/main.c index 96434006aef..2eab0eb2622 100644 --- a/Examples/MAX32650/SPIXF_ICC/main.c +++ b/Examples/MAX32650/SPIXF_ICC/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -81,7 +80,7 @@ __attribute__((section(".xip_section"))) void icc_test_func(void) } /******************************************************************************/ -void spixf_cfg_setup() +void spixf_cfg_setup(void) { // Disable the SPIXFC before setting the SPIXF MXC_SPIXF_Disable(); diff --git a/Examples/MAX32650/SPIXF_ICC/project.mk b/Examples/MAX32650/SPIXF_ICC/project.mk index a1168a4745c..eb0b26f3b97 100644 --- a/Examples/MAX32650/SPIXF_ICC/project.mk +++ b/Examples/MAX32650/SPIXF_ICC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/SPIXR/.vscode/README.md b/Examples/MAX32650/SPIXR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/SPIXR/.vscode/README.md +++ b/Examples/MAX32650/SPIXR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/SPIXR/.vscode/settings.json b/Examples/MAX32650/SPIXR/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/SPIXR/.vscode/settings.json +++ b/Examples/MAX32650/SPIXR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/SPIXR/Makefile b/Examples/MAX32650/SPIXR/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/SPIXR/Makefile +++ b/Examples/MAX32650/SPIXR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/SPIXR/main.c b/Examples/MAX32650/SPIXR/main.c index 31ea5769adf..e17ee550db3 100644 --- a/Examples/MAX32650/SPIXR/main.c +++ b/Examples/MAX32650/SPIXR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/SPIXR/project.mk b/Examples/MAX32650/SPIXR/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/SPIXR/project.mk +++ b/Examples/MAX32650/SPIXR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/SPI_MasterSlave/.vscode/README.md b/Examples/MAX32650/SPI_MasterSlave/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/SPI_MasterSlave/.vscode/README.md +++ b/Examples/MAX32650/SPI_MasterSlave/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/SPI_MasterSlave/.vscode/settings.json b/Examples/MAX32650/SPI_MasterSlave/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/SPI_MasterSlave/.vscode/settings.json +++ b/Examples/MAX32650/SPI_MasterSlave/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/SPI_MasterSlave/Makefile b/Examples/MAX32650/SPI_MasterSlave/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/SPI_MasterSlave/Makefile +++ b/Examples/MAX32650/SPI_MasterSlave/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/SPI_MasterSlave/main.c b/Examples/MAX32650/SPI_MasterSlave/main.c index 6e22b371d59..0d84bfe6e52 100644 --- a/Examples/MAX32650/SPI_MasterSlave/main.c +++ b/Examples/MAX32650/SPI_MasterSlave/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/SPI_MasterSlave/project.mk b/Examples/MAX32650/SPI_MasterSlave/project.mk index f997ec695dc..6b14abca23d 100644 --- a/Examples/MAX32650/SPI_MasterSlave/project.mk +++ b/Examples/MAX32650/SPI_MasterSlave/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/Semaphore/.vscode/README.md b/Examples/MAX32650/Semaphore/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/Semaphore/.vscode/README.md +++ b/Examples/MAX32650/Semaphore/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/Semaphore/.vscode/settings.json b/Examples/MAX32650/Semaphore/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/Semaphore/.vscode/settings.json +++ b/Examples/MAX32650/Semaphore/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/Semaphore/Makefile b/Examples/MAX32650/Semaphore/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/Semaphore/Makefile +++ b/Examples/MAX32650/Semaphore/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/Semaphore/main.c b/Examples/MAX32650/Semaphore/main.c index f3c2e040ad8..f8ae96172df 100644 --- a/Examples/MAX32650/Semaphore/main.c +++ b/Examples/MAX32650/Semaphore/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/Semaphore/project.mk b/Examples/MAX32650/Semaphore/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/Semaphore/project.mk +++ b/Examples/MAX32650/Semaphore/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/SysTick/.vscode/README.md b/Examples/MAX32650/SysTick/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/SysTick/.vscode/README.md +++ b/Examples/MAX32650/SysTick/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/SysTick/.vscode/settings.json b/Examples/MAX32650/SysTick/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/SysTick/.vscode/settings.json +++ b/Examples/MAX32650/SysTick/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/SysTick/Makefile b/Examples/MAX32650/SysTick/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/SysTick/Makefile +++ b/Examples/MAX32650/SysTick/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/SysTick/main.c b/Examples/MAX32650/SysTick/main.c index ccd150821c1..8d181795061 100644 --- a/Examples/MAX32650/SysTick/main.c +++ b/Examples/MAX32650/SysTick/main.c @@ -5,10 +5,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/SysTick/project.mk b/Examples/MAX32650/SysTick/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/SysTick/project.mk +++ b/Examples/MAX32650/SysTick/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/TMR/.vscode/README.md b/Examples/MAX32650/TMR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/TMR/.vscode/README.md +++ b/Examples/MAX32650/TMR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/TMR/.vscode/settings.json b/Examples/MAX32650/TMR/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/TMR/.vscode/settings.json +++ b/Examples/MAX32650/TMR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/TMR/Makefile b/Examples/MAX32650/TMR/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/TMR/Makefile +++ b/Examples/MAX32650/TMR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/TMR/main.c b/Examples/MAX32650/TMR/main.c index 8964ef5fa0d..4df5f692070 100644 --- a/Examples/MAX32650/TMR/main.c +++ b/Examples/MAX32650/TMR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -71,7 +70,7 @@ /***** Functions *****/ -void PWMTimer() +void PWMTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; // to configure timer @@ -106,14 +105,14 @@ void PWMTimer() } // Toggles GPIO when continuous timer repeats -void ContinuousTimerHandler() +void ContinuousTimerHandler(void) { // Clear interrupt MXC_TMR_ClearFlags(CONT_TIMER); MXC_GPIO_OutToggle(led_pin[0].port, led_pin[0].mask); } -void ContinuousTimer() +void ContinuousTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; @@ -142,14 +141,14 @@ void ContinuousTimer() printf("Continuous timer started.\n\n"); } -void OneshotTimerHandler() +void OneshotTimerHandler(void) { // Clear interrupt MXC_TMR_ClearFlags(OST_TIMER); MXC_GPIO_OutToggle(led_pin[1].port, led_pin[1].mask); } -void OneshotTimer() +void OneshotTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; diff --git a/Examples/MAX32650/TMR/project.mk b/Examples/MAX32650/TMR/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/TMR/project.mk +++ b/Examples/MAX32650/TMR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/TRNG/.vscode/README.md b/Examples/MAX32650/TRNG/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/TRNG/.vscode/README.md +++ b/Examples/MAX32650/TRNG/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/TRNG/.vscode/settings.json b/Examples/MAX32650/TRNG/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/TRNG/.vscode/settings.json +++ b/Examples/MAX32650/TRNG/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/TRNG/Makefile b/Examples/MAX32650/TRNG/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/TRNG/Makefile +++ b/Examples/MAX32650/TRNG/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/TRNG/main.c b/Examples/MAX32650/TRNG/main.c index fbd1786c183..9695ca2022a 100644 --- a/Examples/MAX32650/TRNG/main.c +++ b/Examples/MAX32650/TRNG/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/TRNG/project.mk b/Examples/MAX32650/TRNG/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/TRNG/project.mk +++ b/Examples/MAX32650/TRNG/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/Temp_Monitor/.vscode/README.md b/Examples/MAX32650/Temp_Monitor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/Temp_Monitor/.vscode/README.md +++ b/Examples/MAX32650/Temp_Monitor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/Temp_Monitor/.vscode/settings.json b/Examples/MAX32650/Temp_Monitor/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/Temp_Monitor/.vscode/settings.json +++ b/Examples/MAX32650/Temp_Monitor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/Temp_Monitor/Makefile b/Examples/MAX32650/Temp_Monitor/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/Temp_Monitor/Makefile +++ b/Examples/MAX32650/Temp_Monitor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/Temp_Monitor/main.c b/Examples/MAX32650/Temp_Monitor/main.c index 0fd3444fbcc..cc32e1e5f22 100644 --- a/Examples/MAX32650/Temp_Monitor/main.c +++ b/Examples/MAX32650/Temp_Monitor/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/Temp_Monitor/project.mk b/Examples/MAX32650/Temp_Monitor/project.mk index b7080f266a5..184a709a467 100644 --- a/Examples/MAX32650/Temp_Monitor/project.mk +++ b/Examples/MAX32650/Temp_Monitor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/Temp_Monitor/temp_monitor.c b/Examples/MAX32650/Temp_Monitor/temp_monitor.c index 37c6c79826f..3c4edac4dc3 100644 --- a/Examples/MAX32650/Temp_Monitor/temp_monitor.c +++ b/Examples/MAX32650/Temp_Monitor/temp_monitor.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/Temp_Monitor/temp_monitor.h b/Examples/MAX32650/Temp_Monitor/temp_monitor.h index 5541ea84518..88649637f1b 100644 --- a/Examples/MAX32650/Temp_Monitor/temp_monitor.h +++ b/Examples/MAX32650/Temp_Monitor/temp_monitor.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/UART/.vscode/README.md b/Examples/MAX32650/UART/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/UART/.vscode/README.md +++ b/Examples/MAX32650/UART/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/UART/.vscode/settings.json b/Examples/MAX32650/UART/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/UART/.vscode/settings.json +++ b/Examples/MAX32650/UART/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/UART/Makefile b/Examples/MAX32650/UART/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/UART/Makefile +++ b/Examples/MAX32650/UART/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/UART/main.c b/Examples/MAX32650/UART/main.c index 252e3fca6da..e88db158a31 100644 --- a/Examples/MAX32650/UART/main.c +++ b/Examples/MAX32650/UART/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -71,7 +70,7 @@ void readCallback(mxc_uart_req_t *req, int error) READ_FLAG = error; } -void buttonHandler() +void buttonHandler(void) { buttonPressed = 1; } diff --git a/Examples/MAX32650/UART/project.mk b/Examples/MAX32650/UART/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/UART/project.mk +++ b/Examples/MAX32650/UART/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/UART_DMA/.cproject b/Examples/MAX32650/UART_DMA/.cproject new file mode 100644 index 00000000000..c9d62244405 --- /dev/null +++ b/Examples/MAX32650/UART_DMA/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32650/UART_DMA/.project b/Examples/MAX32650/UART_DMA/.project new file mode 100644 index 00000000000..523d770068f --- /dev/null +++ b/Examples/MAX32650/UART_DMA/.project @@ -0,0 +1,26 @@ + + + UART_DMA + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.settings/language.settings.xml b/Examples/MAX32650/UART_DMA/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.settings/language.settings.xml rename to Examples/MAX32650/UART_DMA/.settings/language.settings.xml diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32650/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32650/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32650/UART_DMA/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32650/UART_DMA/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..15924d3ccb1 --- /dev/null +++ b/Examples/MAX32650/UART_DMA/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=UART_DMA +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32650 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32650/UART_DMA/.settings/org.eclipse.core.resources.prefs b/Examples/MAX32650/UART_DMA/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 00000000000..99f26c0203a --- /dev/null +++ b/Examples/MAX32650/UART_DMA/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/Examples/MAX32650/UART_DMA/.vscode/README.md b/Examples/MAX32650/UART_DMA/.vscode/README.md new file mode 100755 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32650/UART_DMA/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32650/USB/USB_CDCACM/.vscode/c_cpp_properties.json b/Examples/MAX32650/UART_DMA/.vscode/c_cpp_properties.json similarity index 100% rename from Examples/MAX32650/USB/USB_CDCACM/.vscode/c_cpp_properties.json rename to Examples/MAX32650/UART_DMA/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb b/Examples/MAX32650/UART_DMA/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb rename to Examples/MAX32650/UART_DMA/.vscode/flash.gdb diff --git a/Examples/MAX32650/USB/USB_CDCACM/.vscode/launch.json b/Examples/MAX32650/UART_DMA/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_CDCACM/.vscode/launch.json rename to Examples/MAX32650/UART_DMA/.vscode/launch.json diff --git a/Examples/MAX32650/UART_DMA/.vscode/settings.json b/Examples/MAX32650/UART_DMA/.vscode/settings.json new file mode 100755 index 00000000000..3e8e99ac3d8 --- /dev/null +++ b/Examples/MAX32650/UART_DMA/.vscode/settings.json @@ -0,0 +1,79 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32650", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32650.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json b/Examples/MAX32650/UART_DMA/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json rename to Examples/MAX32650/UART_DMA/.vscode/tasks.json diff --git a/Examples/MAX32650/UART_DMA/Makefile b/Examples/MAX32650/UART_DMA/Makefile new file mode 100644 index 00000000000..34c2eb93756 --- /dev/null +++ b/Examples/MAX32650/UART_DMA/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32650 +TARGET_UC := MAX32650 +TARGET_LC := max32650 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32650/UART_DMA/README.md b/Examples/MAX32650/UART_DMA/README.md new file mode 100644 index 00000000000..ef505b98d7c --- /dev/null +++ b/Examples/MAX32650/UART_DMA/README.md @@ -0,0 +1,71 @@ +## Description + +To demonstrate the use of the UART peripheral with DMA, data is sent between two UART ports on the MAX32650. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +(None - this project builds as a standard example) + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. +- Open an terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect P2.14 (RX of UART1) and P1.10 (TX of UART2). + +## Expected Output + +The Console UART of the device will output these messages: + +``` +**************** UART Example ****************** +This example sends data from one UART to another + +Connect RX(Px.xx) of UARTx and TX(Px.xx) of UARTx. + +To indicate a successful UART transfer, LED1 will illuminate. + +Push SW2 to continue + +UART Baud : 115200 Hz +Test Length : 512 bytes + +-->UART Initialized + +-->Data verified + +-->Example Succeeded + +``` + +or + +``` +**************** UART Example ****************** +This example sends data from one UART to another + +Connect RX(Px.xx) of UARTx and TX(Px.xx) of UARTx. + +To indicate a successful UART transfer, LED1 will illuminate. + +Push SW2 to continue + +UART Baud : 115200 Hz +Test Length : 512 bytes + +Acquired DMA channel 0 for RX transaction +Acquired DMA channel 1 for TX transaction + +-->UART Initialized + +-->Data verified + +-->Example Succeeded + +``` \ No newline at end of file diff --git a/Examples/MAX32650/UART_DMA/UART_DMA.launch b/Examples/MAX32650/UART_DMA/UART_DMA.launch new file mode 100644 index 00000000000..5a7e7306d7d --- /dev/null +++ b/Examples/MAX32650/UART_DMA/UART_DMA.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32650/UART_DMA/main.c b/Examples/MAX32650/UART_DMA/main.c new file mode 100644 index 00000000000..66559b8426b --- /dev/null +++ b/Examples/MAX32650/UART_DMA/main.c @@ -0,0 +1,272 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Main for UART with DMA example. + * @details This example demonstrates how to use DMA with UART for data transfer. + * The example sets up DMA channels to handle UART transmissions and receptions, + * looping back the TX of one UART to the RX of another UART. A jumper must be + * connected between P2.14 (RX of UART1) and P1.10 (TX of UART2). + * The example uses either automatic or manual DMA handler configuration + * depending on the AUTOHANDLERS macro definition. + */ + +/***** Includes *****/ +#include +#include +#include +#include "mxc_device.h" +#include "pb.h" +#include "board.h" +#include "mxc_delay.h" +#include "uart.h" +#include "dma.h" +#include "nvic_table.h" +#include "led.h" + +/***** Definitions *****/ +#define AUTOHANDLERS + +#define UART_BAUD 115200 +#define BUFF_SIZE 512 + +#define RX_UART MXC_UART1 +#define TX_UART MXC_UART2 + +/***** Globals *****/ +volatile int READ_FLAG; +volatile int WRITE_FLAG; +volatile int buttonPressed; +static mxc_uart_req_t read_req; +static mxc_uart_req_t write_req; + +/***** Functions *****/ +#ifndef AUTOHANDLERS +void DMA_RX_Handler(void) +{ + MXC_DMA_Handler(); +} + +void DMA_TX_Handler(void) +{ + MXC_DMA_Handler(); +} +#endif + +void readCallback(mxc_uart_req_t *req, int error) +{ + READ_FLAG = error; +} + +void writeCallback(mxc_uart_req_t *req, int error) +{ + WRITE_FLAG = error; +} + +void buttonHandler(void) +{ + buttonPressed = 1; +} + +#ifdef AUTOHANDLERS +int exampleDMAAutoHandlers(void) +{ + int error = 0; + + // Auto DMA handlers will automatically initialize DMA, acquire & assign channels, + // and guarantee that each transaction's callback function is executed when + // the transaction is complete. + MXC_UART_SetAutoDMAHandlers(RX_UART, true); + MXC_UART_SetAutoDMAHandlers(TX_UART, true); + + // "READ_FLAG" is set in the read transaction's callback. It will be set to 0 when + // the read request completes successfully. We use it to wait for the DMA transaction + // to complete, since the DMA APIs are asynchronous (non-blocking) + READ_FLAG = 1; + + error = MXC_UART_TransactionDMA(&read_req); + if (error) { + printf("-->Error starting DMA read: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + error = MXC_UART_TransactionDMA(&write_req); + if (error) { + printf("-->Error starting DMA write: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + while (READ_FLAG) {} + + printf("-->Transaction completed\n"); + return READ_FLAG; +} +#else +int exampleDMAManualHandlers(void) +{ + int error = 0; + + // Manally initialize DMA + MXC_DMA_Init(); + + // Manually acquire a channel for the read request and assign it to the drivers. + int rx_channel = MXC_DMA_AcquireChannel(); + if (rx_channel >= 0) { + printf("Acquired DMA channel %i for RX transaction\n", rx_channel); + } else { + printf("Failed to acquire RX DMA channel with error %i\n", rx_channel); + return rx_channel; + } + MXC_UART_SetRXDMAChannel(RX_UART, rx_channel); + + // Additionally, assign the NVIC IRQ to a function that calls "MXC_DMA_Handler()". + // This is required for any assigned callbacks to work. + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(rx_channel)); + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(rx_channel), DMA_RX_Handler); + + // Do the same for the write request. + int tx_channel = MXC_DMA_AcquireChannel(); + if (tx_channel >= 0) { + printf("Acquired DMA channel %i for RX transaction\n", tx_channel); + } else { + printf("Failed to acquire RX DMA channel with error %i\n", tx_channel); + return tx_channel; + } + MXC_UART_SetTXDMAChannel(TX_UART, tx_channel); + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(tx_channel)); + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(tx_channel), DMA_TX_Handler); + + // Initialize flags. We will use these to monitor when the read/write requests + // have completed, since the DMA APIs are asynchronous. + WRITE_FLAG = 1; + READ_FLAG = 1; + + error = MXC_UART_TransactionDMA(&read_req); + if (error) { + printf("-->Error starting DMA read: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + error = MXC_UART_TransactionDMA(&write_req); + if (error) { + printf("-->Error starting DMA write: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + while (WRITE_FLAG) {} + while (READ_FLAG) {} + + printf("-->Transaction completed\n"); + return WRITE_FLAG; +} +#endif // AUTOHANDLERS + +/******************************************************************************/ +int main(void) +{ + int error, i, fail = 0; + uint8_t TxData[BUFF_SIZE]; + uint8_t RxData[BUFF_SIZE]; + + printf("\n\n**************** UART Example ******************\n"); + printf("This example sends data from one UART to another\n"); + printf("\nConnect RX(P2.14) of UART1 and TX(P1.10) of UART2.\n\n"); + printf("To indicate a successful UART transfer, LED1 will illuminate.\n"); + printf("\nPush SW2 to continue\n"); + + buttonPressed = 0; + PB_RegisterCallback(0, (pb_callback)buttonHandler); + while (!buttonPressed) {} + + printf("\nUART Baud \t: %d Hz\n", UART_BAUD); + printf("Test Length \t: %d bytes\n\n", BUFF_SIZE); + + // Initialize the data buffers + for (i = 0; i < BUFF_SIZE; i++) { + TxData[i] = i; + } + memset(RxData, 0x0, BUFF_SIZE); + + // Initialize the UART + error = MXC_UART_Init(TX_UART, UART_BAUD); + if (error < E_NO_ERROR) { + printf("-->Error initializing UART: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + error = MXC_UART_Init(RX_UART, UART_BAUD); + if (error < E_NO_ERROR) { + printf("-->Error initializing UART: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + // Setup request structs describing the transactions. + // Request structs are placed in the global scope so they + // don't go out of context. This can happen when a req struct + // is declared inside a function and the function completes. + // The memory would be freed, invalidating the UART driver's + // pointers to it. + read_req.uart = RX_UART; + read_req.rxData = RxData; + read_req.rxLen = BUFF_SIZE; + read_req.txLen = 0; + read_req.callback = readCallback; + + write_req.uart = TX_UART; + write_req.txData = TxData; + write_req.txLen = BUFF_SIZE; + write_req.rxLen = 0; + write_req.callback = writeCallback; + + printf("-->UART Initialized\n\n"); + +#ifdef AUTOHANDLERS + error = exampleDMAAutoHandlers(); +#else + error = exampleDMAManualHandlers(); +#endif + + if (READ_FLAG != E_NO_ERROR) { + printf("-->Error with read callback; %d\n", READ_FLAG); + fail++; + } + + if ((error = memcmp(RxData, TxData, BUFF_SIZE)) != 0) { + printf("-->Error verifying Data: %d\n", error); + fail++; + } else { + printf("-->Data verified\n"); + } + + if (fail != 0) { + printf("\n-->Example Failed\n"); + LED_On(0); // indicates FAIL + return E_FAIL; + } + + LED_On(1); // indicates SUCCESS + printf("\n-->Example Succeeded\n"); + return E_NO_ERROR; +} diff --git a/Examples/MAX32650/UART_DMA/project.mk b/Examples/MAX32650/UART_DMA/project.mk new file mode 100644 index 00000000000..a7f185557dc --- /dev/null +++ b/Examples/MAX32650/UART_DMA/project.mk @@ -0,0 +1,19 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +#BOARD=FTHR_RevA +# ^ For example, you can uncomment this line to make the +# project build for the "FTHR_RevA" board. + +# ********************************************************** + +# Add your config here! + +# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 diff --git a/Examples/MAX32650/UCL/.vscode/README.md b/Examples/MAX32650/UCL/.vscode/README.md index f57d4364851..cc0783881d1 100644 --- a/Examples/MAX32650/UCL/.vscode/README.md +++ b/Examples/MAX32650/UCL/.vscode/README.md @@ -4,14 +4,14 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) -* [Wiki](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/wiki) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) +* [Wiki](https://github.com/analogdevicesinc/VSCode-Maxim/wiki) * If it's not in the readme, check the wiki. * If it's not in the wiki, open a ticket! ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. The following features are supported: @@ -91,7 +91,7 @@ Ex: ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MaximSDK installation. @@ -413,7 +413,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the diff --git a/Examples/MAX32650/UCL/Makefile b/Examples/MAX32650/UCL/Makefile index f1340481d1f..eaeb73c7d75 100644 --- a/Examples/MAX32650/UCL/Makefile +++ b/Examples/MAX32650/UCL/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -25,7 +24,7 @@ # in "project.mk", on the command-line, or with system environment # variables. -# See https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# See https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # for more detailed instructions on how to use this system. # The detailed instructions mentioned above are easier to read than @@ -375,7 +374,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/UCL/project.mk b/Examples/MAX32650/UCL/project.mk index d3ea2f7c2d0..8727223a617 100644 --- a/Examples/MAX32650/UCL/project.mk +++ b/Examples/MAX32650/UCL/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/USB/USB_CDCACM/.cproject b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.cproject similarity index 100% rename from Examples/MAX32650/USB/USB_CDCACM/.cproject rename to Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.cproject diff --git a/Examples/MAX32650/USB/USB_CDCACM/.project b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.project similarity index 100% rename from Examples/MAX32650/USB/USB_CDCACM/.project rename to Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.project diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml rename to Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.settings/language.settings.xml diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32650/USB/USB_CDCACM/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.settings/org.eclipse.cdt.core.prefs similarity index 100% rename from Examples/MAX32650/USB/USB_CDCACM/.settings/org.eclipse.cdt.core.prefs rename to Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.settings/org.eclipse.cdt.core.prefs diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.vscode/README.md b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.vscode/c_cpp_properties.json b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.vscode/c_cpp_properties.json similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.vscode/c_cpp_properties.json rename to Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb rename to Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.vscode/flash.gdb diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.vscode/launch.json b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.vscode/launch.json rename to Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.vscode/launch.json diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.vscode/settings.json b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.vscode/settings.json new file mode 100644 index 00000000000..0e929bc45cc --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.vscode/settings.json @@ -0,0 +1,89 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32650", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32650.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json rename to Examples/MAX32650/USB/MAXUSB/USB_CDCACM/.vscode/tasks.json diff --git a/Examples/MAX32650/USB/USB_CDCACM/Driver/maxim_usb-uart_adapter.cat b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/Driver/maxim_usb-uart_adapter.cat similarity index 100% rename from Examples/MAX32650/USB/USB_CDCACM/Driver/maxim_usb-uart_adapter.cat rename to Examples/MAX32650/USB/MAXUSB/USB_CDCACM/Driver/maxim_usb-uart_adapter.cat diff --git a/Examples/MAX32650/USB/USB_CDCACM/Driver/maxim_usb-uart_adapter.inf b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/Driver/maxim_usb-uart_adapter.inf similarity index 100% rename from Examples/MAX32650/USB/USB_CDCACM/Driver/maxim_usb-uart_adapter.inf rename to Examples/MAX32650/USB/MAXUSB/USB_CDCACM/Driver/maxim_usb-uart_adapter.inf diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/Makefile b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/Makefile new file mode 100644 index 00000000000..71bc32d20b4 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32650 +TARGET_UC := MAX32650 +TARGET_LC := max32650 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32650/USB/USB_CDCACM/README.md b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/README.md similarity index 100% rename from Examples/MAX32650/USB/USB_CDCACM/README.md rename to Examples/MAX32650/USB/MAXUSB/USB_CDCACM/README.md diff --git a/Examples/MAX32650/USB/USB_CDCACM/USB_CDCACM.launch b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/USB_CDCACM.launch similarity index 100% rename from Examples/MAX32650/USB/USB_CDCACM/USB_CDCACM.launch rename to Examples/MAX32650/USB/MAXUSB/USB_CDCACM/USB_CDCACM.launch diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/descriptors.h b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/descriptors.h new file mode 100644 index 00000000000..0ee47cc4d2f --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/descriptors.h @@ -0,0 +1,328 @@ +/** + * @file descriptors.h + * @brief descriptors listed here + */ + +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/* Define to prevent redundant inclusion */ +#ifndef EXAMPLES_MAX32650_USB_MAXUSB_USB_CDCACM_DESCRIPTORS_H_ +#define EXAMPLES_MAX32650_USB_MAXUSB_USB_CDCACM_DESCRIPTORS_H_ + +/* **** Includes **** */ +#include +#include "usb.h" +#include "hid_kbd.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* **** Definitions **** */ + +MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { + 0x12, /* bLength = 18 */ + 0x01, /* bDescriptorType = Device */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x02, /* bDeviceClass = comm class (2) */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x0B6A, /* idVendor (Maxim Integrated) */ + 0x003C, /* idProduct */ + 0x0100, /* bcdDevice */ + 0x01, /* iManufacturer Descriptor ID */ + 0x02, /* iProduct Descriptor ID */ + 0x00, /* iSerialNumber = (0) No string */ + 0x01 /* bNumConfigurations */ +}; + +/* Device qualifier needed for high-speed operation */ +MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) device_qualifier_descriptor = { + 0x0A, /* bLength = 10 */ + 0x06, /* bDescriptorType = Device Qualifier */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x02, /* bDeviceClass = Unspecified */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x01, /* bNumConfigurations */ + 0x00 /* Reserved, must be 0 */ +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #1 CDCACM Device */ + MXC_USB_interface_descriptor_t comm_interface_descriptor; + uint8_t header_functional_descriptor[5]; + uint8_t call_management_descriptor[5]; + uint8_t acm_functional_descriptor[4]; + uint8_t union_functional_descriptor[5]; + /* Interface #2 CDC Data*/ + MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; + MXC_USB_interface_descriptor_t data_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; +} + +config_descriptor = { + { + 0x09, /* bLength = 9 */ + 0x02, /* bDescriptorType = Config (2) */ + 0x0043, /* wTotalLength(L/H) */ + 0x02, /* bNumInterfaces */ + 0x01, /* bConfigValue */ + 0x02, /* iConfiguration */ + 0xE0, /* bmAttributes (self-powered, remote wakeup) */ + 0x01, /* MaxPower is 2ma (units are 2ma/bit) */ + }, + /********** Interface #1 : COMM Interface **********/ + { + /* First Interface Descriptor For Comm Class Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x02, /* bInterfaceClass = Communications Interface Class (2) */ + 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ + 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ + 0x04, /* iInterface */ + }, + { + /* Header Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x00, /* bDescriptorSubtype */ + 0x10, 0x01, /* bcdCDC */ + }, + { + /* Call Management Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x01, /* bDescriptorSubtype */ + 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ + 0x01, /* bmDataInterface */ + }, + { + /* Abstract Control Management Functional Descriptor */ + 0x04, /* bFunctionalLength = 4 */ + 0x24, /* bDescriptorType */ + 0x02, /* bDescriptorSubtype */ + 0x02, /* bmCapabilities */ + }, + { + /* Union Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x06, /* bDescriptorSubtype */ + 0x00, /* bmMasterInterface */ + 0x01, /* bmSlaveInterface0 */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x84, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0040, /* wMaxPacketSize */ + 0xff, /* bInterval (milliseconds) */ + }, + { + /* Second Interface Descriptor For Data Interface */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType (Interface) */ + 0x01, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints */ + 0x0a, /* bInterfaceClass = Data Interface (10) */ + 0x00, /* bInterfaceSubClass = none (0) */ + 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ + 0x04, /* biInterface = No Text String (0) */ + }, + { + /* OUT Endpoint 1 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x05, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #3) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00 /* bInterval (N/A) */ + } +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #1 CDCACM Device */ + MXC_USB_interface_descriptor_t comm_interface_descriptor; + uint8_t header_functional_descriptor[5]; + uint8_t call_management_descriptor[5]; + uint8_t acm_functional_descriptor[4]; + uint8_t union_functional_descriptor[5]; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; + /* Interface #2 CDCACM Data */ + MXC_USB_interface_descriptor_t data_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; +} + +config_descriptor_hs = { + { + 0x09, /* bLength */ + 0x02, /* bDescriptorType = Config */ + 0x0043, /* wTotalLength(L/H) */ + 0x02, /* bNumInterfaces */ + 0x01, /* bConfigurationValue */ + 0x02, /* iConfiguration */ + 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + /********** Interface #1 : COMM Interface **********/ + { + /* First Interface Descriptor For Comm Class Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x02, /* bInterfaceClass = Communications Interface Class (2) */ + 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ + 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ + 0x04, /* iInterface */ + }, + { + /* Header Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x00, /* bDescriptorSubtype */ + 0x10, 0x01, /* bcdCDC */ + }, + { + /* Call Management Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x01, /* bDescriptorSubtype */ + 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ + 0x01, /* bmDataInterface */ + }, + { + /* Abstract Control Management Functional Descriptor */ + 0x04, /* bFunctionalLength = 4 */ + 0x24, /* bDescriptorType */ + 0x02, /* bDescriptorSubtype */ + 0x02, /* bmCapabilities */ + }, + { + /* Union Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x06, /* bDescriptorSubtype */ + 0x00, /* bmMasterInterface */ + 0x01, /* bmSlaveInterface0 */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x84, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0200, /* wMaxPacketSize */ + 0xff, /* bInterval (milliseconds) */ + }, + { + /* Second Interface Descriptor For Data Interface */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType (Interface) */ + 0x01, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints */ + 0x0a, /* bInterfaceClass = Data Interface (10) */ + 0x00, /* bInterfaceSubClass = none (0) */ + 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ + 0x04, /* biInterface = No Text String (0) */ + }, + { + /* OUT Endpoint 1 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x05, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #3) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, +}; + +__attribute__((aligned(4))) uint8_t lang_id_desc[] = { + 0x04, /* bLength */ + 0x03, /* bDescriptorType */ + 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ +}; + +__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, + 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t prod_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', 0, + ' ', 0, 'C', 0, 'D', 0, 'C', 0, '-', 0, 'A', 0, 'C', 0, 'M', 0, +}; + +/* Not currently used (see device descriptor), but could be enabled if desired */ +__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ + 0x03, /* bDescriptorType */ + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, + '0', 0, '0', 0, '0', 0, '1', 0 }; + +__attribute__((aligned(4))) uint8_t cdcacm_func_desc[] = { + 0x20, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', + 0, ' ', 0, 'C', 0, 'D', 0, 'C', 0, 'A', 0, 'C', 0, 'M', 0, +}; + +#ifdef __cplusplus +} +#endif + +#endif // EXAMPLES_MAX32650_USB_MAXUSB_USB_CDCACM_DESCRIPTORS_H_ diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/main.c b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/main.c new file mode 100644 index 00000000000..e40f73cdd53 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/main.c @@ -0,0 +1,400 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file + * @brief USB CDC-ACM example + * @details This project creates a virtual COM port, which loops back data sent to it. + * Load the project, connect a cable from the PC to the USB connector + * on the Evaluation Kit, and observe that the PC now recognizes a new COM port. + * A driver for the COM port, if needed, is located in the Driver/ subdirectory. + * + */ + +/* **** Includes **** */ +#include +#include +#include "mxc_errors.h" //#include "mxc_config.h" //SJ +#include "mxc_sys.h" +#include "mxc_delay.h" +#include "board.h" +#include "led.h" +#include "usb.h" +#include "usb_event.h" +#include "enumerate.h" +#include "cdc_acm.h" +#include "descriptors.h" + +/* **** Definitions **** */ +#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS +#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) + +#define BUFFER_SIZE 64 + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) + +/* **** Global Data **** */ +volatile int configured; +volatile int suspended; +volatile unsigned int event_flags; +int remote_wake_en; + +/* **** Function Prototypes **** */ +static int setconfig_callback(MXC_USB_SetupPkt *sud, void *cbdata); +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int event_callback(maxusb_event_t evt, void *data); +static void usbAppSleep(void); +static void usbAppWakeup(void); +static int usb_read_callback(void); +static void echo_usb(void); +int usbStartupCallback(void); +int usbShutdownCallback(void); + +/* **** File Scope Variables **** */ + +/* This EP assignment must match the Configuration Descriptor */ +static acm_cfg_t acm_cfg = { + 2, /* EP OUT */ + MXC_USBHS_MAX_PACKET, /* OUT max packet size */ + 3, /* EP IN */ + MXC_USBHS_MAX_PACKET, /* IN max packet size */ + 4, /* EP Notify */ + MXC_USBHS_MAX_PACKET, /* Notify max packet size */ +}; + +static volatile int usb_read_complete; + +/* User-supplied function to delay usec micro-seconds */ +void delay_us(unsigned int usec) +{ + /* mxc_delay() takes unsigned long, so can't use it directly */ + MXC_Delay(usec); +} + +/* ************************************************************************** */ +int main(void) +{ + maxusb_cfg_options_t usb_opts; + + printf("\n\n***** USB CDC-ACM Example *****\n"); + printf("Waiting for VBUS...\n"); + + /* Initialize state */ + configured = 0; + suspended = 0; + event_flags = 0; + remote_wake_en = 0; + + /* Start out in full speed */ + usb_opts.enable_hs = 1; + usb_opts.delay_us = delay_us; /* Function which will be used for delays */ + usb_opts.init_callback = usbStartupCallback; + usb_opts.shutdown_callback = usbShutdownCallback; + + /* Initialize the usb module */ + if (MXC_USB_Init(&usb_opts) != 0) { + printf("usb_init() failed\n"); + while (1) {} + } + + /* Initialize the enumeration module */ + if (enum_init() != 0) { + printf("enum_init() failed\n"); + while (1) {} + } + + /* Register enumeration data */ + enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); + + if (usb_opts.enable_hs) { + /* Two additional descriptors needed for high-speed operation */ + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); + enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&device_qualifier_descriptor, 0); + } + + enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); + enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); + enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); + enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); + enum_register_descriptor(ENUM_DESC_STRING, cdcacm_func_desc, 4); + + /* Handle configuration */ + enum_register_callback(ENUM_SETCONFIG, setconfig_callback, NULL); + + /* Handle feature set/clear */ + enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); + enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); + + /* Initialize the class driver */ + if (acm_init(&config_descriptor.comm_interface_descriptor) != 0) { + printf("acm_init() failed\n"); + while (1) {} + } + + /* Register callbacks */ + MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, event_callback, NULL); + MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, event_callback, NULL); + acm_register_callback(ACM_CB_READ_READY, usb_read_callback); + + usb_read_complete = 0; + + /* Start with USB in low power mode */ + usbAppSleep(); + NVIC_EnableIRQ(USB_IRQn); + + /* Wait for events */ + while (1) { + echo_usb(); + + if (suspended || !configured) { + LED_Off(0); + } else { + LED_On(0); + } + + if (event_flags) { + /* Display events */ + if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); + printf("VBUS Disconnect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); + printf("VBUS Connect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); + printf("Bus Reset\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { /// + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); + printf("Bus Reset Done: %s speed\n", + (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); + printf("Suspended\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); + printf("Resume\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { + MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); + printf("Enumeration complete...\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { + MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); + printf("Remote Wakeup\n"); + } + } + } +} + +/* ************************************************************************** */ +static void echo_usb(void) +{ + int chars; + uint8_t buffer[BUFFER_SIZE]; + + if ((chars = acm_canread()) > 0) { + if (chars > BUFFER_SIZE) { + chars = BUFFER_SIZE; + } + + /* Read the data from USB */ + if (acm_read(buffer, chars) != chars) { + printf("acm_read() failed\n"); + return; + } + + /* Echo it back */ + if (acm_present()) { + if (acm_write(buffer, chars) != chars) { + printf("acm_write() failed\n"); + } + } + } +} + +/******************************************************************************/ +int usbStartupCallback(void) +{ + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clk_ctrl & MXC_F_GCR_CLK_CTRL_HIRC96_EN)) { + MXC_GCR->clk_ctrl |= MXC_F_GCR_CLK_CTRL_HIRC96_EN; + + if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLK_CTRL_HIRC96_RDY) != E_NO_ERROR) { + return E_TIME_OUT; + } + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +int usbShutdownCallback(void) +{ + return MXC_SYS_USBHS_Shutdown(); +} + +/* ************************************************************************** */ +static int setconfig_callback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + /* Confirm the configuration value */ + if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { + configured = 1; + MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); + + acm_cfg.out_ep = config_descriptor.endpoint_descriptor_4.bEndpointAddress & 0x7; + acm_cfg.out_maxpacket = config_descriptor.endpoint_descriptor_4.wMaxPacketSize; + acm_cfg.in_ep = config_descriptor.endpoint_descriptor_5.bEndpointAddress & 0x7; + acm_cfg.in_maxpacket = config_descriptor.endpoint_descriptor_5.wMaxPacketSize; + acm_cfg.notify_ep = config_descriptor.endpoint_descriptor_3.bEndpointAddress & 0x7; + acm_cfg.notify_maxpacket = config_descriptor.endpoint_descriptor_3.wMaxPacketSize; + + return acm_configure(&acm_cfg); /* Configure the device class */ + } else if (sud->wValue == 0) { + configured = 0; + return acm_deconfigure(); + } + + return -1; +} + +/* ************************************************************************** */ +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 1; + } else { + /* Unknown callback */ + return -1; + } + + return 0; +} + +/* ************************************************************************** */ +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 0; + } else { + /* Unknown callback */ + return -1; + } + + return 0; +} + +/* ************************************************************************** */ +static void usbAppSleep(void) +{ + suspended = 1; +} + +/* ************************************************************************** */ +static void usbAppWakeup(void) +{ + suspended = 0; +} + +/* ************************************************************************** */ +static int event_callback(maxusb_event_t evt, void *data) +{ + /* Set event flag */ + MXC_SETBIT(&event_flags, evt); + + switch (evt) { + case MAXUSB_EVENT_NOVBUS: + MXC_USB_EventDisable(MAXUSB_EVENT_BRST); + MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); + MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); + MXC_USB_Disconnect(); + configured = 0; + enum_clearconfig(); + acm_deconfigure(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_VBUS: + MXC_USB_EventClear(MAXUSB_EVENT_BRST); + MXC_USB_EventEnable(MAXUSB_EVENT_BRST, event_callback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); /// + MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, event_callback, NULL); /// + MXC_USB_EventClear(MAXUSB_EVENT_SUSP); + MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, event_callback, NULL); + MXC_USB_Connect(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_BRST: + usbAppWakeup(); + enum_clearconfig(); + acm_deconfigure(); + configured = 0; + suspended = 0; + break; + + case MAXUSB_EVENT_BRSTDN: /// + if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor_hs, 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor, 0); + } else { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); + } + break; + + case MAXUSB_EVENT_SUSP: + usbAppSleep(); + break; + + case MAXUSB_EVENT_DPACT: + usbAppWakeup(); + break; + + default: + break; + } + + return 0; +} + +/* ************************************************************************** */ + +static int usb_read_callback(void) +{ + usb_read_complete = 1; + return 0; +} + +/* ************************************************************************** */ + +void USB_IRQHandler(void) +{ + MXC_USB_EventHandler(); +} + +/* ************************************************************************** */ + +void SysTick_Handler(void) +{ + MXC_DelayHandler(); +} diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/project.mk b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/project.mk new file mode 100644 index 00000000000..88f625a6bf9 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CDCACM/project.mk @@ -0,0 +1,39 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +#BOARD=FTHR_RevA +# ^ For example, you can uncomment this line to make the +# project build for the "FTHR_RevA" board. + +# ********************************************************** + +# Add your config here! + +# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable MAXUSB library +LIB_MAXUSB=1 diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.cproject b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.cproject similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.cproject rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.cproject diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.project b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.project similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.project rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.project diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/.settings/language.settings.xml b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32650/USB/USB_HIDKeyboard/.settings/language.settings.xml rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/language.settings.xml diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32650/USB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.core.prefs similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.core.prefs rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.core.prefs diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/README.md b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/c_cpp_properties.json similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/.vscode/flash.gdb b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_HIDKeyboard/.vscode/flash.gdb rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.vscode/launch.json b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.vscode/launch.json rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/launch.json diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json new file mode 100644 index 00000000000..0e929bc45cc --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json @@ -0,0 +1,89 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32650", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32650.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/.vscode/tasks.json b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_HIDKeyboard/.vscode/tasks.json rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/Makefile b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/Makefile new file mode 100644 index 00000000000..71bc32d20b4 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32650 +TARGET_UC := MAX32650 +TARGET_LC := max32650 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/README.md b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/README.md similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/README.md rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/README.md diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/USB_CompositeDevice_MSC_CDC.launch b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/USB_CompositeDevice_MSC_CDC.launch similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/USB_CompositeDevice_MSC_CDC.launch rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/USB_CompositeDevice_MSC_CDC.launch diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/descriptors.h b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/descriptors.h new file mode 100644 index 00000000000..59c2a342991 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/descriptors.h @@ -0,0 +1,443 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32650_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ +#define EXAMPLES_MAX32650_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ + +#include +#include "usb.h" +#include "hid_kbd.h" + +MXC_USB_device_descriptor_t __attribute__((aligned(4))) composite_device_descriptor = { + 0x12, /* bLength */ + 0x01, /* bDescriptorType = Device */ + 0x0200, + /* bcdUSB USB spec rev (BCD) */ /// + 0xEF, /* bDeviceClass = code specified by interface descriptors */ + 0x02, /* bDeviceSubClass = code specified by interface descriptors */ + 0x01, /* bDeviceProtocol = code specified by interface descriptors */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x0B6A, /* idVendor (Maxim Integrated) */ + 0x003C, + /* idProduct */ /// + 0x0100, /* bcdDevice */ + 0x01, /* iManufacturer Descriptor ID */ + 0x02, /* iProduct Descriptor ID */ + 0x00, /* iSerialNumber Descriptor ID */ + 0x01 /* bNumConfigurations */ +}; + +/* Device qualifier needed for high-speed operation */ +MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) +composite_device_qualifier_descriptor = { + 0x0A, /* bLength = 10 */ + 0x06, /* bDescriptorType = Device Qualifier */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0xEF, /* bDeviceClass = Unspecified */ + 0x02, /* bDeviceSubClass */ + 0x01, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x01, /* bNumConfigurations */ + 0x00 /* Reserved, must be 0 */ +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #0 Mass Storage Device */ + MXC_USB_interface_descriptor_t msc_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; + /* Interface Association Descriptor */ + uint8_t interface_association_descriptor[8]; + /* Interface #1 CDCACM Device */ + MXC_USB_interface_descriptor_t comm_interface_descriptor; + uint8_t header_functional_descriptor[5]; + uint8_t call_management_descriptor[5]; + uint8_t acm_functional_descriptor[4]; + uint8_t union_functional_descriptor[5]; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; + /* Interface #2 CDC Data*/ + MXC_USB_interface_descriptor_t data_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; +} + +composite_config_descriptor = { + { + 0x09, /* bLength */ + 0x02, /* bDescriptorType = Config */ + 0x0062, /* wTotalLength(L/H) = 98 bytes */ + 0x03, /* bNumInterfaces */ + 0x01, /* bConfigurationValue */ + 0x02, /* iConfiguration */ /// + 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ + 0x01, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + /********** Interface #0 : Mass Storage Device **********/ + { + /* Second Interface Descriptor For MSC Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints (one for IN one for OUT) */ + 0x08, /* bInterfaceClass = Mass Storage (8) */ + 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ + 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ + 0x05, /* iInterface */ + }, + { + /* OUT Endpoint 1 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00 /* bInterval (N/A) */ + }, + /********** Interface Association Descriptor **********/ + { + 0x08, /* bLength */ + 0x0B, /* bDescriptorType */ + 0x01, /* bFirstInterface */ + 0x02, /* bInterfaceCount */ + 0x02, /* bFunctionClass */ + 0x02, /* bFunctionSubClass */ + 0x01, /* bFunctionProtocol */ + 0x00, /* iFunction */ + }, + /********** Interface #1 : COMM Interface **********/ + { + /* First Interface Descriptor For Comm Class Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x01, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x02, /* bInterfaceClass = Communications Interface Class (2) */ + 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ + 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ + 0x04, /* iInterface */ + }, + { + /* Header Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x00, /* bDescriptorSubtype */ + 0x10, 0x01, /* bcdCDC */ + }, + { + /* Call Management Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x01, /* bDescriptorSubtype */ + 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ + 0x01, /* bmDataInterface */ + }, + { + /* Abstract Control Management Functional Descriptor */ + 0x04, /* bFunctionalLength = 4 */ + 0x24, /* bDescriptorType */ + 0x02, /* bDescriptorSubtype */ + 0x02, /* bmCapabilities */ + }, + { + /* Union Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x06, /* bDescriptorSubtype */ + 0x00, /* bmMasterInterface */ + 0x01, /* bmSlaveInterface0 */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x84, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0040, /* wMaxPacketSize */ + 0xff, /* bInterval (milliseconds) */ + }, + { + /* Second Interface Descriptor For Data Interface */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType (Interface) */ + 0x02, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints */ + 0x0a, /* bInterfaceClass = Data Interface (10) */ + 0x00, /* bInterfaceSubClass = none (0) */ + 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ + 0x04, /* biInterface = No Text String (0) */ + }, + { + /* OUT Endpoint 1 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x05, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #3) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #0 Mass Storage Device */ + MXC_USB_interface_descriptor_t msc_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; + /* Interface Association Descriptor */ + uint8_t interface_association_descriptor[8]; + /* Interface #1 CDCACM Device */ + MXC_USB_interface_descriptor_t comm_interface_descriptor; + uint8_t header_functional_descriptor[5]; + uint8_t call_management_descriptor[5]; + uint8_t acm_functional_descriptor[4]; + uint8_t union_functional_descriptor[5]; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; + /* Interface #2 CDC Data*/ + MXC_USB_interface_descriptor_t data_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; +} + +composite_config_descriptor_hs = { + { + 0x09, /* bLength */ + 0x02, /* bDescriptorType = Config */ + 0x0062, /* wTotalLength(L/H) */ + 0x03, /* bNumInterfaces */ + 0x01, /* bConfigurationValue */ + 0x02, /* iConfiguration */ + 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + /********** Interface #0 : Mass Storage Device **********/ + { + /* Second Interface Descriptor For MSC Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints (one for IN one for OUT) */ + 0x08, /* bInterfaceClass = Mass Storage (8) */ + 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ + 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ + 0x05, /* iInterface */ + }, + { + /* OUT Endpoint 1 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x01, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x01 /* bInterval (N/A) */ + }, + /********** Interface Association Descriptor **********/ + { + 0x08, /* bLength */ + 0x0B, /* bDescriptorType */ + 0x01, /* bFirstInterface */ + 0x02, /* bInterfaceCount */ + 0x02, /* bFunctionClass */ + 0x02, /* bFunctionSubClass */ + 0x01, /* bFunctionProtocol */ + 0x00, /* iFunction */ + }, + /********** Interface #1 : COMM Interface **********/ + { + /* First Interface Descriptor For Comm Class Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x01, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x02, /* bInterfaceClass = Communications Interface Class (2) */ + 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ + 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ + 0x04, /* iInterface */ + }, + { + /* Header Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x00, /* bDescriptorSubtype */ + 0x10, 0x01, /* bcdCDC */ + }, + { + /* Call Management Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x01, /* bDescriptorSubtype */ + 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ + 0x01, /* bmDataInterface */ + }, + { + /* Abstract Control Management Functional Descriptor */ + 0x04, /* bFunctionalLength = 4 */ + 0x24, /* bDescriptorType */ + 0x02, /* bDescriptorSubtype */ + 0x02, /* bmCapabilities */ + }, + { + /* Union Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x06, /* bDescriptorSubtype */ + 0x00, /* bmMasterInterface */ + 0x01, /* bmSlaveInterface0 */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x84, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0200, /* wMaxPacketSize */ + 0xff, /* bInterval (milliseconds) */ + }, + { + /* Second Interface Descriptor For Data Interface */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType (Interface) */ + 0x02, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints */ + 0x0a, /* bInterfaceClass = Data Interface (10) */ + 0x00, /* bInterfaceSubClass = none (0) */ + 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ + 0x04, /* biInterface = No Text String (0) */ + }, + { + /* OUT Endpoint 1 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x05, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #3) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, +}; + +__attribute__((aligned(4))) uint8_t report_descriptor[] = { + 0x05, 0x01, /* Usage Page (generic desktop) */ + 0x09, 0x06, /* Usage (keyboard) */ + 0xa1, 0x01, /* Collection */ + 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ + 0x19, 0xe0, /* Usage Minimum = 224 */ + 0x29, 0xe7, /* Usage Maximum = 231 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x01, /* Logical Maximum = 1 */ + 0x75, 0x01, /* Report Size = 1 */ + 0x95, 0x08, /* Report Count = 8 */ + 0x81, 0x02, /* Input(Data,Variable,Absolute) */ + 0x95, 0x01, /* Report Count = 1 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x81, 0x01, /* Input(Constant) */ + 0x19, 0x00, /* Usage Minimum = 0 */ + 0x29, 0x65, /* Usage Maximum = 101 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x65, /* Logical Maximum = 101 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x95, 0x01, /* Report Count = 1 */ + 0x81, 0x00, /* Input(Data,Variable,Array) */ + 0xc0 /* End Collection */ +}; + +__attribute__((aligned(4))) uint8_t lang_id_desc[] = { + 0x04, /* bLength */ + 0x03, /* bDescriptorType */ + 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ +}; + +__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, + 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t prod_id_desc[] = { + 0x34, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', + 0, 'C', 0, 'o', 0, 'm', 0, 'p', 0, 'o', 0, 's', 0, 'i', 0, 't', 0, + 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, +}; + +__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ + 0x03, /* bDescriptorType */ + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, + '0', 0, '0', 0, '0', 0, '1', 0 }; + +__attribute__((aligned(4))) uint8_t cdcacm_func_desc[] = { + 0x20, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', + 0, ' ', 0, 'C', 0, 'D', 0, 'C', 0, 'A', 0, 'C', 0, 'M', 0, +}; + +__attribute__((aligned(4))) uint8_t msc_func_desc[] = { + 0x3A, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', 0, 'M', + 0, 'a', 0, 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, + 'g', 0, 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, +}; + +#endif // EXAMPLES_MAX32650_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/main.c b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/main.c new file mode 100644 index 00000000000..d78f977eca8 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/main.c @@ -0,0 +1,442 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief USB composite device with Mass Storage driver class and CDC-SCM driver class. +*/ + +#include +#include +#include "mxc_sys.h" +#include "mxc_delay.h" +#include "board.h" +#include "led.h" +#include "usb.h" +#include "usb_event.h" +#include "enumerate.h" +#include "cdc_acm.h" +#include "msc.h" +#include "descriptors.h" +#include "mscmem.h" + +/* **** Definitions **** */ +#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS +#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) + +#define BUFFER_SIZE 64 + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) + +/* **** Global Data **** */ +volatile int configured; +volatile int suspended; +volatile unsigned int event_flags; +int remote_wake_en; + +/* **** Function Prototypes **** */ + +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int eventCallback(maxusb_event_t evt, void *data); +static void usbAppSleep(void); +static void usbAppWakeup(void); +static int usbReadCallback(void); +int usbStartupCallback(void); +int usbShutdownCallback(void); +static void echoUSB(void); + +/* This EP assignment must match the Configuration Descriptor */ +static msc_cfg_t msc_cfg = { + 1, /* EP OUT */ + MXC_USBHS_MAX_PACKET, /* OUT max packet size */ + 2, /* EP IN */ + MXC_USBHS_MAX_PACKET, /* IN max packet size */ +}; + +static const msc_idstrings_t ids = { + "MAXIM", /* Vendor string. Maximum of 8 bytes */ + "MSC Example", /* Product string. Maximum of 16 bytes */ + "1.0" /* Version string. Maximum of 4 bytes */ +}; + +/* This EP assignment must match the Configuration Descriptor */ +static acm_cfg_t acm_cfg = { + 2, /* EP OUT */ + MXC_USBHS_MAX_PACKET, /* OUT max packet size */ + 3, /* EP IN */ + MXC_USBHS_MAX_PACKET, /* IN max packet size */ + 4, /* EP Notify */ + MXC_USBHS_MAX_PACKET, /* Notify max packet size */ +}; + +static volatile int usb_read_complete; + +/* Functions to control "disk" memory. See msc.h for definitions. */ +static const msc_mem_t mem = { mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, + mscmem_Size, mscmem_Read, mscmem_Write }; + +/** + * User-supplied function to delay usec micro-seconds + * + * @param[in] usec The usec time to delay. + */ +void delay_us(unsigned int usec) +{ + /* mxc_delay() takes unsigned long, so can't use it directly */ + MXC_Delay(usec); +} + +/* ************************************************************************** */ +int main(void) +{ + maxusb_cfg_options_t usb_opts; + + printf("\n\n***** USB Composite Device (CDCACM and Mass Storage) Example *****\n"); + printf("Waiting for VBUS...\n"); + + /* Initialize state */ + configured = 0; + suspended = 0; + event_flags = 0; + remote_wake_en = 0; + + /* Start out in full speed */ + usb_opts.enable_hs = 1; /* 0:Full Speed 1:High Speed */ + usb_opts.delay_us = delay_us; /* Function which will be used for delays */ + usb_opts.init_callback = usbStartupCallback; + usb_opts.shutdown_callback = usbShutdownCallback; + + /* Initialize the usb module */ + if (MXC_USB_Init(&usb_opts) != 0) { + printf("usb_init() failed\n"); + while (1) {} + } + + /* Initialize the enumeration module */ + if (enum_init() != 0) { + printf("enum_init() failed\n"); + while (1) {} + } + + /* Register enumeration data */ + enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&composite_device_descriptor, 0); + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); + if (usb_opts.enable_hs) { + /* Two additional descriptors needed for high-speed operation */ + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor_hs, 0); + enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&composite_device_qualifier_descriptor, + 0); + } + enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); + enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); + enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); + enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); + enum_register_descriptor(ENUM_DESC_STRING, cdcacm_func_desc, 4); + enum_register_descriptor(ENUM_DESC_STRING, msc_func_desc, 5); + + /* Handle configuration */ + enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); + + /* Handle feature set/clear */ + enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); + enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); + + /* Initialize the class driver */ + if (msc_init(&composite_config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { + printf("msc_init() failed\n"); + while (1) {} + } + + if (acm_init(&composite_config_descriptor.comm_interface_descriptor) != 0) { + printf("acm_init() failed\n"); + while (1) {} + } + + /* Register callbacks */ + MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); + MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); + acm_register_callback(ACM_CB_READ_READY, usbReadCallback); + usb_read_complete = 0; + + /* Start with USB in low power mode */ + usbAppSleep(); + NVIC_EnableIRQ(USB_IRQn); + + /* Wait for events */ + while (1) { + echoUSB(); + + if (suspended || !configured) { + LED_Off(0); + } else { + LED_On(0); + } + + if (event_flags) { + /* Display events */ + if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); + printf("VBUS Disconnect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); + printf("VBUS Connect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); + printf("Bus Reset\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { /// + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); + printf("Bus Reset Done: %s speed\n", + (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); + printf("Suspended\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); + printf("Resume\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { + MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); + printf("Enumeration complete...\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { + MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); + printf("Remote Wakeup\n"); + } + } + } +} + +/******************************************************************************/ +static void echoUSB(void) +{ + int chars; + uint8_t buffer[BUFFER_SIZE]; + + if ((chars = acm_canread()) > 0) { + if (chars > BUFFER_SIZE) { + chars = BUFFER_SIZE; + } + + // Read the data from USB + if (acm_read(buffer, chars) != chars) { + printf("acm_read() failed\n"); + return; + } + + // Echo it back + if (acm_present()) { + if (acm_write(buffer, chars) != chars) { + printf("acm_write() failed\n"); + } + } + } +} + +/******************************************************************************/ +int usbStartupCallback(void) +{ + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clk_ctrl & MXC_F_GCR_CLK_CTRL_HIRC96_EN)) { + MXC_GCR->clk_ctrl |= MXC_F_GCR_CLK_CTRL_HIRC96_EN; + + if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLK_CTRL_HIRC96_RDY) != E_NO_ERROR) { + return E_TIME_OUT; + } + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +int usbShutdownCallback(void) +{ + MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/* ************************************************************************** */ + +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + /* Confirm the configuration value */ + if (sud->wValue == composite_config_descriptor.config_descriptor.bConfigurationValue) { + // on++; + configured = 1; + MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); + if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { /// + msc_cfg.out_ep = composite_config_descriptor_hs.endpoint_descriptor_1.bEndpointAddress & + 0x7; + msc_cfg.out_maxpacket = + composite_config_descriptor_hs.endpoint_descriptor_1.wMaxPacketSize; + msc_cfg.in_ep = composite_config_descriptor_hs.endpoint_descriptor_2.bEndpointAddress & + 0x7; + msc_cfg.in_maxpacket = + composite_config_descriptor_hs.endpoint_descriptor_2.wMaxPacketSize; + } else { + msc_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_1.bEndpointAddress & + 0x7; + msc_cfg.out_maxpacket = + composite_config_descriptor.endpoint_descriptor_1.wMaxPacketSize; + msc_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_2.bEndpointAddress & + 0x7; + msc_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_2.wMaxPacketSize; + } + + acm_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_4.bEndpointAddress & 0x7; + acm_cfg.out_maxpacket = composite_config_descriptor.endpoint_descriptor_4.wMaxPacketSize; + acm_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_5.bEndpointAddress & 0x7; + acm_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_5.wMaxPacketSize; + acm_cfg.notify_ep = composite_config_descriptor.endpoint_descriptor_3.bEndpointAddress & + 0x7; + acm_cfg.notify_maxpacket = composite_config_descriptor.endpoint_descriptor_3.wMaxPacketSize; + + msc_configure(&msc_cfg); + return acm_configure(&acm_cfg); + /* Configure the device class */ + } else if (sud->wValue == 0) { + configured = 0; + msc_deconfigure(); + return acm_deconfigure(); + } + + return -1; +} + +/* ************************************************************************** */ + +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 1; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/* ************************************************************************** */ + +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 0; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/* ************************************************************************** */ + +static void usbAppSleep(void) +{ + /* TODO: Place low-power code here */ + suspended = 1; +} + +/* ************************************************************************** */ + +static void usbAppWakeup(void) +{ + /* TODO: Place low-power code here */ + suspended = 0; +} + +/* ************************************************************************** */ +static int eventCallback(maxusb_event_t evt, void *data) +{ + /* Set event flag */ + MXC_SETBIT(&event_flags, evt); + + switch (evt) { + case MAXUSB_EVENT_NOVBUS: + MXC_USB_EventDisable(MAXUSB_EVENT_BRST); + MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); + MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); + MXC_USB_Disconnect(); + configured = 0; + enum_clearconfig(); + msc_deconfigure(); + acm_deconfigure(); + usbAppSleep(); + break; + case MAXUSB_EVENT_VBUS: + MXC_USB_EventClear(MAXUSB_EVENT_BRST); + MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); /// + MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, eventCallback, NULL); /// + MXC_USB_EventClear(MAXUSB_EVENT_SUSP); + MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); + MXC_USB_Connect(); + usbAppSleep(); + break; + case MAXUSB_EVENT_BRST: + usbAppWakeup(); + enum_clearconfig(); + msc_deconfigure(); + acm_deconfigure(); + configured = 0; + suspended = 0; + break; + case MAXUSB_EVENT_BRSTDN: /// + if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor_hs, + 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor, 0); + } else { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor_hs, + 0); + } + break; + case MAXUSB_EVENT_SUSP: + usbAppSleep(); + break; + case MAXUSB_EVENT_DPACT: + usbAppWakeup(); + break; + default: + break; + } + + return 0; +} + +/* ************************************************************************** */ + +void USB_IRQHandler(void) +{ + MXC_USB_EventHandler(); +} + +/******************************************************************************/ +static int usbReadCallback(void) +{ + usb_read_complete = 1; + return 0; +} diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.c b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.c new file mode 100644 index 00000000000..22424de1c94 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.c @@ -0,0 +1,312 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file mscmem.h + * @brief Memory routines used by the USB Mass Storage Class example. + * See the msc_mem_t structure in msc.h for function details. + * @details Functions are provided for using the internal RAM of the + * device or the external SPI flash memory. Use the SPIXF_DISK + * and RAM_DISK defines to select the desired memory at compile + * time. + */ + +#include "mscmem.h" +#include +#include +#include "Ext_Flash.h" +#include "spixf.h" + +/***** Definitions *****/ + +#define SPIXF_DISK 1 +#define RAM_DISK 0 + +#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ +#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ + +/***** Global Data *****/ + +/***** File Scope Variables *****/ + +static int initialized = 0; +static int running = 0; + +#if SPIXF_DISK + +#undef EXT_FLASH_BAUD +#define EXT_FLASH_BAUD 5000000 /* SPI clock rate to communicate with the external flash */ + +#define EXT_FLASH_SECTOR_SIZE 4096 /* Number of bytes in one sector of the external flash */ +#define EXT_FLASH_SECTOR_SIZE_SHIFT \ + 12 /* The shift value used to convert between addresses and block numbers */ +#define EXT_FLASH_NUM_SECTORS 2048 /* Total number of sectors in the external flash */ + +#define MXC_SPIXF_WIDTH Ext_Flash_DataLine_Single /*Number of data lines*/ + +#define LBA_PER_SECTOR (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) +#define INVALID_SECTOR \ + EXT_FLASH_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ + +/***** File Scope Variables *****/ +static uint32_t sectorNum = INVALID_SECTOR; +static uint8_t sector[EXT_FLASH_SECTOR_SIZE]; +static int sectorDirty = 0; + +/***** Function Prototypes *****/ +static uint32_t getSectorNum(uint32_t lba); +static uint32_t getSectorAddr(uint32_t lba); +static uint32_t getSector(uint32_t num); + +/******************************************************************************/ +static uint32_t getSectorNum(uint32_t lba) +{ + /* Absolute_address = lba * LBA_SIZE */ + /* Sector_num = Absolute_address / EXT_FLASH_SECTOR_SIZE */ + /* Sector_num = lba * 512 / 4096 */ + return lba >> (EXT_FLASH_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); +} + +/******************************************************************************/ +static uint32_t getSectorAddr(uint32_t lba) +{ + /* eight 512 byte blocks in each sector */ + return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; +} + +/******************************************************************************/ +static uint32_t getSector(uint32_t num) +{ + /* New sector requested? */ + if (sectorNum != num) { + /* Is the current sector real? */ + if (sectorNum != INVALID_SECTOR) { + /* Was it written to after it was read from memory? */ + if (sectorDirty) { + /* Erase the old data. */ + Ext_Flash_Erase(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, Ext_Flash_Erase_4K); + /* Write the new */ + Ext_Flash_Program_Page(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, + EXT_FLASH_SECTOR_SIZE, MXC_SPIXF_WIDTH); + /* Mark data as clean */ + sectorDirty = 0; + } + } + + /* Requesting a new valid sector? */ + if (num != INVALID_SECTOR) { + Ext_Flash_Read(num << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, EXT_FLASH_SECTOR_SIZE, + MXC_SPIXF_WIDTH); + sectorDirty = 0; + sectorNum = num; + } + } + + return 0; +} + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + MXC_SPIXF_SetSPIFrequency(EXT_FLASH_BAUD); + Ext_Flash_Init(); + Ext_Flash_Reset(); + + if (MXC_SPIXF_WIDTH == Ext_Flash_DataLine_Quad) { + Ext_Flash_Quad(1); + } else { + Ext_Flash_Quad(0); + } + + initialized = 1; + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + /* Get number of 512 byte chunks the external flash contains. */ + return (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) * EXT_FLASH_NUM_SECTORS; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to external flash sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from external flash */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(buffer, sector + addr, LBA_SIZE); + + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to external flash sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from external flash */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(sector + addr, buffer, LBA_SIZE); + sectorDirty = 1; + + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Turn on the external flash if it is not already. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the initialization succeeded. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* TODO - could shut down XIPF interface here. */ + + /* Flush the currently cached sector if necessary. */ + if (getSector(INVALID_SECTOR)) { + return 1; + } + + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#elif RAM_DISK + +#define NUM_PAGES 0x100 +static uint8_t mem[NUM_PAGES][LBA_SIZE]; + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + initialized = 1; +#if (ERASE_MEMORY_ON_INIT) + memset(mem, 0, sizeof(mem)); +#endif + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + return NUM_PAGES; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(buffer, mem[lba], LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(mem[lba], buffer, LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Not much to do for this implementation. The RAM is always ready. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the RAM has been initialized. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* Nothing to do for this implementation. All data is written as it is */ + /* received so there are no pending writes that need to be flushed. */ + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#else +#error "You must assign either RAM_DISK or SPIXF_DISK to 1." +#endif diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.h b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.h new file mode 100644 index 00000000000..43a2f65e185 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.h @@ -0,0 +1,84 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file mscmem.h + * @brief Memory routines used by the USB Mass Storage Class example. + * See the msc_mem_t structure in msc.h for function details. + */ + +#ifndef EXAMPLES_MAX32650_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ +#define EXAMPLES_MAX32650_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ + +#include + +/* **** Definitions **** */ +#define ERASE_MEMORY_ON_INIT \ + 1 /* Configuration option to clear the memory (to 0s) on initialization. */ +/* Use 1 to clear or 0 to leave untouched. */ +/** + * @brief Perform any initialization necessary to prepare the memory for reading/writing data. + * @returns 0 if initialization is successful, non-zero if an error occurred. + */ +int mscmem_Init(void); + +/** + * @brief Activates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Start(void); + +/** + * @brief Deactivates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Stop(void); + +/** + * @brief Reports the total size of the mass-storage memory. + * @returns The number of 512 byte blocks contained in the memory. + */ +uint32_t mscmem_Size(void); + +/** + * @brief Reads 512 bytes of data from the memory. + * @param lba The index of the 512 byte block to read. + * @param buffer A byte array of at least 512 bytes to hold the values read. + * @returns 0 if reading is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Read(uint32_t lba, uint8_t *buffer); + +/** + * @brief Writes 512 bytes of data to the memory. + * @param lba The index of the 512 byte block to write. + * @param buffer A byte array of at least 512 bytes holding the values to write. + * @returns 0 if writing is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Write(uint32_t lba, uint8_t *buffer); + +/** + * @brief Checks if the memory is ready to be read/written. + * @returns non-zero if the memory is ready, 0 otherwise. + */ +int mscmem_Ready(void); + +#endif // EXAMPLES_MAX32650_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/project.mk b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/project.mk new file mode 100644 index 00000000000..0097b7f23ad --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/project.mk @@ -0,0 +1,43 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +#BOARD=FTHR_RevA +# ^ For example, you can uncomment this line to make the +# project build for the "FTHR_RevA" board. + +# ********************************************************** + +# Add your config here! + +# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable MAXUSB library +LIB_MAXUSB=1 + +ifeq ($(BOARD),FTHR_APPS_A) +$(error ERR_NOTSUPPORTED: This example requires an external flash IC, therefore it's not supported on the MAX32650FTHR) +endif \ No newline at end of file diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.cproject b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.cproject similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.cproject rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.cproject diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.project b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.project similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.project rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.project diff --git a/Examples/MAX32650/USB/USB_MassStorage/.settings/language.settings.xml b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32650/USB/USB_MassStorage/.settings/language.settings.xml rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml diff --git a/Examples/MAX32650/USB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32650/USB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.core.prefs similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.core.prefs rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.core.prefs diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/README.md b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/.vscode/c_cpp_properties.json b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json similarity index 100% rename from Examples/MAX32650/USB/USB_HIDKeyboard/.vscode/c_cpp_properties.json rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32650/USB/USB_MassStorage/.vscode/flash.gdb b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_MassStorage/.vscode/flash.gdb rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/.vscode/launch.json b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_HIDKeyboard/.vscode/launch.json rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/launch.json diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/settings.json b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/settings.json new file mode 100644 index 00000000000..0e929bc45cc --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/settings.json @@ -0,0 +1,89 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32650", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32650.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32650/USB/USB_MassStorage/.vscode/tasks.json b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_MassStorage/.vscode/tasks.json rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/Makefile b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/Makefile new file mode 100644 index 00000000000..71bc32d20b4 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32650 +TARGET_UC := MAX32650 +TARGET_LC := max32650 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/README.md b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/README.md similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/README.md rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/README.md diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/USB_CompositeDevice_MSC_HID.launch b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/USB_CompositeDevice_MSC_HID.launch similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/USB_CompositeDevice_MSC_HID.launch rename to Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/USB_CompositeDevice_MSC_HID.launch diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/descriptors.h b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/descriptors.h new file mode 100644 index 00000000000..0dfe52e98e9 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/descriptors.h @@ -0,0 +1,215 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32650_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ +#define EXAMPLES_MAX32650_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ + +#include +#include "usb.h" +#include "hid_kbd.h" + +MXC_USB_device_descriptor_t __attribute__((aligned(4))) composite_device_descriptor = { + 0x12, /* bLength */ + 0x01, /* bDescriptorType = Device */ + 0x0200, + /* bcdUSB USB spec rev (BCD) */ /// + 0x00, /* bDeviceClass = code specified by interface descriptors */ + 0x00, /* bDeviceSubClass = code specified by interface descriptors */ + 0x00, /* bDeviceProtocol = code specified by interface descriptors */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x0B6A, /* idVendor (Maxim Integrated) */ + 0x003C, + /* idProduct */ /// + 0x0100, /* bcdDevice */ + 0x01, /* iManufacturer Descriptor ID */ + 0x02, /* iProduct Descriptor ID */ + 0x03, /* iSerialNumber Descriptor ID */ + 0x01 /* bNumConfigurations */ +}; + +/* Device qualifier needed for high-speed operation */ +MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) +composite_device_qualifier_descriptor = { + 0x0A, /* bLength = 10 */ + 0x01, /* bDescriptorType = Device Qualifier */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x00, /* bDeviceClass = Unspecified */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x01, /* bNumConfigurations */ + 0x00 /* Reserved, must be 0 */ +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #1 HID Keyboard */ + MXC_USB_interface_descriptor_t hid_interface_descriptor; + hid_descriptor_t hid_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; + /* Interface #2 Mass Storage Device */ + MXC_USB_interface_descriptor_t msc_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; +} + +composite_config_descriptor = { + { + 0x09, /* bLength */ + 0x02, /* bDescriptorType = Config */ + 0x0039, /* wTotalLength(L/H) = 57 bytes */ + 0x02, /* bNumInterfaces */ + 0x01, /* bConfigurationValue */ + 0x02, /* iConfiguration */ + 0xA0, /* bmAttributes (bus-powered, remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + /********** Interface #0 : HID Keyboard **********/ + { + /* First Interface Descriptor */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x03, /* bInterfaceClass = HID */ + 0x00, /* bInterfaceSubClass */ + 0x00, /* bInterfaceProtocol */ + 0x04, /* iInterface */ + }, + { + /* HID Descriptor */ + 0x09, /* bFunctionalLength */ + 0x21, /* bDescriptorType = HID */ + 0x0110, /* bcdHID Rev 1.1 */ + 0x00, /* bCountryCode */ + 0x01, /* bNumDescriptors */ + 0x22, /* bDescriptorType = Report */ + 0x002b, /* wDescriptorLength */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0040, /* wMaxPacketSize */ + 0x0a /* bInterval (milliseconds) */ + }, + /********** Interface #1 : Mass Storage Device **********/ + { + /* Second Interface Descriptor For MSC Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x01, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints (one for IN one for OUT) */ + 0x08, /* bInterfaceClass = Mass Storage (8) */ + 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ + 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ + 0x05, /* iInterface */ + }, + { + /* OUT Endpoint 1 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00 /* bInterval (N/A) */ + }, +}; + +__attribute__((aligned(4))) uint8_t report_descriptor[] = { + 0x05, 0x01, /* Usage Page (generic desktop) */ + 0x09, 0x06, /* Usage (keyboard) */ + 0xa1, 0x01, /* Collection */ + 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ + 0x19, 0xe0, /* Usage Minimum = 224 */ + 0x29, 0xe7, /* Usage Maximum = 231 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x01, /* Logical Maximum = 1 */ + 0x75, 0x01, /* Report Size = 1 */ + 0x95, 0x08, /* Report Count = 8 */ + 0x81, 0x02, /* Input(Data,Variable,Absolute) */ + 0x95, 0x01, /* Report Count = 1 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x81, 0x01, /* Input(Constant) */ + 0x19, 0x00, /* Usage Minimum = 0 */ + 0x29, 0x65, /* Usage Maximum = 101 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x65, /* Logical Maximum = 101 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x95, 0x01, /* Report Count = 1 */ + 0x81, 0x00, /* Input(Data,Variable,Array) */ + 0xc0 /* End Collection */ +}; + +__attribute__((aligned(4))) uint8_t lang_id_desc[] = { + 0x04, /* bLength */ + 0x03, /* bDescriptorType */ + 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ +}; + +__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, + 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t prod_id_desc[] = { + 0x34, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', + 0, 'C', 0, 'o', 0, 'm', 0, 'p', 0, 'o', 0, 's', 0, 'i', 0, 't', 0, + 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, +}; + +__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ + 0x03, /* bDescriptorType */ + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, + '0', 0, '0', 0, '0', 0, '1', 0 }; + +__attribute__((aligned(4))) uint8_t hidkbd_func_desc[] = { + 0x24, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', + 0, 'K', 0, 'e', 0, 'y', 0, 'b', 0, 'o', 0, 'a', 0, 'r', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t msc_func_desc[] = { + 0x3A, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', 0, 'M', + 0, 'a', 0, 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, + 'g', 0, 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, +}; + +#endif // EXAMPLES_MAX32650_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/main.c b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/main.c new file mode 100644 index 00000000000..c1ddb4baf17 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/main.c @@ -0,0 +1,401 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief USB composite device with Mass Storage driver class and HID driver class. +*/ + +#include +#include +#include "led.h" +#include "pb.h" +#include "mxc_delay.h" +#include "usb.h" +#include "usb_event.h" +#include "enumerate.h" +#include "hid_kbd.h" +#include "msc.h" +#include "descriptors.h" +#include "mscmem.h" + +/* **** Definitions **** */ +#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS +#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) + +/* **** Global Data **** */ +volatile int configured; +volatile int suspended; +volatile unsigned int event_flags; +int remote_wake_en; + +/* This EP assignment must match the Configuration Descriptor */ +static msc_cfg_t msc_cfg = { + 1, /* EP OUT */ + MXC_USBHS_MAX_PACKET, /* OUT max packet size */ + 2, /* EP IN */ + MXC_USBHS_MAX_PACKET, /* IN max packet size */ +}; + +static const msc_idstrings_t ids = { + "MAXIM", /* Vendor string. Maximum of 8 bytes */ + "MSC Example", /* Product string. Maximum of 16 bytes */ + "1.0" /* Version string. Maximum of 4 bytes */ +}; + +/* Functions to control "disk" memory. See msc.h for definitions. */ +static const msc_mem_t mem = { + mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, mscmem_Size, mscmem_Read, mscmem_Write, +}; + +/* **** Function Prototypes **** */ +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int eventCallback(maxusb_event_t evt, void *data); +static void usbAppSleep(void); +static void usbAppWakeup(void); +static void buttonCallback(void *pb); +int usbStartupCallback(void); +int usbShutdownCallback(void); + +/** + * User-supplied function to delay usec micro-seconds + * + * @param[in] usec The usec time to delay. + */ +void delay_us(unsigned int usec) +{ + /* mxc_delay() takes unsigned long, so can't use it directly */ + MXC_Delay(usec); +} + +/* ************************************************************************** */ + +void USB_IRQHandler(void) +{ + MXC_USB_EventHandler(); +} + +/* ************************************************************************** */ +int main(void) +{ + maxusb_cfg_options_t usb_opts; + + printf("\n\n***** USB Composite Device (Keyboard and Mass Storage) Example *****\n"); + printf("Waiting for VBUS...\n"); + + /* Initialize state */ + configured = 0; + suspended = 0; + event_flags = 0; + remote_wake_en = 0; + + /* Start out in full speed */ + usb_opts.enable_hs = 0; + usb_opts.delay_us = delay_us; /* Function which will be used for delays */ + usb_opts.init_callback = usbStartupCallback; + usb_opts.shutdown_callback = usbShutdownCallback; + + /* Initialize the usb module */ + if (MXC_USB_Init(&usb_opts) != 0) { + printf("usb_init() failed\n"); + + while (1) {} + } + + /* Initialize the enumeration module */ + if (enum_init() != 0) { + printf("enum_init() failed\n"); + + while (1) {} + } + + /* Register enumeration data */ + enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&composite_device_descriptor, 0); + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); + enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); + enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); + enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); + enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); + enum_register_descriptor(ENUM_DESC_STRING, hidkbd_func_desc, 4); + enum_register_descriptor(ENUM_DESC_STRING, msc_func_desc, 5); + + /* Handle configuration */ + enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); + + /* Handle feature set/clear */ + enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); + enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); + + /* Initialize the class driver */ + if (msc_init(&composite_config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { + printf("msc_init() failed\n"); + + while (1) {} + } + + if (hidkbd_init(&composite_config_descriptor.hid_interface_descriptor, + &composite_config_descriptor.hid_descriptor, report_descriptor) != 0) { + printf("hidkbd_init() failed\n"); + + while (1) {} + } + + /* Register callbacks */ + MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); + MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); + + /* Register callback for keyboard events */ + if (PB_RegisterCallback(0, buttonCallback) != E_NO_ERROR) { + printf("PB_RegisterCallback() failed\n"); + + while (1) {} + } + + /* Start with USB in low power mode */ + usbAppSleep(); + NVIC_EnableIRQ(USB_IRQn); + + /* Wait for events */ + while (1) { + if (suspended || !configured) { + LED_Off(0); + } else { + LED_On(0); + } + + if (event_flags) { + /* Display events */ + if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); + printf("VBUS Disconnect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); + printf("VBUS Connect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); + printf("Bus Reset\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); + printf("Suspended\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); + printf("Resume\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { + MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); + printf("Enumeration complete. Press SW2 to send character.\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { + MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); + printf("Remote Wakeup\n"); + } + } + } +} + +/******************************************************************************/ +int usbStartupCallback(void) +{ + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clk_ctrl & MXC_F_GCR_CLK_CTRL_HIRC96_EN)) { + MXC_GCR->clk_ctrl |= MXC_F_GCR_CLK_CTRL_HIRC96_EN; + + if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLK_CTRL_HIRC96_RDY) != E_NO_ERROR) { + return E_TIME_OUT; + } + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +int usbShutdownCallback(void) +{ + MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/* ************************************************************************** */ + +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 1; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/* ************************************************************************** */ + +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 0; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/* ************************************************************************** */ + +static void usbAppSleep(void) +{ + /* TODO: Place low-power code here */ + suspended = 1; +} + +/* ************************************************************************** */ + +static void usbAppWakeup(void) +{ + /* TODO: Place low-power code here */ + suspended = 0; +} + +/* ************************************************************************** */ + +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + /* Confirm the configuration value */ + if (sud->wValue == composite_config_descriptor.config_descriptor.bConfigurationValue) { + // on++; + configured = 1; + MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); + msc_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_1.bEndpointAddress & 0x7; + msc_cfg.out_maxpacket = composite_config_descriptor.endpoint_descriptor_1.wMaxPacketSize; + msc_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_2.bEndpointAddress & 0x7; + msc_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_2.wMaxPacketSize; + + msc_configure(&msc_cfg); + return hidkbd_configure(composite_config_descriptor.endpoint_descriptor_3.bEndpointAddress & + USB_EP_NUM_MASK); + } else if (sud->wValue == 0) { + configured = 0; + msc_deconfigure(); + return hidkbd_deconfigure(); + } + + return -1; +} + +/* ************************************************************************** */ + +static int eventCallback(maxusb_event_t evt, void *data) +{ + /* Set event flag */ + MXC_SETBIT(&event_flags, evt); + + switch (evt) { + case MAXUSB_EVENT_NOVBUS: + MXC_USB_EventDisable(MAXUSB_EVENT_BRST); + MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); + MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); + MXC_USB_Disconnect(); + configured = 0; + enum_clearconfig(); + hidkbd_deconfigure(); + msc_deconfigure(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_VBUS: + MXC_USB_EventClear(MAXUSB_EVENT_BRST); + MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_SUSP); + MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); + MXC_USB_Connect(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_BRST: + usbAppWakeup(); + enum_clearconfig(); + hidkbd_deconfigure(); + msc_deconfigure(); + configured = 0; + suspended = 0; + break; + + case MAXUSB_EVENT_SUSP: + usbAppSleep(); + break; + + case MAXUSB_EVENT_DPACT: + usbAppWakeup(); + break; + + default: + break; + } + + return 0; +} + +/* ************************************************************************** */ + +void buttonCallback(void *pb) +{ + static const uint8_t chars[] = "Maxim Integrated\n"; + static int i = 0; + int count = 0; + int button_pressed = 0; + + //determine if interrupt triggered by bounce or a true button press + while (PB_Get(0) && !button_pressed) { + count++; + + if (count > 1000) { + button_pressed = 1; + } + } + + if (button_pressed) { + LED_Toggle(0); + + if (configured) { + if (suspended && remote_wake_en) { + /* The bus is suspended. Wake up the host */ + suspended = 0; + usbAppWakeup(); + MXC_USB_RemoteWakeup(); + MXC_SETBIT(&event_flags, EVENT_REMOTE_WAKE); + } else { + if (i >= (sizeof(chars) - 1)) { + i = 0; + } + + hidkbd_keypress(chars[i++]); + } + } + } +} diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.c b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.c new file mode 100644 index 00000000000..4482c4e4bce --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.c @@ -0,0 +1,311 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file mscmem.h + * @brief Memory routines used by the USB Mass Storage Class example. + * See the msc_mem_t structure in msc.h for function details. + * @details Functions are provided for using the internal RAM of the + * device or the external SPI flash memory. Use the SPIXF_DISK + * and RAM_DISK defines to select the desired memory at compile + * time. + */ + +#include "mscmem.h" +#include +#include +#include "Ext_Flash.h" +#include "spixf.h" + +/***** Definitions *****/ + +#define SPIXF_DISK 1 +#define RAM_DISK 0 + +#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ +#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ + +/***** Global Data *****/ + +/***** File Scope Variables *****/ + +static int initialized = 0; +static int running = 0; + +#if SPIXF_DISK + +#define EXT_FLASH_BAUD 5000000 /* SPI clock rate to communicate with the external flash */ + +#define EXT_FLASH_SECTOR_SIZE 4096 /* Number of bytes in one sector of the external flash */ +#define EXT_FLASH_SECTOR_SIZE_SHIFT \ + 12 /* The shift value used to convert between addresses and block numbers */ +#define EXT_FLASH_NUM_SECTORS 2048 /* Total number of sectors in the external flash */ + +#define MXC_SPIXF_WIDTH Ext_Flash_DataLine_Single /*Number of data lines*/ + +#define LBA_PER_SECTOR (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) +#define INVALID_SECTOR \ + EXT_FLASH_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ + +/***** File Scope Variables *****/ +static uint32_t sectorNum = INVALID_SECTOR; +static uint8_t sector[EXT_FLASH_SECTOR_SIZE]; +static int sectorDirty = 0; + +/***** Function Prototypes *****/ +static uint32_t getSectorNum(uint32_t lba); +static uint32_t getSectorAddr(uint32_t lba); +static uint32_t getSector(uint32_t num); + +/******************************************************************************/ +static uint32_t getSectorNum(uint32_t lba) +{ + /* Absolute_address = lba * LBA_SIZE */ + /* Sector_num = Absolute_address / EXT_FLASH_SECTOR_SIZE */ + /* Sector_num = lba * 512 / 4096 */ + return lba >> (EXT_FLASH_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); +} + +/******************************************************************************/ +static uint32_t getSectorAddr(uint32_t lba) +{ + /* eight 512 byte blocks in each sector */ + return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; +} + +/******************************************************************************/ +static uint32_t getSector(uint32_t num) +{ + /* New sector requested? */ + if (sectorNum != num) { + /* Is the current sector real? */ + if (sectorNum != INVALID_SECTOR) { + /* Was it written to after it was read from memory? */ + if (sectorDirty) { + /* Erase the old data. */ + Ext_Flash_Erase(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, Ext_Flash_Erase_4K); + /* Write the new */ + Ext_Flash_Program_Page(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, + EXT_FLASH_SECTOR_SIZE, MXC_SPIXF_WIDTH); + /* Mark data as clean */ + sectorDirty = 0; + } + } + + /* Requesting a new valid sector? */ + if (num != INVALID_SECTOR) { + Ext_Flash_Read(num << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, EXT_FLASH_SECTOR_SIZE, + MXC_SPIXF_WIDTH); + sectorDirty = 0; + sectorNum = num; + } + } + + return 0; +} + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + MXC_SPIXF_SetSPIFrequency(EXT_FLASH_BAUD); + Ext_Flash_Init(); + Ext_Flash_Reset(); + + if (MXC_SPIXF_WIDTH == Ext_Flash_DataLine_Quad) { + Ext_Flash_Quad(1); + } else { + Ext_Flash_Quad(0); + } + + initialized = 1; + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + /* Get number of 512 byte chunks the external flash contains. */ + return (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) * EXT_FLASH_NUM_SECTORS; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to external flash sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from external flash */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(buffer, sector + addr, LBA_SIZE); + + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to external flash sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from external flash */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(sector + addr, buffer, LBA_SIZE); + sectorDirty = 1; + + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Turn on the external flash if it is not already. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the initialization succeeded. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* TODO - could shut down XIPF interface here. */ + + /* Flush the currently cached sector if necessary. */ + if (getSector(INVALID_SECTOR)) { + return 1; + } + + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#elif RAM_DISK + +#define NUM_PAGES 0x100 +static uint8_t mem[NUM_PAGES][LBA_SIZE]; + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + initialized = 1; +#if (ERASE_MEMORY_ON_INIT) + memset(mem, 0, sizeof(mem)); +#endif + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + return NUM_PAGES; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(buffer, mem[lba], LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(mem[lba], buffer, LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Not much to do for this implementation. The RAM is always ready. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the RAM has been initialized. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* Nothing to do for this implementation. All data is written as it is */ + /* received so there are no pending writes that need to be flushed. */ + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#else +#error "You must assign either RAM_DISK or SPIXF_DISK to 1." +#endif diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.h b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.h new file mode 100644 index 00000000000..b4002643a08 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.h @@ -0,0 +1,84 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file mscmem.h + * @brief Memory routines used by the USB Mass Storage Class example. + * See the msc_mem_t structure in msc.h for function details. + */ + +#ifndef EXAMPLES_MAX32650_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ +#define EXAMPLES_MAX32650_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ + +#include + +/* **** Definitions **** */ +#define ERASE_MEMORY_ON_INIT \ + 1 /* Configuration option to clear the memory (to 0s) on initialization. */ +/* Use 1 to clear or 0 to leave untouched. */ +/** + * @brief Perform any initialization necessary to prepare the memory for reading/writing data. + * @returns 0 if initialization is successful, non-zero if an error occurred. + */ +int mscmem_Init(void); + +/** + * @brief Activates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Start(void); + +/** + * @brief Deactivates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Stop(void); + +/** + * @brief Reports the total size of the mass-storage memory. + * @returns The number of 512 byte blocks contained in the memory. + */ +uint32_t mscmem_Size(void); + +/** + * @brief Reads 512 bytes of data from the memory. + * @param lba The index of the 512 byte block to read. + * @param buffer A byte array of at least 512 bytes to hold the values read. + * @returns 0 if reading is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Read(uint32_t lba, uint8_t *buffer); + +/** + * @brief Writes 512 bytes of data to the memory. + * @param lba The index of the 512 byte block to write. + * @param buffer A byte array of at least 512 bytes holding the values to write. + * @returns 0 if writing is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Write(uint32_t lba, uint8_t *buffer); + +/** + * @brief Checks if the memory is ready to be read/written. + * @returns non-zero if the memory is ready, 0 otherwise. + */ +int mscmem_Ready(void); + +#endif // EXAMPLES_MAX32650_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ diff --git a/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/project.mk b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/project.mk new file mode 100644 index 00000000000..b05c456680f --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_CompositeDevice_MSC_HID/project.mk @@ -0,0 +1,43 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +#BOARD=FTHR_RevA +# ^ For example, you can uncomment this line to make the +# project build for the "FTHR_RevA" board. + +# ********************************************************** + +# Add your config here! + +# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable MAXUSB library +LIB_MAXUSB=1 + +ifeq ($(BOARD),FTHR_APPS_A) +$(error ERR_NOTSUPPORTED: This example requires an an external flash IC, therefore it's not supported on the MAX32650FTHR) +endif diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/.cproject b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.cproject similarity index 100% rename from Examples/MAX32650/USB/USB_HIDKeyboard/.cproject rename to Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.cproject diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/.project b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.project similarity index 100% rename from Examples/MAX32650/USB/USB_HIDKeyboard/.project rename to Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.project diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/.settings/language.settings.xml b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32655/Bluetooth/BLE_fcc/.settings/language.settings.xml rename to Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.settings/language.settings.xml diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32655/Bluetooth/BLE_fcc/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.settings/org.eclipse.cdt.core.prefs similarity index 100% rename from Examples/MAX32650/USB/USB_HIDKeyboard/.settings/org.eclipse.cdt.core.prefs rename to Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.settings/org.eclipse.cdt.core.prefs diff --git a/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.vscode/README.md b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32650/USB/USB_MassStorage/.vscode/c_cpp_properties.json b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.vscode/c_cpp_properties.json similarity index 100% rename from Examples/MAX32650/USB/USB_MassStorage/.vscode/c_cpp_properties.json rename to Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/.vscode/flash.gdb b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32655/Bluetooth/BLE_fcc/.vscode/flash.gdb rename to Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.vscode/flash.gdb diff --git a/Examples/MAX32650/USB/USB_MassStorage/.vscode/launch.json b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_MassStorage/.vscode/launch.json rename to Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.vscode/launch.json diff --git a/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.vscode/settings.json b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.vscode/settings.json new file mode 100644 index 00000000000..0e929bc45cc --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.vscode/settings.json @@ -0,0 +1,89 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32650", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32650.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/.vscode/tasks.json b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32655/Bluetooth/BLE_fcc/.vscode/tasks.json rename to Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/.vscode/tasks.json diff --git a/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/Makefile b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/Makefile new file mode 100644 index 00000000000..6d97c8e0fb3 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32650 +TARGET_UC := MAX32650 +TARGET_LC := max32650 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/README.md b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/README.md similarity index 100% rename from Examples/MAX32650/USB/USB_HIDKeyboard/README.md rename to Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/README.md diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/USB_HIDKeyboard.launch b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/USB_HIDKeyboard.launch similarity index 100% rename from Examples/MAX32650/USB/USB_HIDKeyboard/USB_HIDKeyboard.launch rename to Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/USB_HIDKeyboard.launch diff --git a/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/descriptors.h b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/descriptors.h new file mode 100644 index 00000000000..182cdca3f84 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/descriptors.h @@ -0,0 +1,142 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32650_USB_MAXUSB_USB_HIDKEYBOARD_DESCRIPTORS_H_ +#define EXAMPLES_MAX32650_USB_MAXUSB_USB_HIDKEYBOARD_DESCRIPTORS_H_ + +#include +#include "usb.h" +#include "hid_kbd.h" + +MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { + 0x12, /* bLength */ + 0x01, /* bDescriptorType = Device */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x00, /* bDeviceClass = Unspecified */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x0B6A, /* idVendor (Maxim Integrated) */ + 0x003C, /* idProduct */ + 0x0100, /* bcdDevice */ + 0x01, /* iManufacturer Descriptor ID */ + 0x02, /* iProduct Descriptor ID */ + 0x03, /* iSerialNumber Descriptor ID */ + 0x01 /* bNumConfigurations */ +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + MXC_USB_interface_descriptor_t interface_descriptor; + hid_descriptor_t hid_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor; +} config_descriptor = { { + 0x09, /* bLength */ + 0x02, /* bDescriptorType = Config */ + 0x0022, /* wTotalLength(L/H) = 34 bytes */ + 0x01, /* bNumInterfaces */ + 0x01, /* bConfigurationValue */ + 0x00, /* iConfiguration */ + 0xA0, /* bmAttributes (bus-powered, remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + { + /* First Interface Descriptor */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x03, /* bInterfaceClass = HID */ + 0x00, /* bInterfaceSubClass */ + 0x00, /* bInterfaceProtocol */ + 0x00, /* iInterface */ + }, + { + /* HID Descriptor */ + 0x09, /* bFunctionalLength */ + 0x21, /* bDescriptorType = HID */ + 0x0110, /* bcdHID Rev 1.1 */ + 0x00, /* bCountryCode */ + 0x01, /* bNumDescriptors */ + 0x22, /* bDescriptorType = Report */ + 0x002b, /* wDescriptorLength */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0040, /* wMaxPacketSize */ + 0x0a /* bInterval (milliseconds) */ + } }; + +__attribute__((aligned(4))) uint8_t report_descriptor[] = { + 0x05, 0x01, /* Usage Page (generic desktop) */ + 0x09, 0x06, /* Usage (keyboard) */ + 0xa1, 0x01, /* Collection */ + 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ + 0x19, 0xe0, /* Usage Minimum = 224 */ + 0x29, 0xe7, /* Usage Maximum = 231 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x01, /* Logical Maximum = 1 */ + 0x75, 0x01, /* Report Size = 1 */ + 0x95, 0x08, /* Report Count = 8 */ + 0x81, 0x02, /* Input(Data,Variable,Absolute) */ + 0x95, 0x01, /* Report Count = 1 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x81, 0x01, /* Input(Constant) */ + 0x19, 0x00, /* Usage Minimum = 0 */ + 0x29, 0x65, /* Usage Maximum = 101 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x65, /* Logical Maximum = 101 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x95, 0x01, /* Report Count = 1 */ + 0x81, 0x00, /* Input(Data,Variable,Array) */ + 0xc0 /* End Collection */ +}; + +__attribute__((aligned(4))) uint8_t lang_id_desc[] = { + 0x04, /* bLength */ + 0x03, /* bDescriptorType */ + 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ +}; + +__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, + 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t prod_id_desc[] = { + 0x2c, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', 0, ' ', 0, 'H', 0, 'I', 0, + 'D', 0, ' ', 0, 'K', 0, 'e', 0, 'y', 0, 'b', 0, 'o', 0, 'a', 0, 'r', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x20, /* bLength */ + 0x03, /* bDescriptorType */ + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, + '0', 0, '0', 0, '0', 0, '1', 0 }; + +#endif // EXAMPLES_MAX32650_USB_MAXUSB_USB_HIDKEYBOARD_DESCRIPTORS_H_ diff --git a/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/main.c b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/main.c new file mode 100644 index 00000000000..a6b6e3f5eb5 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/main.c @@ -0,0 +1,360 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Demonstrates how to configure a the USB device controller as a HID keyboard class device + * @details The EvKit should enumerate as a HID Keyboard device after loading the project and + * attaching a cable from the PC to the USB connector on the Evaluation Kit. + * 1. LED0 (P2.17) will illuminate once enumeration and configuration is complete. + * 2. Open a text editor on the PC host and place cursor in edit box. + * 3. Pressing pushbutton SW1 (P0.16) will cause a message to be typed in on a virtual keyboard one character at a time. + * + */ + +#include +#include +#include "led.h" +#include "pb.h" +#include "mxc_delay.h" +#include "usb.h" +#include "usb_event.h" +#include "enumerate.h" +#include "hid_kbd.h" +#include "descriptors.h" +#include "gcr_regs.h" +#include "mxc_sys.h" + +/***** Definitions *****/ +#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS +#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) + +/***** Global Data *****/ +int remoteWake; +volatile int configured; +volatile int suspended; +volatile unsigned int evtFlags; + +/***** Function Prototypes *****/ +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int eventCallback(maxusb_event_t evt, void *data); +static void usbAppSleep(void); +static void usbAppWakeup(void); +static void buttonCallback(void *pb); +void usDelay(unsigned int usec); +int usbStartupCallback(void); +int usbShutdownCallback(void); + +/******************************************************************************/ +void USB_IRQHandler(void) +{ + MXC_USB_EventHandler(); +} + +/******************************************************************************/ +int main(void) +{ + maxusb_cfg_options_t usb_opts; + + printf("\n\n***** USB HID Keyboard Example *****\n"); + printf("Waiting for VBUS...\n"); + + /* Initialize state */ + configured = 0; + suspended = 0; + evtFlags = 0; + remoteWake = 0; + + /* Start out in full speed */ + usb_opts.enable_hs = 0; + usb_opts.delay_us = usDelay; /* Function which will be used for delays */ + usb_opts.init_callback = usbStartupCallback; + usb_opts.shutdown_callback = usbShutdownCallback; + + /* Initialize the usb module */ + if (MXC_USB_Init(&usb_opts) != 0) { + printf("MXC_USB_Init() failed\n"); + + while (1) {} + } + + /* Initialize the enumeration module */ + if (enum_init() != 0) { + printf("enum_init() failed\n"); + + while (1) {} + } + + /* Register enumeration data */ + enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); + enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); + enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); + enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); + enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); + + /* Handle configuration */ + enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); + + /* Handle feature set/clear */ + enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); + enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); + + /* Initialize the class driver */ + if (hidkbd_init(&config_descriptor.interface_descriptor, &config_descriptor.hid_descriptor, + report_descriptor) != 0) { + printf("hidkbd_init() failed\n"); + + while (1) {} + } + + /* Register callbacks */ + MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); + MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); + + /* Register callback for keyboard events */ + if (PB_RegisterCallback(0, buttonCallback) != E_NO_ERROR) { + printf("PB_RegisterCallback() failed\n"); + + while (1) {} + } + + /* Start with USB in low power mode */ + usbAppSleep(); + NVIC_EnableIRQ(USB_IRQn); + + /* Wait for events */ + while (1) { + if (suspended || !configured) { + LED_Off(0); + } else { + LED_On(0); + } + + if (evtFlags) { + /* Display events */ + if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_NOVBUS)) { + MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_NOVBUS); + printf("VBUS Disconnect\n"); + } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_VBUS)) { + MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_VBUS); + printf("VBUS Connect\n"); + } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_BRST)) { + MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_BRST); + printf("Bus Reset\n"); + } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_SUSP)) { + MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_SUSP); + printf("Suspended\n"); + } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_DPACT)) { + MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_DPACT); + printf("Resume\n"); + } else if (MXC_GETBIT(&evtFlags, EVENT_ENUM_COMP)) { + MXC_CLRBIT(&evtFlags, EVENT_ENUM_COMP); + printf("Enumeration complete. Press SW2 to send character.\n"); + } else if (MXC_GETBIT(&evtFlags, EVENT_REMOTE_WAKE)) { + MXC_CLRBIT(&evtFlags, EVENT_REMOTE_WAKE); + printf("Remote Wakeup\n"); + } + } + } +} + +/******************************************************************************/ +int usbStartupCallback(void) +{ + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clk_ctrl & MXC_F_GCR_CLK_CTRL_HIRC96_EN)) { + MXC_GCR->clk_ctrl |= MXC_F_GCR_CLK_CTRL_HIRC96_EN; + + if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLK_CTRL_HIRC96_RDY) != E_NO_ERROR) { + return E_TIME_OUT; + } + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +int usbShutdownCallback(void) +{ + MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +/* User-supplied function to delay usec micro-seconds */ +void usDelay(unsigned int usec) +{ + /* mxc_delay() takes unsigned long, so can't use it directly */ + MXC_Delay(usec); +} + +/******************************************************************************/ +static void usbAppSleep(void) +{ + /* TODO: Place low-power code here */ + suspended = 1; +} + +/******************************************************************************/ +static void usbAppWakeup(void) +{ + /* TODO: Place low-power code here */ + suspended = 0; +} + +/******************************************************************************/ +static void buttonCallback(void *pb) +{ + static const uint8_t chars[] = "Maxim Integrated\n"; + static int i = 0; + int count = 0; + int button_pressed = 0; + + //determine if interrupt triggered by bounce or a true button press + while (PB_Get(0) && !button_pressed) { + count++; + + if (count > 1000) { + button_pressed = 1; + } + } + + if (button_pressed) { + LED_Toggle(0); + + if (configured) { + if (suspended && remoteWake) { + /* The bus is suspended. Wake up the host */ + suspended = 0; + usbAppWakeup(); + MXC_USB_RemoteWakeup(); + MXC_SETBIT(&evtFlags, EVENT_REMOTE_WAKE); + } else { + if (i >= (sizeof(chars) - 1)) { + i = 0; + } + + hidkbd_keypress(chars[i++]); + } + } + } +} + +/******************************************************************************/ +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + /* Confirm the configuration value */ + if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { + configured = 1; + MXC_SETBIT(&evtFlags, EVENT_ENUM_COMP); + return hidkbd_configure(config_descriptor.endpoint_descriptor.bEndpointAddress & + USB_EP_NUM_MASK); + } else if (sud->wValue == 0) { + configured = 0; + return hidkbd_deconfigure(); + } + + return -1; +} + +/******************************************************************************/ +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remoteWake = 1; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/******************************************************************************/ +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remoteWake = 0; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/******************************************************************************/ +static int eventCallback(maxusb_event_t evt, void *data) +{ + /* Set event flag */ + MXC_SETBIT(&evtFlags, evt); + + switch (evt) { + case MAXUSB_EVENT_NOVBUS: + MXC_USB_EventDisable(MAXUSB_EVENT_BRST); + MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); + MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); + MXC_USB_Disconnect(); + configured = 0; + enum_clearconfig(); + hidkbd_deconfigure(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_VBUS: + MXC_USB_EventClear(MAXUSB_EVENT_BRST); + MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_SUSP); + MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); + MXC_USB_Connect(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_BRST: + usbAppWakeup(); + enum_clearconfig(); + hidkbd_deconfigure(); + configured = 0; + suspended = 0; + break; + + case MAXUSB_EVENT_SUSP: + usbAppSleep(); + break; + + case MAXUSB_EVENT_DPACT: + usbAppWakeup(); + break; + + default: + break; + } + + return 0; +} diff --git a/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/project.mk b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/project.mk new file mode 100644 index 00000000000..88f625a6bf9 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_HIDKeyboard/project.mk @@ -0,0 +1,39 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +#BOARD=FTHR_RevA +# ^ For example, you can uncomment this line to make the +# project build for the "FTHR_RevA" board. + +# ********************************************************** + +# Add your config here! + +# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable MAXUSB library +LIB_MAXUSB=1 diff --git a/Examples/MAX32650/USB/USB_MassStorage/.cproject b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.cproject similarity index 100% rename from Examples/MAX32650/USB/USB_MassStorage/.cproject rename to Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.cproject diff --git a/Examples/MAX32650/USB/USB_MassStorage/.project b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.project similarity index 100% rename from Examples/MAX32650/USB/USB_MassStorage/.project rename to Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.project diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/.settings/language.settings.xml b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32665/Bluetooth/BLE_fcc/.settings/language.settings.xml rename to Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.settings/language.settings.xml diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32665/Bluetooth/BLE_fcc/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32650/USB/USB_MassStorage/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.settings/org.eclipse.cdt.core.prefs similarity index 100% rename from Examples/MAX32650/USB/USB_MassStorage/.settings/org.eclipse.cdt.core.prefs rename to Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.settings/org.eclipse.cdt.core.prefs diff --git a/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.vscode/README.md b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/.vscode/c_cpp_properties.json b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.vscode/c_cpp_properties.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32655/Bluetooth/BLE_fcc/.vscode/c_cpp_properties.json rename to Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/.vscode/flash.gdb b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/Bluetooth/BLE_fcc/.vscode/flash.gdb rename to Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.vscode/flash.gdb diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/.vscode/launch.json b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32655/Bluetooth/BLE_fcc/.vscode/launch.json rename to Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.vscode/launch.json diff --git a/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.vscode/settings.json b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.vscode/settings.json new file mode 100644 index 00000000000..0e929bc45cc --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.vscode/settings.json @@ -0,0 +1,89 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32650", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32650.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/.vscode/tasks.json b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/Bluetooth/BLE_fcc/.vscode/tasks.json rename to Examples/MAX32650/USB/MAXUSB/USB_MassStorage/.vscode/tasks.json diff --git a/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/Makefile b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/Makefile new file mode 100644 index 00000000000..6d97c8e0fb3 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32650 +TARGET_UC := MAX32650 +TARGET_LC := max32650 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32650/USB/USB_MassStorage/README.md b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/README.md similarity index 100% rename from Examples/MAX32650/USB/USB_MassStorage/README.md rename to Examples/MAX32650/USB/MAXUSB/USB_MassStorage/README.md diff --git a/Examples/MAX32650/USB/USB_MassStorage/USB_MassStorage.launch b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/USB_MassStorage.launch similarity index 100% rename from Examples/MAX32650/USB/USB_MassStorage/USB_MassStorage.launch rename to Examples/MAX32650/USB/MAXUSB/USB_MassStorage/USB_MassStorage.launch diff --git a/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/descriptors.h b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/descriptors.h new file mode 100644 index 00000000000..12d561a0cfc --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/descriptors.h @@ -0,0 +1,180 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32650_USB_MAXUSB_USB_MASSSTORAGE_DESCRIPTORS_H_ +#define EXAMPLES_MAX32650_USB_MAXUSB_USB_MASSSTORAGE_DESCRIPTORS_H_ + +#include +#include "usb.h" +#include "hid_kbd.h" + +MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { + 0x12, /* bLength = 18 */ + 0x01, /* bDescriptorType = Device */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x00, /* bDeviceClass = Unspecified */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x0B6A, /* idVendor (Maxim Integrated) */ + 0x4402, /* idProduct */ + 0x0100, /* bcdDevice */ + 0x01, /* iManufacturer Descriptor ID */ + 0x02, /* iProduct Descriptor ID */ + 0x03, /* iSerialNumber = (0) No string */ + 0x01 /* bNumConfigurations */ +}; + +/* Device qualifier needed for high-speed operation */ +MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) device_qualifier_descriptor = { + 0x0A, /* bLength = 10 */ + 0x06, /* bDescriptorType = Device Qualifier */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x00, /* bDeviceClass = Unspecified */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x01, /* bNumConfigurations */ + 0x00 /* Reserved, must be 0 */ +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #0 Mass Storage Device */ + MXC_USB_interface_descriptor_t msc_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; +} config_descriptor = { { + 0x09, /* bLength = 9 */ + 0x02, /* bDescriptorType = Config (2) */ + 0x0020, /* wTotalLength(L/H) */ + 0x01, /* bNumInterfaces */ + 0x01, /* bConfigValue */ + 0x00, /* iConfiguration */ + 0xC0, /* bmAttributes (self-powered, no remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + { + /* First Interface Descriptor For MSC Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints (one for INm one for OUT) */ + 0x08, /* bInterfaceClass = Mass Storage (8) */ + 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ + 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ + 0x00, /* iInterface */ + }, + { + /* OUT Endpoint 1 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00 /* bInterval (N/A) */ + } }; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #0 Mass Storage Device */ + MXC_USB_interface_descriptor_t msc_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; +} config_descriptor_hs = { { + 0x09, /* bLength = 9 */ + 0x02, /* bDescriptorType = Config (2) */ + 0x0020, /* wTotalLength(L/H) */ + 0x01, /* bNumInterfaces */ + 0x01, /* bConfigValue */ + 0x00, /* iConfiguration */ + 0xC0, /* bmAttributes (self-powered, no remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + { + /* First Interface Descriptor For MSC Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints (one for INm one for OUT) */ + 0x08, /* bInterfaceClass = Mass Storage (8) */ + 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ + 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ + 0x00, /* iInterface */ + }, + { + /* OUT Endpoint 1 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x01, /* bInterval */ + }, + { + /* IN Endpoint 2 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x01 /* bInterval */ + } }; + +__attribute__((aligned(4))) uint8_t lang_id_desc[] = { + 0x04, /* bLength */ + 0x03, /* bDescriptorType */ + 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ +}; + +__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, + 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t prod_id_desc[] = { + 0x38, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, 'U', 0, 'S', 0, 'B', 0, ' ', 0, 'M', 0, 'a', 0, + 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, 'g', 0, + 'e', 0, ' ', 0, 'E', 0, 'x', 0, 'a', 0, 'm', 0, 'p', 0, 'l', 0, 'e', 0, +}; + +/* Not currently used (see device descriptor), but could be enabled if desired */ +__attribute__((aligned(4))) +uint8_t serial_id_desc[] = { 26, /* bLength */ + 0x03, /* bDescriptorType */ + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, '1', 0 }; + +#endif // EXAMPLES_MAX32650_USB_MAXUSB_USB_MASSSTORAGE_DESCRIPTORS_H_ diff --git a/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/main.c b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/main.c new file mode 100644 index 00000000000..455f67c2346 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/main.c @@ -0,0 +1,365 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief USB Mass Storage Class example + * @details This project creates a mass storage device using either on-board RAM or + * external SPI flash memory. Load the project, connect a cable from the PC + * to the USB connector. A new external drive should appear than can be read + * and written. + */ + +#include +#include +#include "mxc_sys.h" +#include "mxc_delay.h" +#include "board.h" +#include "led.h" +#include "usb.h" +#include "usb_event.h" +#include "enumerate.h" +#include "msc.h" +#include "descriptors.h" +#include "mscmem.h" + +/***** Definitions *****/ +#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS +#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) + +#define BUFFER_SIZE 64 + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) + +/***** Global Data *****/ +volatile int configured; +volatile int suspended; +volatile unsigned int event_flags; +int remote_wake_en; + +/***** Function Prototypes *****/ +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int eventCallback(maxusb_event_t evt, void *data); +static void usbAppSleep(void); +static void usbAppWakeup(void); +int usbStartupCallback(void); +int usbShutdownCallback(void); + +/***** File Scope Variables *****/ + +/* Defaults, which will be changed by the configuration code */ +static msc_cfg_t msc_cfg = { + 1, /* EP OUT */ + MXC_USBHS_MAX_PACKET, /* OUT max packet size */ + 2, /* EP IN */ + MXC_USBHS_MAX_PACKET, /* IN max packet size */ +}; + +static const msc_idstrings_t ids = { + "MAXIM", /* Vendor string. Maximum of 8 bytes */ + "MSC Example", /* Product string. Maximum of 16 bytes */ + "1.0" /* Version string. Maximum of 4 bytes */ +}; + +/* Functions to control "disk" memory. See msc.h for definitions. */ +static const msc_mem_t mem = { + mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, mscmem_Size, mscmem_Read, mscmem_Write, +}; + +/* User-supplied function to delay usec micro-seconds */ +void delay_us(unsigned int usec) +{ + /* mxc_delay() takes unsigned long, so can't use it directly */ + MXC_Delay(usec); +} + +/******************************************************************************/ +int main(void) +{ + maxusb_cfg_options_t usb_opts; + + printf("\n\n***** USB Mass Storage Example *****\n"); + printf("Waiting for VBUS...\n"); + + /* Initialize state */ + configured = 0; + suspended = 0; + event_flags = 0; + remote_wake_en = 0; + + /* Start out in full speed */ + usb_opts.enable_hs = 1; + usb_opts.delay_us = delay_us; /* Function which will be used for delays */ + usb_opts.init_callback = usbStartupCallback; + usb_opts.shutdown_callback = usbShutdownCallback; + + /* Initialize the usb module */ + if (MXC_USB_Init(&usb_opts) != 0) { + printf("usb_init() failed\n"); + while (1) {} + } + + /* Initialize the enumeration module */ + if (enum_init() != 0) { + printf("enum_init() failed\n"); + while (1) {} + } + + /* Register enumeration data */ + enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); + + if (usb_opts.enable_hs) { + /* Two additional descriptors needed for high-speed operation */ + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); + enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&device_qualifier_descriptor, 0); + } + + enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); + enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); + enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); + enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); + + /* Handle configuration */ + enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); + + /* Handle feature set/clear */ + enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); + enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); + + /* Initialize the class driver */ + if (msc_init(&config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { + printf("msc_init() failed\n"); + while (1) {} + } + + /* Register callbacks */ + MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); + MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); + + /* Start with USB in low power mode */ + usbAppSleep(); + NVIC_EnableIRQ(USB_IRQn); + + /* Wait for events */ + while (1) { + if (suspended || !configured) { + LED_Off(0); + } else { + LED_On(0); + } + + if (event_flags) { + /* Display events */ + if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); + printf("VBUS Disconnect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); + printf("VBUS Connect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); + printf("Bus Reset\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); + printf("Bus Reset Done: %s speed\n", + (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); + printf("Suspended\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); + printf("Resume\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { + MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); + printf("Enumeration complete.\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { + MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); + printf("Remote Wakeup\n"); + } + } + } +} + +/******************************************************************************/ +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + /* Confirm the configuration value */ + if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { + configured = 1; + MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); + + if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { + msc_cfg.out_ep = config_descriptor_hs.endpoint_descriptor_1.bEndpointAddress & 0x7; + msc_cfg.out_maxpacket = config_descriptor_hs.endpoint_descriptor_1.wMaxPacketSize; + msc_cfg.in_ep = config_descriptor_hs.endpoint_descriptor_2.bEndpointAddress & 0x7; + msc_cfg.in_maxpacket = config_descriptor_hs.endpoint_descriptor_2.wMaxPacketSize; + } else { + msc_cfg.out_ep = config_descriptor.endpoint_descriptor_1.bEndpointAddress & 0x7; + msc_cfg.out_maxpacket = config_descriptor.endpoint_descriptor_1.wMaxPacketSize; + msc_cfg.in_ep = config_descriptor.endpoint_descriptor_2.bEndpointAddress & 0x7; + msc_cfg.in_maxpacket = config_descriptor.endpoint_descriptor_2.wMaxPacketSize; + } + + return msc_configure(&msc_cfg); /* Configure the device class */ + + } else if (sud->wValue == 0) { + configured = 0; + return msc_deconfigure(); + } + + return -1; +} + +/******************************************************************************/ +int usbStartupCallback(void) +{ + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clk_ctrl & MXC_F_GCR_CLK_CTRL_HIRC96_EN)) { + MXC_GCR->clk_ctrl |= MXC_F_GCR_CLK_CTRL_HIRC96_EN; + + if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLK_CTRL_HIRC96_RDY) != E_NO_ERROR) { + return E_TIME_OUT; + } + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +int usbShutdownCallback(void) +{ + MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 1; + } else { + /* Unknown callback */ + return -1; + } + + return 0; +} + +/******************************************************************************/ +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 0; + } else { + /* Unknown callback */ + return -1; + } + + return 0; +} + +/******************************************************************************/ +static void usbAppSleep(void) +{ + /* TODO: Place low-power code here */ + suspended = 1; +} + +/******************************************************************************/ +static void usbAppWakeup(void) +{ + /* TODO: Place low-power code here */ + suspended = 0; +} + +/******************************************************************************/ +static int eventCallback(maxusb_event_t evt, void *data) +{ + /* Set event flag */ + MXC_SETBIT(&event_flags, evt); + + switch (evt) { + case MAXUSB_EVENT_NOVBUS: + MXC_USB_EventDisable(MAXUSB_EVENT_BRST); + MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); + MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); + MXC_USB_Disconnect(); + configured = 0; + enum_clearconfig(); + msc_deconfigure(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_VBUS: + MXC_USB_EventClear(MAXUSB_EVENT_BRST); + MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); + MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_SUSP); + MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); + MXC_USB_Connect(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_BRST: + usbAppWakeup(); + enum_clearconfig(); + msc_deconfigure(); + configured = 0; + suspended = 0; + break; + + case MAXUSB_EVENT_BRSTDN: + if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor_hs, 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor, 0); + } else { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); + } + break; + + case MAXUSB_EVENT_SUSP: + usbAppSleep(); + break; + + case MAXUSB_EVENT_DPACT: + usbAppWakeup(); + break; + + default: + break; + } + + return 0; +} + +/******************************************************************************/ +void USB_IRQHandler(void) +{ + MXC_USB_EventHandler(); +} diff --git a/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/mscmem.c b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/mscmem.c new file mode 100644 index 00000000000..22424de1c94 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/mscmem.c @@ -0,0 +1,312 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file mscmem.h + * @brief Memory routines used by the USB Mass Storage Class example. + * See the msc_mem_t structure in msc.h for function details. + * @details Functions are provided for using the internal RAM of the + * device or the external SPI flash memory. Use the SPIXF_DISK + * and RAM_DISK defines to select the desired memory at compile + * time. + */ + +#include "mscmem.h" +#include +#include +#include "Ext_Flash.h" +#include "spixf.h" + +/***** Definitions *****/ + +#define SPIXF_DISK 1 +#define RAM_DISK 0 + +#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ +#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ + +/***** Global Data *****/ + +/***** File Scope Variables *****/ + +static int initialized = 0; +static int running = 0; + +#if SPIXF_DISK + +#undef EXT_FLASH_BAUD +#define EXT_FLASH_BAUD 5000000 /* SPI clock rate to communicate with the external flash */ + +#define EXT_FLASH_SECTOR_SIZE 4096 /* Number of bytes in one sector of the external flash */ +#define EXT_FLASH_SECTOR_SIZE_SHIFT \ + 12 /* The shift value used to convert between addresses and block numbers */ +#define EXT_FLASH_NUM_SECTORS 2048 /* Total number of sectors in the external flash */ + +#define MXC_SPIXF_WIDTH Ext_Flash_DataLine_Single /*Number of data lines*/ + +#define LBA_PER_SECTOR (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) +#define INVALID_SECTOR \ + EXT_FLASH_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ + +/***** File Scope Variables *****/ +static uint32_t sectorNum = INVALID_SECTOR; +static uint8_t sector[EXT_FLASH_SECTOR_SIZE]; +static int sectorDirty = 0; + +/***** Function Prototypes *****/ +static uint32_t getSectorNum(uint32_t lba); +static uint32_t getSectorAddr(uint32_t lba); +static uint32_t getSector(uint32_t num); + +/******************************************************************************/ +static uint32_t getSectorNum(uint32_t lba) +{ + /* Absolute_address = lba * LBA_SIZE */ + /* Sector_num = Absolute_address / EXT_FLASH_SECTOR_SIZE */ + /* Sector_num = lba * 512 / 4096 */ + return lba >> (EXT_FLASH_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); +} + +/******************************************************************************/ +static uint32_t getSectorAddr(uint32_t lba) +{ + /* eight 512 byte blocks in each sector */ + return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; +} + +/******************************************************************************/ +static uint32_t getSector(uint32_t num) +{ + /* New sector requested? */ + if (sectorNum != num) { + /* Is the current sector real? */ + if (sectorNum != INVALID_SECTOR) { + /* Was it written to after it was read from memory? */ + if (sectorDirty) { + /* Erase the old data. */ + Ext_Flash_Erase(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, Ext_Flash_Erase_4K); + /* Write the new */ + Ext_Flash_Program_Page(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, + EXT_FLASH_SECTOR_SIZE, MXC_SPIXF_WIDTH); + /* Mark data as clean */ + sectorDirty = 0; + } + } + + /* Requesting a new valid sector? */ + if (num != INVALID_SECTOR) { + Ext_Flash_Read(num << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, EXT_FLASH_SECTOR_SIZE, + MXC_SPIXF_WIDTH); + sectorDirty = 0; + sectorNum = num; + } + } + + return 0; +} + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + MXC_SPIXF_SetSPIFrequency(EXT_FLASH_BAUD); + Ext_Flash_Init(); + Ext_Flash_Reset(); + + if (MXC_SPIXF_WIDTH == Ext_Flash_DataLine_Quad) { + Ext_Flash_Quad(1); + } else { + Ext_Flash_Quad(0); + } + + initialized = 1; + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + /* Get number of 512 byte chunks the external flash contains. */ + return (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) * EXT_FLASH_NUM_SECTORS; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to external flash sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from external flash */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(buffer, sector + addr, LBA_SIZE); + + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to external flash sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from external flash */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(sector + addr, buffer, LBA_SIZE); + sectorDirty = 1; + + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Turn on the external flash if it is not already. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the initialization succeeded. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* TODO - could shut down XIPF interface here. */ + + /* Flush the currently cached sector if necessary. */ + if (getSector(INVALID_SECTOR)) { + return 1; + } + + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#elif RAM_DISK + +#define NUM_PAGES 0x100 +static uint8_t mem[NUM_PAGES][LBA_SIZE]; + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + initialized = 1; +#if (ERASE_MEMORY_ON_INIT) + memset(mem, 0, sizeof(mem)); +#endif + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + return NUM_PAGES; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(buffer, mem[lba], LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(mem[lba], buffer, LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Not much to do for this implementation. The RAM is always ready. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the RAM has been initialized. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* Nothing to do for this implementation. All data is written as it is */ + /* received so there are no pending writes that need to be flushed. */ + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#else +#error "You must assign either RAM_DISK or SPIXF_DISK to 1." +#endif diff --git a/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/mscmem.h b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/mscmem.h new file mode 100644 index 00000000000..84547fa1319 --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/mscmem.h @@ -0,0 +1,84 @@ +/** + * @file + * @brief Memory routines used by the USB Mass Storage Class example. + * See the @ref msc_mem_t structure in msc.h for function details. + */ + +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#ifndef EXAMPLES_MAX32650_USB_MAXUSB_USB_MASSSTORAGE_MSCMEM_H_ +#define EXAMPLES_MAX32650_USB_MAXUSB_USB_MASSSTORAGE_MSCMEM_H_ + +/* **** Include Files **** */ +#include + +/* **** Definitions **** */ +#define ERASE_MEMORY_ON_INIT \ + 1 /* Configuration option to clear the memory (to 0s) on initialization. */ +/* Use 1 to clear or 0 to leave untouched. */ +/** + * @brief Perform any initialization necessary to prepare the memory for reading/writing data. + * @returns 0 if initialization is successful, non-zero if an error occurred. + */ +int mscmem_Init(void); + +/** + * @brief Activates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Start(void); + +/** + * @brief Deactivates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Stop(void); + +/** + * @brief Reports the total size of the mass-storage memory. + * @returns The number of 512 byte blocks contained in the memory. + */ +uint32_t mscmem_Size(void); + +/** + * @brief Reads 512 bytes of data from the memory. + * @param lba The index of the 512 byte block to read. + * @param buffer A byte array of at least 512 bytes to hold the values read. + * @returns 0 if reading is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Read(uint32_t lba, uint8_t *buffer); + +/** + * @brief Writes 512 bytes of data to the memory. + * @param lba The index of the 512 byte block to write. + * @param buffer A byte array of at least 512 bytes holding the values to write. + * @returns 0 if writing is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Write(uint32_t lba, uint8_t *buffer); + +/** + * @brief Checks if the memory is ready to be read/written. + * @returns non-zero if the memory is ready, 0 otherwise. + */ +int mscmem_Ready(void); + +#endif // EXAMPLES_MAX32650_USB_MAXUSB_USB_MASSSTORAGE_MSCMEM_H_ diff --git a/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/project.mk b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/project.mk new file mode 100644 index 00000000000..b3f868eff6c --- /dev/null +++ b/Examples/MAX32650/USB/MAXUSB/USB_MassStorage/project.mk @@ -0,0 +1,43 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +#BOARD=FTHR_RevA +# ^ For example, you can uncomment this line to make the +# project build for the "FTHR_RevA" board. + +# ********************************************************** + +# Add your config here! + +# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable MAXUSB library +LIB_MAXUSB=1 + +ifeq ($(BOARD),FTHR_APPS_A) +$(error ERR_NOTSUPPORTED: This example requires an external flash IC, therefore it's not supported on the MAX32650FTHR) +endif diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc/.cproject b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.cproject new file mode 100644 index 00000000000..4a510e01d22 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc/.project b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.project new file mode 100644 index 00000000000..fa23f214065 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.project @@ -0,0 +1,26 @@ + + + cdc_msc + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32665/USB/USB_CDCACM/.settings/language.settings.xml b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32665/USB/USB_CDCACM/.settings/language.settings.xml rename to Examples/MAX32650/USB/TinyUSB/cdc_msc/.settings/language.settings.xml diff --git a/Examples/MAX32665/USB/USB_CDCACM/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32665/USB/USB_CDCACM/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32650/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..ad55ebf6d23 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=cdc_msc +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32650 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc/.vscode/README.md b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/.vscode/c_cpp_properties.json b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.vscode/c_cpp_properties.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/Bluetooth/BLE_fcc/.vscode/c_cpp_properties.json rename to Examples/MAX32650/USB/TinyUSB/cdc_msc/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32665/USB/USB_CDCACM/.vscode/flash.gdb b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/USB/USB_CDCACM/.vscode/flash.gdb rename to Examples/MAX32650/USB/TinyUSB/cdc_msc/.vscode/flash.gdb diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc/.vscode/launch.json b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.vscode/launch.json new file mode 100644 index 00000000000..b7404af60e8 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.vscode/launch.json @@ -0,0 +1,190 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd": "${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": [ + "${workspaceFolder}/build/${config:program_file}" + ], + "symbolFiles": [ + { + "file": "${workspaceFolder}/build/${config:symbol_file}" + } + ], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd" + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe" + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd" + }, + "searchDir": [ + "${config:OCD_path}/scripts" + ], + "configFiles": [ + "interface/${config:M4_OCD_interface_file}", + "target/${config:M4_OCD_target_file}" + ], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd" + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe" + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd" + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + { + "text": "-list-features" + } + ], + "setupCommands": [ + { + "text": "set logging overwrite on" + }, + { + "text": "set logging file debug-arm.log" + }, + { + "text": "set logging on" + }, + { + "text": "cd ${workspaceFolder}" + }, + { + "text": "exec-file build/${config:program_file}" + }, + { + "text": "symbol-file build/${config:symbol_file}" + }, + { + "text": "target remote localhost:3333" + }, + { + "text": "monitor reset halt" + }, + { + "text": "set $pc=Reset_Handler" + }, + { + "text": "b main" + } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd" + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe" + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd" + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + { + "text": "-list-features" + } + ], + "targetArchitecture": "arm", + "setupCommands": [ + { + "text": "set logging overwrite on" + }, + { + "text": "set logging file debug-riscv.log" + }, + { + "text": "set logging on" + }, + { + "text": "cd ${workspaceFolder}" + }, + { + "text": "set architecture riscv:rv32", + "ignoreFailures": false + }, + { + "text": "exec-file build/${config:program_file}", + "ignoreFailures": false + }, + { + "text": "symbol-file buildrv/${config:symbol_file}", + "ignoreFailures": false + }, + { + "text": "target remote localhost:3334" + }, + { + "text": "b main" + }, + { + "text": "set $pc=Reset_Handler", + "ignoreFailures": false + } + ] + } + ] +} \ No newline at end of file diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc/.vscode/settings.json b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.vscode/settings.json new file mode 100644 index 00000000000..c6f0b09fa51 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.vscode/settings.json @@ -0,0 +1,80 @@ +{ + "terminal.integrated.env.windows": { + "Path": "${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + "terminal.integrated.env.linux": { + "PATH": "${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH": "${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "target": "MAX32650", + "board": "EvKit_V1", + "project_name": "${workspaceFolderBasename}", + "program_file": "${config:project_name}.elf", + "symbol_file": "${config:program_file}", + "M4_OCD_interface_file": "cmsis-dap.cfg", + "M4_OCD_target_file": "max32650.cfg", + "RV_OCD_interface_file": "ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file": "${config:target}_riscv.cfg", + "v_Arm_GCC": "10.3", + "v_xPack_GCC": "12.2.0-3.1", + "OCD_path": "${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path": "${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path": "${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path": "${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path": "${config:MAXIM_PATH}/Tools/MSYS2", + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", + "${config:MAXIM_PATH}/Libraries/tinyusb/src/", + "${config:MAXIM_PATH}/Libraries/tinyusb/hw/" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/USB_CDCACM/.vscode/tasks.json b/Examples/MAX32650/USB/TinyUSB/cdc_msc/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/USB/USB_CDCACM/.vscode/tasks.json rename to Examples/MAX32650/USB/TinyUSB/cdc_msc/.vscode/tasks.json diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc/Makefile b/Examples/MAX32650/USB/TinyUSB/cdc_msc/Makefile new file mode 100644 index 00000000000..71bc32d20b4 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32650 +TARGET_UC := MAX32650 +TARGET_LC := max32650 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc/README.md b/Examples/MAX32650/USB/TinyUSB/cdc_msc/README.md new file mode 100644 index 00000000000..d85aae0881a --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc/README.md @@ -0,0 +1,41 @@ +## Description + +The example demonstrates the use of USB composite device with Mass Storage driver class and CDC-ACM driver class using the TinyUSB stack +on a bare-metal system +. After doing the required connections given below, run the program and two new devices appear in the device manager, a Portable device and COM Port. The README.TXT file on the portable device can be read. Open a terminal application on the PC at 115200 baud rate, and echo the characters on the terminal. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +tusb_config.h by default has logging disabled via the CFG_TUSB_DEBUG definition. +For TinyUSB console logging, set the debug level to 1, 2, or 3, with a higher value +indicating more verbose logging. + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/UART0) connector. Make sure JP11 (2-3) is connected to UART. +- Default EV kit hardware configuration. + +## Expected Output + +By default, the console UART does not output any message. With CFG_TUSB_DEBUG set +to '2', the Console UART of the device will output these messages: + +``` +USBD init on controller 0, Highspeed = 1024 +sizeof(usbd_device_t) = 69 +sizeof(dcd_event_t) = 12 +sizeof(tu_fifo_t) = 20 +sizeof(tu_edpt_stream_t) = 112 +CDC init +MSC init +USBD Bus Reset : High Speed +``` diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc/cdc_msc.launch b/Examples/MAX32650/USB/TinyUSB/cdc_msc/cdc_msc.launch new file mode 100644 index 00000000000..ef6388dd8d7 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc/cdc_msc.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc/main.c b/Examples/MAX32650/USB/TinyUSB/cdc_msc/main.c new file mode 100644 index 00000000000..94022347e4e --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc/main.c @@ -0,0 +1,212 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * Copyright (c) 2024 Analog Devices, Inc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" +#include "led.h" +#include "mxc_device.h" +#include "gcr_regs.h" +#include "mxc_sys.h" + +//--------------------------------------------------------------------+ +// MACRO CONSTANT TYPEDEF PROTOTYPES +//--------------------------------------------------------------------+ + +/* Blink pattern + * - 250 ms : device not mounted + * - 1000 ms : device mounted + * - 2500 ms : device is suspended + */ +enum { + BLINK_NOT_MOUNTED = 250, + BLINK_MOUNTED = 1000, + BLINK_SUSPENDED = 2500, +}; + +static uint32_t blink_interval_ms = BLINK_NOT_MOUNTED; + +void led_blinking_task(void); +void cdc_task(void); + +/*------------- MAIN -------------*/ +int main(void) +{ + board_init(); + + // init device stack on configured roothub port + tud_init(BOARD_TUD_RHPORT); + + if (board_init_after_tusb) { + board_init_after_tusb(); + } + + while (1) { + tud_task(); // tinyusb device task + led_blinking_task(); + + cdc_task(); + } +} + +//--------------------------------------------------------------------+ +// Device callbacks +//--------------------------------------------------------------------+ + +// Invoked when device is mounted +void tud_mount_cb(void) +{ + blink_interval_ms = BLINK_MOUNTED; +} + +// Invoked when device is unmounted +void tud_umount_cb(void) +{ + blink_interval_ms = BLINK_NOT_MOUNTED; +} + +// Invoked when usb bus is suspended +// remote_wakeup_en : if host allow us to perform remote wakeup +// Within 7ms, device must draw an average of current less than 2.5 mA from bus +void tud_suspend_cb(bool remote_wakeup_en) +{ + (void)remote_wakeup_en; + blink_interval_ms = BLINK_SUSPENDED; +} + +// Invoked when usb bus is resumed +void tud_resume_cb(void) +{ + blink_interval_ms = tud_mounted() ? BLINK_MOUNTED : BLINK_NOT_MOUNTED; +} + +//--------------------------------------------------------------------+ +// USB CDC +//--------------------------------------------------------------------+ +void cdc_task(void) +{ + // connected() check for DTR bit + // Most but not all terminal client set this when making connection + // if ( tud_cdc_connected() ) + { + // connected and there are data available + if (tud_cdc_available()) { + // read data + char buf[64]; + uint32_t count = tud_cdc_read(buf, sizeof(buf)); + (void)count; + + // Echo back + // Note: Skip echo by commenting out write() and write_flush() + // for throughput test e.g + // $ dd if=/dev/zero of=/dev/ttyACM0 count=10000 + tud_cdc_write(buf, count); + tud_cdc_write_flush(); + } + } +} + +// Invoked when cdc when line state changed e.g connected/disconnected +void tud_cdc_line_state_cb(uint8_t itf, bool dtr, bool rts) +{ + (void)itf; + (void)rts; + + if (dtr) { + // Terminal connected + } else { + // Terminal disconnected + } +} + +// Invoked when CDC interface received data from host +void tud_cdc_rx_cb(uint8_t itf) +{ + (void)itf; +} + +//--------------------------------------------------------------------+ +// BLINKING TASK +//--------------------------------------------------------------------+ +void led_blinking_task(void) +{ + static uint32_t start_ms = 0; + static bool led_state = false; + + // Blink every interval ms + if (board_millis() - start_ms < blink_interval_ms) + return; // not enough time + start_ms += blink_interval_ms; + + board_led_write(led_state); + led_state = 1 - led_state; // toggle +} + +//------------------------------------------------------------------------------ +// Wrapper functions to bridge TinyUSB BSP with MSDK BSP +//------------------------------------------------------------------------------ +void board_init(void) +{ + // 1ms tick timer + SysTick_Config(SystemCoreClock / 1000); + + //USB + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clk_ctrl & MXC_F_GCR_CLK_CTRL_HIRC96_EN)) { + MXC_GCR->clk_ctrl |= MXC_F_GCR_CLK_CTRL_HIRC96_EN; + MXC_SYS_Clock_Timeout(MXC_F_GCR_CLK_CTRL_HIRC96_RDY); + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); +} + +void board_led_write(bool state) +{ + if (state) { + LED_On(0); + } else { + LED_Off(0); + } +} + +//--------------------------------------------------------------------+ +// Forward USB interrupt events to TinyUSB IRQ Handler +//--------------------------------------------------------------------+ +void USB_IRQHandler(void) +{ + tud_int_handler(0); +} + +volatile uint32_t system_ticks = 0; + +void SysTick_Handler(void) +{ + system_ticks++; +} + +uint32_t board_millis(void) +{ + return system_ticks; +} diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc/msc_disk.c b/Examples/MAX32650/USB/TinyUSB/cdc_msc/msc_disk.c new file mode 100644 index 00000000000..c4d220423e8 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc/msc_disk.c @@ -0,0 +1,276 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +#if CFG_TUD_MSC + +// whether host does safe-eject +static bool ejected = false; + +// Some MCU doesn't have enough 8KB SRAM to store the whole disk +// We will use Flash as read-only disk with board that has +// CFG_EXAMPLE_MSC_READONLY defined + +#define README_CONTENTS \ + "This is tinyusb's MassStorage Class demo.\r\n\r\n" \ + "If you find any bugs or get any questions, feel free to file an\r\n" \ + "issue at github.com/hathach/tinyusb" + +enum { + DISK_BLOCK_NUM = 16, // 8KB is the smallest size that windows allow to mount + DISK_BLOCK_SIZE = 512 +}; + +#ifdef CFG_EXAMPLE_MSC_READONLY +const +#endif + uint8_t msc_disk[DISK_BLOCK_NUM][DISK_BLOCK_SIZE] = { + //------------- Block0: Boot Sector -------------// + // byte_per_sector = DISK_BLOCK_SIZE; fat12_sector_num_16 = DISK_BLOCK_NUM; + // sector_per_cluster = 1; reserved_sectors = 1; + // fat_num = 1; fat12_root_entry_num = 16; + // sector_per_fat = 1; sector_per_track = 1; head_num = 1; hidden_sectors = 0; + // drive_number = 0x80; media_type = 0xf8; extended_boot_signature = 0x29; + // filesystem_type = "FAT12 "; volume_serial_number = 0x1234; volume_label = "TinyUSB MSC"; + // FAT magic code at offset 510-511 + { 0xEB, 0x3C, 0x90, 0x4D, 0x53, 0x44, 0x4F, 0x53, 0x35, 0x2E, 0x30, 0x00, 0x02, 0x01, 0x01, + 0x00, 0x01, 0x10, 0x00, 0x10, 0x00, 0xF8, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x29, 0x34, 0x12, 0x00, 0x00, 'T', 'i', + 'n', 'y', 'U', 'S', 'B', ' ', 'M', 'S', 'C', 0x46, 0x41, 0x54, 0x31, 0x32, 0x20, 0x20, + 0x20, 0x00, 0x00, + + // Zero up to 2 last bytes of FAT magic code + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x55, 0xAA }, + + //------------- Block1: FAT12 Table -------------// + { + 0xF8, 0xFF, 0xFF, 0xFF, + 0x0F // // first 2 entries must be F8FF, third entry is cluster end of readme file + }, + + //------------- Block2: Root Directory -------------// + { + // first entry is volume label + 'T', 'i', 'n', 'y', 'U', 'S', 'B', ' ', 'M', 'S', 'C', 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x6D, 0x65, 0x43, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, + // second entry is readme file + 'R', 'E', 'A', 'D', 'M', 'E', ' ', ' ', 'T', 'X', 'T', 0x20, 0x00, 0xC6, 0x52, 0x6D, + 0x65, 0x43, 0x65, 0x43, 0x00, 0x00, 0x88, 0x6D, 0x65, 0x43, 0x02, 0x00, + sizeof(README_CONTENTS) - 1, 0x00, 0x00, 0x00 // readme's files size (4 Bytes) + }, + + //------------- Block3: Readme Content -------------// + README_CONTENTS + }; + +// Invoked when received SCSI_CMD_INQUIRY +// Application fill vendor id, product id and revision with string up to 8, 16, 4 characters respectively +void tud_msc_inquiry_cb(uint8_t lun, uint8_t vendor_id[8], uint8_t product_id[16], + uint8_t product_rev[4]) +{ + (void)lun; + + const char vid[] = "TinyUSB"; + const char pid[] = "Mass Storage"; + const char rev[] = "1.0"; + + memcpy(vendor_id, vid, strlen(vid)); + memcpy(product_id, pid, strlen(pid)); + memcpy(product_rev, rev, strlen(rev)); +} + +// Invoked when received Test Unit Ready command. +// return true allowing host to read/write this LUN e.g SD card inserted +bool tud_msc_test_unit_ready_cb(uint8_t lun) +{ + (void)lun; + + // RAM disk is ready until ejected + if (ejected) { + // Additional Sense 3A-00 is NOT_FOUND + tud_msc_set_sense(lun, SCSI_SENSE_NOT_READY, 0x3a, 0x00); + return false; + } + + return true; +} + +// Invoked when received SCSI_CMD_READ_CAPACITY_10 and SCSI_CMD_READ_FORMAT_CAPACITY to determine the disk size +// Application update block count and block size +void tud_msc_capacity_cb(uint8_t lun, uint32_t *block_count, uint16_t *block_size) +{ + (void)lun; + + *block_count = DISK_BLOCK_NUM; + *block_size = DISK_BLOCK_SIZE; +} + +// Invoked when received Start Stop Unit command +// - Start = 0 : stopped power mode, if load_eject = 1 : unload disk storage +// - Start = 1 : active mode, if load_eject = 1 : load disk storage +bool tud_msc_start_stop_cb(uint8_t lun, uint8_t power_condition, bool start, bool load_eject) +{ + (void)lun; + (void)power_condition; + + if (load_eject) { + if (start) { + // load disk storage + } else { + // unload disk storage + ejected = true; + } + } + + return true; +} + +// Callback invoked when received READ10 command. +// Copy disk's data to buffer (up to bufsize) and return number of copied bytes. +int32_t tud_msc_read10_cb(uint8_t lun, uint32_t lba, uint32_t offset, void *buffer, + uint32_t bufsize) +{ + (void)lun; + + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + + uint8_t const *addr = msc_disk[lba] + offset; + memcpy(buffer, addr, bufsize); + + return (int32_t)bufsize; +} + +bool tud_msc_is_writable_cb(uint8_t lun) +{ + (void)lun; + +#ifdef CFG_EXAMPLE_MSC_READONLY + return false; +#else + return true; +#endif +} + +// Callback invoked when received WRITE10 command. +// Process data in buffer to disk's storage and return number of written bytes +int32_t tud_msc_write10_cb(uint8_t lun, uint32_t lba, uint32_t offset, uint8_t *buffer, + uint32_t bufsize) +{ + (void)lun; + + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + +#ifndef CFG_EXAMPLE_MSC_READONLY + uint8_t *addr = msc_disk[lba] + offset; + memcpy(addr, buffer, bufsize); +#else + (void)lba; + (void)offset; + (void)buffer; +#endif + + return (int32_t)bufsize; +} + +// Callback invoked when received an SCSI command not in built-in list below +// - READ_CAPACITY10, READ_FORMAT_CAPACITY, INQUIRY, MODE_SENSE6, REQUEST_SENSE +// - READ10 and WRITE10 has their own callbacks +int32_t tud_msc_scsi_cb(uint8_t lun, uint8_t const scsi_cmd[16], void *buffer, uint16_t bufsize) +{ + // read10 & write10 has their own callback and MUST not be handled here + + void const *response = NULL; + int32_t resplen = 0; + + // most scsi handled is input + bool in_xfer = true; + + switch (scsi_cmd[0]) { + default: + // Set Sense = Invalid Command Operation + tud_msc_set_sense(lun, SCSI_SENSE_ILLEGAL_REQUEST, 0x20, 0x00); + + // negative means error -> tinyusb could stall and/or response with failed status + resplen = -1; + break; + } + + // return resplen must not larger than bufsize + if (resplen > bufsize) + resplen = bufsize; + + if (response && (resplen > 0)) { + if (in_xfer) { + memcpy(buffer, response, (size_t)resplen); + } else { + // SCSI output + } + } + + return (int32_t)resplen; +} + +#endif diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc/project.mk b/Examples/MAX32650/USB/TinyUSB/cdc_msc/project.mk new file mode 100644 index 00000000000..fa4a6d0c2b7 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc/project.mk @@ -0,0 +1,23 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +#BOARD=FTHR_RevA +# ^ For example, you can uncomment this line to make the +# project build for the "FTHR_RevA" board. + +# ********************************************************** + +# Add your config here! + +# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable TINYUSB library +LIB_TINYUSB=1 +TINYUSB_CONFIG_DIR = ./ diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc/tusb_config.h b/Examples/MAX32650/USB/TinyUSB/cdc_msc/tusb_config.h new file mode 100644 index 00000000000..514f0eaa040 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc/tusb_config.h @@ -0,0 +1,114 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#ifndef EXAMPLES_MAX32650_USB_TINYUSB_CDC_MSC_TUSB_CONFIG_H_ +#define EXAMPLES_MAX32650_USB_TINYUSB_CDC_MSC_TUSB_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +//--------------------------------------------------------------------+ +// Board Specific Configuration +//--------------------------------------------------------------------+ + +// RHPort number used for device can be defined by board.mk, default to port 0 +#ifndef BOARD_TUD_RHPORT +#define BOARD_TUD_RHPORT 0 +#endif + +// RHPort max operational speed can defined by board.mk +#ifndef BOARD_TUD_MAX_SPEED +#define BOARD_TUD_MAX_SPEED OPT_MODE_DEFAULT_SPEED +#endif + +//-------------------------------------------------------------------- +// Common Configuration +//-------------------------------------------------------------------- + +// defined by compiler flags for flexibility +#ifndef CFG_TUSB_MCU +#error CFG_TUSB_MCU must be defined +#endif + +#ifndef CFG_TUSB_OS +#define CFG_TUSB_OS OPT_OS_NONE +#endif + +#ifndef CFG_TUSB_DEBUG +#define CFG_TUSB_DEBUG 0 +#endif + +// Enable Device stack +#define CFG_TUD_ENABLED 1 + +// Default is max speed that hardware controller could support with on-chip PHY +#define CFG_TUD_MAX_SPEED BOARD_TUD_MAX_SPEED + +/* USB DMA on some MCUs can only access a specific SRAM region with restriction on alignment. + * Tinyusb use follows macros to declare transferring memory so that they can be put + * into those specific section. + * e.g + * - CFG_TUSB_MEM SECTION : __attribute__ (( section(".usb_ram") )) + * - CFG_TUSB_MEM_ALIGN : __attribute__ ((aligned(4))) + */ +#ifndef CFG_TUSB_MEM_SECTION +#define CFG_TUSB_MEM_SECTION +#endif + +#ifndef CFG_TUSB_MEM_ALIGN +#define CFG_TUSB_MEM_ALIGN __attribute__((aligned(4))) +#endif + +//-------------------------------------------------------------------- +// DEVICE CONFIGURATION +//-------------------------------------------------------------------- + +#ifndef CFG_TUD_ENDPOINT0_SIZE +#define CFG_TUD_ENDPOINT0_SIZE 64 +#endif + +//------------- CLASS -------------// +#define CFG_TUD_CDC 1 +#define CFG_TUD_MSC 1 +#define CFG_TUD_HID 0 +#define CFG_TUD_MIDI 0 +#define CFG_TUD_VENDOR 0 + +// CDC FIFO size of TX and RX +#define CFG_TUD_CDC_RX_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) +#define CFG_TUD_CDC_TX_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) + +// CDC Endpoint transfer buffer size, more is faster +#define CFG_TUD_CDC_EP_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) + +// MSC Buffer size of Device Mass storage +#define CFG_TUD_MSC_EP_BUFSIZE 512 + +#ifdef __cplusplus +} +#endif + +#endif // EXAMPLES_MAX32650_USB_TINYUSB_CDC_MSC_TUSB_CONFIG_H_ diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc/usb_descriptors.c b/Examples/MAX32650/USB/TinyUSB/cdc_msc/usb_descriptors.c new file mode 100644 index 00000000000..2f35cebc140 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc/usb_descriptors.c @@ -0,0 +1,305 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +/* A combination of interfaces must have a unique product id, since PC will save device driver after the first plug. + * Same VID/PID with different interface e.g MSC (first), then CDC (later) will possibly cause system error on PC. + * + * Auto ProductID layout's Bitmap: + * [MSB] HID | MSC | CDC [LSB] + */ +#define _PID_MAP(itf, n) ((CFG_TUD_##itf) << (n)) +#define USB_PID \ + (0x4000 | _PID_MAP(CDC, 0) | _PID_MAP(MSC, 1) | _PID_MAP(HID, 2) | _PID_MAP(MIDI, 3) | \ + _PID_MAP(VENDOR, 4)) + +#define USB_VID 0xCafe +#define USB_BCD 0x0200 + +//--------------------------------------------------------------------+ +// Device Descriptors +//--------------------------------------------------------------------+ +tusb_desc_device_t const desc_device = { + .bLength = sizeof(tusb_desc_device_t), + .bDescriptorType = TUSB_DESC_DEVICE, + .bcdUSB = USB_BCD, + + // Use Interface Association Descriptor (IAD) for CDC + // As required by USB Specs IAD's subclass must be common class (2) and protocol must be IAD (1) + .bDeviceClass = TUSB_CLASS_MISC, + .bDeviceSubClass = MISC_SUBCLASS_COMMON, + .bDeviceProtocol = MISC_PROTOCOL_IAD, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + + .idVendor = USB_VID, + .idProduct = USB_PID, + .bcdDevice = 0x0100, + + .iManufacturer = 0x01, + .iProduct = 0x02, + .iSerialNumber = 0x03, + + .bNumConfigurations = 0x01 +}; + +// Invoked when received GET DEVICE DESCRIPTOR +// Application return pointer to descriptor +uint8_t const *tud_descriptor_device_cb(void) +{ + return (uint8_t const *)&desc_device; +} + +//--------------------------------------------------------------------+ +// Configuration Descriptor +//--------------------------------------------------------------------+ + +enum { ITF_NUM_CDC = 0, ITF_NUM_CDC_DATA, ITF_NUM_MSC, ITF_NUM_TOTAL }; + +#if CFG_TUSB_MCU == OPT_MCU_LPC175X_6X || CFG_TUSB_MCU == OPT_MCU_LPC177X_8X || \ + CFG_TUSB_MCU == OPT_MCU_LPC40XX +// LPC 17xx and 40xx endpoint type (bulk/interrupt/iso) are fixed by its number +// 0 control, 1 In, 2 Bulk, 3 Iso, 4 In, 5 Bulk etc ... +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x82 + +#define EPNUM_MSC_OUT 0x05 +#define EPNUM_MSC_IN 0x85 + +#elif CFG_TUSB_MCU == OPT_MCU_SAMG || CFG_TUSB_MCU == OPT_MCU_SAMX7X +// SAMG & SAME70 don't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x83 + +#define EPNUM_MSC_OUT 0x04 +#define EPNUM_MSC_IN 0x85 + +#elif CFG_TUSB_MCU == OPT_MCU_CXD56 +// CXD56 doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +// CXD56 USB driver has fixed endpoint type (bulk/interrupt/iso) and direction (IN/OUT) by its number +// 0 control (IN/OUT), 1 Bulk (IN), 2 Bulk (OUT), 3 In (IN), 4 Bulk (IN), 5 Bulk (OUT), 6 In (IN) +#define EPNUM_CDC_NOTIF 0x83 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x81 + +#define EPNUM_MSC_OUT 0x05 +#define EPNUM_MSC_IN 0x84 + +#elif CFG_TUSB_MCU == OPT_MCU_FT90X || CFG_TUSB_MCU == OPT_MCU_FT93X +// FT9XX doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x83 + +#define EPNUM_MSC_OUT 0x04 +#define EPNUM_MSC_IN 0x85 + +#elif CFG_TUSB_MCU == OPT_MCU_MAX32690 || CFG_TUSB_MCU == OPT_MCU_MAX32650 || \ + CFG_TUSB_MCU == OPT_MCU_MAX32666 || CFG_TUSB_MCU == OPT_MCU_MAX78002 +// MAX32 doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x83 + +#define EPNUM_MSC_OUT 0x04 +#define EPNUM_MSC_IN 0x85 + +#else +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x82 + +#define EPNUM_MSC_OUT 0x03 +#define EPNUM_MSC_IN 0x83 + +#endif + +#define CONFIG_TOTAL_LEN (TUD_CONFIG_DESC_LEN + TUD_CDC_DESC_LEN + TUD_MSC_DESC_LEN) + +// full speed configuration +uint8_t const desc_fs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP notification address and size, EP data address (out, in) and size. + TUD_CDC_DESCRIPTOR(ITF_NUM_CDC, 4, EPNUM_CDC_NOTIF, 8, EPNUM_CDC_OUT, EPNUM_CDC_IN, 64), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 5, EPNUM_MSC_OUT, EPNUM_MSC_IN, 64), +}; + +#if TUD_OPT_HIGH_SPEED +// Per USB specs: high speed capable device must report device_qualifier and other_speed_configuration + +// high speed configuration +uint8_t const desc_hs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP notification address and size, EP data address (out, in) and size. + TUD_CDC_DESCRIPTOR(ITF_NUM_CDC, 4, EPNUM_CDC_NOTIF, 8, EPNUM_CDC_OUT, EPNUM_CDC_IN, 512), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 5, EPNUM_MSC_OUT, EPNUM_MSC_IN, 512), +}; + +// other speed configuration +uint8_t desc_other_speed_config[CONFIG_TOTAL_LEN]; + +// device qualifier is mostly similar to device descriptor since we don't change configuration based on speed +tusb_desc_device_qualifier_t const desc_device_qualifier = { + .bLength = sizeof(tusb_desc_device_qualifier_t), + .bDescriptorType = TUSB_DESC_DEVICE_QUALIFIER, + .bcdUSB = USB_BCD, + + .bDeviceClass = TUSB_CLASS_MISC, + .bDeviceSubClass = MISC_SUBCLASS_COMMON, + .bDeviceProtocol = MISC_PROTOCOL_IAD, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + .bNumConfigurations = 0x01, + .bReserved = 0x00 +}; + +// Invoked when received GET DEVICE QUALIFIER DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete. +// device_qualifier descriptor describes information about a high-speed capable device that would +// change if the device were operating at the other speed. If not highspeed capable stall this request. +uint8_t const *tud_descriptor_device_qualifier_cb(void) +{ + return (uint8_t const *)&desc_device_qualifier; +} + +// Invoked when received GET OTHER SEED CONFIGURATION DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +// Configuration descriptor in the other speed e.g if high speed then this is for full speed and vice versa +uint8_t const *tud_descriptor_other_speed_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + + // if link speed is high return fullspeed config, and vice versa + // Note: the descriptor type is OHER_SPEED_CONFIG instead of CONFIG + memcpy(desc_other_speed_config, + (tud_speed_get() == TUSB_SPEED_HIGH) ? desc_fs_configuration : desc_hs_configuration, + CONFIG_TOTAL_LEN); + + desc_other_speed_config[1] = TUSB_DESC_OTHER_SPEED_CONFIG; + + return desc_other_speed_config; +} + +#endif // highspeed + +// Invoked when received GET CONFIGURATION DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const *tud_descriptor_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + +#if TUD_OPT_HIGH_SPEED + // Although we are highspeed, host may be fullspeed. + return (tud_speed_get() == TUSB_SPEED_HIGH) ? desc_hs_configuration : desc_fs_configuration; +#else + return desc_fs_configuration; +#endif +} + +//--------------------------------------------------------------------+ +// String Descriptors +//--------------------------------------------------------------------+ + +// String Descriptor Index +enum { + STRID_LANGID = 0, + STRID_MANUFACTURER, + STRID_PRODUCT, + STRID_SERIAL, +}; + +// array of pointer to string descriptors +char const *string_desc_arr[] = { + (const char[]){ 0x09, 0x04 }, // 0: is supported language is English (0x0409) + "TinyUSB", // 1: Manufacturer + "TinyUSB Device", // 2: Product + NULL, // 3: Serials will use unique ID if possible + "TinyUSB CDC", // 4: CDC Interface + "TinyUSB MSC", // 5: MSC Interface +}; + +static uint16_t _desc_str[32 + 1]; + +// Invoked when received GET STRING DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +uint16_t const *tud_descriptor_string_cb(uint8_t index, uint16_t langid) +{ + (void)langid; + size_t chr_count; + + switch (index) { + case STRID_LANGID: + memcpy(&_desc_str[1], string_desc_arr[0], 2); + chr_count = 1; + break; + + case STRID_SERIAL: + chr_count = board_usb_get_serial(_desc_str + 1, 32); + break; + + default: + // Note: the 0xEE index string is a Microsoft OS 1.0 Descriptors. + // https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/microsoft-defined-usb-descriptors + + if (!(index < sizeof(string_desc_arr) / sizeof(string_desc_arr[0]))) + return NULL; + + const char *str = string_desc_arr[index]; + + // Cap at max char + chr_count = strlen(str); + size_t const max_count = sizeof(_desc_str) / sizeof(_desc_str[0]) - 1; // -1 for string type + if (chr_count > max_count) + chr_count = max_count; + + // Convert ASCII string into UTF-16 + for (size_t i = 0; i < chr_count; i++) { + _desc_str[1 + i] = str[i]; + } + break; + } + + // first byte is length (including header), second byte is string type + _desc_str[0] = (uint16_t)((TUSB_DESC_STRING << 8) | (2 * chr_count + 2)); + + return _desc_str; +} diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.cproject b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.cproject new file mode 100644 index 00000000000..fa9ed772419 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.project b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.project new file mode 100644 index 00000000000..8a770c213dc --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.project @@ -0,0 +1,26 @@ + + + cdc_msc_freertos + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.settings/language.settings.xml b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.settings/language.settings.xml rename to Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.settings/language.settings.xml diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..4a91e7ab090 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=cdc_msc_freertos +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32650 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.vscode/README.md b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/USB_CDCACM/.vscode/c_cpp_properties.json b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.vscode/c_cpp_properties.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/USB/USB_CDCACM/.vscode/c_cpp_properties.json rename to Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb rename to Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.vscode/flash.gdb diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.vscode/launch.json b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.vscode/launch.json new file mode 100644 index 00000000000..b7404af60e8 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.vscode/launch.json @@ -0,0 +1,190 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd": "${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": [ + "${workspaceFolder}/build/${config:program_file}" + ], + "symbolFiles": [ + { + "file": "${workspaceFolder}/build/${config:symbol_file}" + } + ], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd" + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe" + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd" + }, + "searchDir": [ + "${config:OCD_path}/scripts" + ], + "configFiles": [ + "interface/${config:M4_OCD_interface_file}", + "target/${config:M4_OCD_target_file}" + ], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd" + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe" + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd" + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + { + "text": "-list-features" + } + ], + "setupCommands": [ + { + "text": "set logging overwrite on" + }, + { + "text": "set logging file debug-arm.log" + }, + { + "text": "set logging on" + }, + { + "text": "cd ${workspaceFolder}" + }, + { + "text": "exec-file build/${config:program_file}" + }, + { + "text": "symbol-file build/${config:symbol_file}" + }, + { + "text": "target remote localhost:3333" + }, + { + "text": "monitor reset halt" + }, + { + "text": "set $pc=Reset_Handler" + }, + { + "text": "b main" + } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd" + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe" + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd" + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + { + "text": "-list-features" + } + ], + "targetArchitecture": "arm", + "setupCommands": [ + { + "text": "set logging overwrite on" + }, + { + "text": "set logging file debug-riscv.log" + }, + { + "text": "set logging on" + }, + { + "text": "cd ${workspaceFolder}" + }, + { + "text": "set architecture riscv:rv32", + "ignoreFailures": false + }, + { + "text": "exec-file build/${config:program_file}", + "ignoreFailures": false + }, + { + "text": "symbol-file buildrv/${config:symbol_file}", + "ignoreFailures": false + }, + { + "text": "target remote localhost:3334" + }, + { + "text": "b main" + }, + { + "text": "set $pc=Reset_Handler", + "ignoreFailures": false + } + ] + } + ] +} \ No newline at end of file diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.vscode/settings.json b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.vscode/settings.json new file mode 100644 index 00000000000..c6f0b09fa51 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.vscode/settings.json @@ -0,0 +1,80 @@ +{ + "terminal.integrated.env.windows": { + "Path": "${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + "terminal.integrated.env.linux": { + "PATH": "${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH": "${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "target": "MAX32650", + "board": "EvKit_V1", + "project_name": "${workspaceFolderBasename}", + "program_file": "${config:project_name}.elf", + "symbol_file": "${config:program_file}", + "M4_OCD_interface_file": "cmsis-dap.cfg", + "M4_OCD_target_file": "max32650.cfg", + "RV_OCD_interface_file": "ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file": "${config:target}_riscv.cfg", + "v_Arm_GCC": "10.3", + "v_xPack_GCC": "12.2.0-3.1", + "OCD_path": "${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path": "${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path": "${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path": "${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path": "${config:MAXIM_PATH}/Tools/MSYS2", + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", + "${config:MAXIM_PATH}/Libraries/tinyusb/src/", + "${config:MAXIM_PATH}/Libraries/tinyusb/hw/" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json rename to Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/.vscode/tasks.json diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/FreeRTOSConfig.h b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/FreeRTOSConfig.h new file mode 100644 index 00000000000..5929556e780 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/FreeRTOSConfig.h @@ -0,0 +1,123 @@ +/** + * @file FreeRTOSConfig.h + * @brief FreeRTOSCOnfig function prototypes and data types. + */ + +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/* Define to prevent redundant inclusion */ +#ifndef EXAMPLES_MAX32650_USB_TINYUSB_CDC_MSC_FREERTOS_FREERTOSCONFIG_H_ +#define EXAMPLES_MAX32650_USB_TINYUSB_CDC_MSC_FREERTOS_FREERTOSCONFIG_H_ + +/* **** Includes **** */ +#include +#include "max32650.h" + +/** + * @brief Application specific definitions. + * @details These definitions should be adjusted for your particular hardware and + * application requirements. + * @note THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE + * FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE. + * + * @details See http://www.freertos.org/a00110.html. + */ + +/* CMSIS keeps a global updated with current system clock in Hz */ +#define configCPU_CLOCK_HZ ((uint32_t)120000000) + +/* Tick-less idle forces a 32768 Hz RTC-derived SysTick source, and a 256 Hz task tick */ +//#define configUSE_TICKLESS_IDLE 1 +#ifdef configUSE_TICKLESS_IDLE +#define configSYSTICK_CLK_HZ ((uint32_t)32768) +#define configTICK_RATE_HZ ((portTickType)256) +#else +#define configTICK_RATE_HZ ((portTickType)1000) +#endif + +#define configTOTAL_HEAP_SIZE ((size_t)(26 * 1024)) + +#define configMINIMAL_STACK_SIZE ((uint16_t)128) + +#define configMAX_PRIORITIES 5 +#define configUSE_PREEMPTION 0 +#define configUSE_IDLE_HOOK 0 +#define configUSE_TICK_HOOK 0 +#define configUSE_CO_ROUTINES 0 +#define configUSE_16_BIT_TICKS 0 +#define configUSE_MUTEXES 1 +#define configSUPPORT_STATIC_ALLOCATION 1 + +/* Run time and task stats gathering related definitions. */ +#define configUSE_TRACE_FACILITY 1 +#define configUSE_STATS_FORMATTING_FUNCTIONS 1 + +/* Software timer related definitions. */ +#define configUSE_TIMERS 1 +#define configTIMER_TASK_PRIORITY (configMAX_PRIORITIES - 2) +#define configTIMER_QUEUE_LENGTH 32 +#define configTIMER_TASK_STACK_DEPTH configMINIMAL_STACK_SIZE + +/* Set the following definitions to 1 to include the API function, or zero +to exclude the API function. */ +#define INCLUDE_vTaskPrioritySet 0 +#define INCLUDE_vTaskDelete 0 +#define INCLUDE_vTaskSuspend 1 +#define INCLUDE_vTaskDelayUntil 1 +#define INCLUDE_uxTaskPriorityGet 0 +#define INCLUDE_vTaskDelay 1 + +/* # of priority bits (configured in hardware) is provided by CMSIS */ +#define configPRIO_BITS __NVIC_PRIO_BITS + +/* Priority 7, or 255 as only the top three bits are implemented. This is the lowest priority. */ +#define configKERNEL_INTERRUPT_PRIORITY ((unsigned char)7 << (8 - configPRIO_BITS)) + +/* Priority 5, or 160 as only the top three bits are implemented. */ +#define configMAX_SYSCALL_INTERRUPT_PRIORITY ((unsigned char)5 << (8 - configPRIO_BITS)) + +/* The lowest interrupt priority that can be used in a call to a "set priority" function. */ +#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY ((1 << configPRIO_BITS) - 1) + +/* The highest interrupt priority that can be used by any interrupt service +routine that makes calls to interrupt safe FreeRTOS API functions. DO NOT CALL +INTERRUPT SAFE FREERTOS API FUNCTIONS FROM ANY INTERRUPT THAT HAS A HIGHER +PRIORITY THAN THIS! (higher priorities are lower numeric values. */ +#define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 2 + +/* Alias the default handler names to match CMSIS weak symbols */ +#define vPortSVCHandler SVC_Handler +#define xPortPendSVHandler PendSV_Handler +#define xPortSysTickHandler SysTick_Handler + +#ifdef configUSE_TICKLESS_IDLE +#define configRTC_TICK_RATE_HZ ((portTickType)256) +/* Provide routines for tickless idle pre- and post- processing */ +void vPreSleepProcessing(uint32_t *); +void vPostSleepProcessing(uint32_t); +#define configPRE_SLEEP_PROCESSING(idletime) vPreSleepProcessing(&idletime); +#define configPOST_SLEEP_PROCESSING(idletime) vPostSleepProcessing(idletime); +#endif + +/* FreeRTOS+CLI requires this size to be defined, but we do not use it */ +#define configCOMMAND_INT_MAX_OUTPUT_SIZE 1 + +#endif // EXAMPLES_MAX32650_USB_TINYUSB_CDC_MSC_FREERTOS_FREERTOSCONFIG_H_ diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/Makefile b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/Makefile new file mode 100644 index 00000000000..71bc32d20b4 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32650 +TARGET_UC := MAX32650 +TARGET_LC := max32650 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/README.md b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/README.md new file mode 100644 index 00000000000..8cadcaabc9b --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/README.md @@ -0,0 +1,40 @@ +## Description + +The example demonstrates the use of USB composite device with Mass Storage driver class and CDC-ACM driver class using the TinyUSB stack +and FreeRTOS operating system. After doing the required connections given below, run the program and two new devices appear in the device manager, a Portable device and COM Port. The README.TXT file on the portable device can be read. Open a terminal application on the PC at 115200 baud rate, and echo the characters on the terminal. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +tusb_config.h by default has logging disabled via the CFG_TUSB_DEBUG definition. +For TinyUSB console logging, set the debug level to 1, 2, or 3, with a higher value +indicating more verbose logging. + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/UART0) connector. Make sure JP11 (2-3) is connected to UART. +- Default EV kit hardware configuration. + +## Expected Output + +By default, the console UART does not output any message. With CFG_TUSB_DEBUG set +to '2', the Console UART of the device will output these messages: + +``` +USBD init on controller 0, Highspeed = 1024 +sizeof(usbd_device_t) = 69 +sizeof(dcd_event_t) = 12 +sizeof(tu_fifo_t) = 20 +sizeof(tu_edpt_stream_t) = 112 +CDC init +MSC init +USBD Bus Reset : High Speed +``` diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/cdc_msc_freertos.launch b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/cdc_msc_freertos.launch new file mode 100644 index 00000000000..250288ad469 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/cdc_msc_freertos.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/freertos_hook.c b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/freertos_hook.c new file mode 100644 index 00000000000..ea3141d2a58 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/freertos_hook.c @@ -0,0 +1,99 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * Copyright (c) 2024 Analog Devices, Inc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +//--------------------------------------------------------------------+ +// INCLUDE +//--------------------------------------------------------------------+ +#include "FreeRTOS.h" +#include "task.h" +#include "common/tusb_common.h" + +void vApplicationMallocFailedHook(void) +{ + taskDISABLE_INTERRUPTS(); + while (1) {} +} + +void vApplicationStackOverflowHook(xTaskHandle pxTask, char *pcTaskName) +{ + (void)pxTask; + (void)pcTaskName; + + taskDISABLE_INTERRUPTS(); + while (1) {} +} + +/* configSUPPORT_STATIC_ALLOCATION is set to 1, so the application must provide an + * implementation of vApplicationGetIdleTaskMemory() to provide the memory that is + * used by the Idle task. */ +void vApplicationGetIdleTaskMemory(StaticTask_t **ppxIdleTaskTCBBuffer, + StackType_t **ppxIdleTaskStackBuffer, + uint32_t *pulIdleTaskStackSize) +{ + /* If the buffers to be provided to the Idle task are declared inside this + * function then they must be declared static - otherwise they will be allocated on + * the stack and so not exists after this function exits. */ + static StaticTask_t xIdleTaskTCB; + static StackType_t uxIdleTaskStack[configMINIMAL_STACK_SIZE]; + + /* Pass out a pointer to the StaticTask_t structure in which the Idle task's + state will be stored. */ + *ppxIdleTaskTCBBuffer = &xIdleTaskTCB; + + /* Pass out the array that will be used as the Idle task's stack. */ + *ppxIdleTaskStackBuffer = uxIdleTaskStack; + + /* Pass out the size of the array pointed to by *ppxIdleTaskStackBuffer. + Note that, as the array is necessarily of type StackType_t, + configMINIMAL_STACK_SIZE is specified in words, not bytes. */ + *pulIdleTaskStackSize = configMINIMAL_STACK_SIZE; +} + +/* configSUPPORT_STATIC_ALLOCATION and configUSE_TIMERS are both set to 1, so the + * application must provide an implementation of vApplicationGetTimerTaskMemory() + * to provide the memory that is used by the Timer service task. */ +void vApplicationGetTimerTaskMemory(StaticTask_t **ppxTimerTaskTCBBuffer, + StackType_t **ppxTimerTaskStackBuffer, + uint32_t *pulTimerTaskStackSize) +{ + /* If the buffers to be provided to the Timer task are declared inside this + * function then they must be declared static - otherwise they will be allocated on + * the stack and so not exists after this function exits. */ + static StaticTask_t xTimerTaskTCB; + static StackType_t uxTimerTaskStack[configTIMER_TASK_STACK_DEPTH]; + + /* Pass out a pointer to the StaticTask_t structure in which the Timer + task's state will be stored. */ + *ppxTimerTaskTCBBuffer = &xTimerTaskTCB; + + /* Pass out the array that will be used as the Timer task's stack. */ + *ppxTimerTaskStackBuffer = uxTimerTaskStack; + + /* Pass out the size of the array pointed to by *ppxTimerTaskStackBuffer. + Note that, as the array is necessarily of type StackType_t, + configTIMER_TASK_STACK_DEPTH is specified in words, not bytes. */ + *pulTimerTaskStackSize = configTIMER_TASK_STACK_DEPTH; +} diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/main.c b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/main.c new file mode 100644 index 00000000000..623ed1ff81c --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/main.c @@ -0,0 +1,301 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * Copyright (c) 2024 Analog Devices, Inc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include +#include +#include + +#include "bsp/board_api.h" +#include "tusb.h" +#include "led.h" +#include "mxc_device.h" +#include "gcr_regs.h" +#include "mxc_sys.h" + +#if TUP_MCU_ESPRESSIF +// ESP-IDF need "freertos/" prefix in include path. +// CFG_TUSB_OS_INC_PATH should be defined accordingly. +#include "freertos/FreeRTOS.h" +#include "freertos/semphr.h" +#include "freertos/queue.h" +#include "freertos/task.h" +#include "freertos/timers.h" + +#define USBD_STACK_SIZE 4096 +#else + +#include "FreeRTOS.h" +#include "semphr.h" +#include "queue.h" +#include "task.h" +#include "timers.h" + +// Increase stack size when debug log is enabled +#define USBD_STACK_SIZE (3 * configMINIMAL_STACK_SIZE / 2) * (CFG_TUSB_DEBUG ? 2 : 1) +#endif + +// Use the USBD_STACK_SIZE to account for option CFG_TUSB_DEBUG settings +#define CDC_STACK_SIZE USBD_STACK_SIZE +#define BLINKY_STACK_SIZE USBD_STACK_SIZE + +//--------------------------------------------------------------------+ +// MACRO CONSTANT TYPEDEF PROTOTYPES +//--------------------------------------------------------------------+ + +/* Blink pattern + * - 250 ms : device not mounted + * - 1000 ms : device mounted + * - 2500 ms : device is suspended + */ +enum { + BLINK_NOT_MOUNTED = 250, + BLINK_MOUNTED = 1000, + BLINK_SUSPENDED = 2500, +}; + +// static task +#if configSUPPORT_STATIC_ALLOCATION +StackType_t blinky_stack[BLINKY_STACK_SIZE]; +StaticTask_t blinky_taskdef; + +StackType_t usb_device_stack[USBD_STACK_SIZE]; +StaticTask_t usb_device_taskdef; + +StackType_t cdc_stack[CDC_STACK_SIZE]; +StaticTask_t cdc_taskdef; +#endif + +static uint32_t blink_interval_ms = BLINK_NOT_MOUNTED; + +static void usb_device_task(void *param); +void led_blinking_task(void *param); +void cdc_task(void *params); + +//--------------------------------------------------------------------+ +// Main +//--------------------------------------------------------------------+ + +int main(void) +{ + board_init(); + +#if configSUPPORT_STATIC_ALLOCATION + // blinky task + xTaskCreateStatic(led_blinking_task, "blinky", BLINKY_STACK_SIZE, NULL, 1, blinky_stack, + &blinky_taskdef); + + // Create a task for tinyusb device stack + xTaskCreateStatic(usb_device_task, "usbd", USBD_STACK_SIZE, NULL, configMAX_PRIORITIES - 1, + usb_device_stack, &usb_device_taskdef); + + // Create CDC task + xTaskCreateStatic(cdc_task, "cdc", CDC_STACK_SIZE, NULL, configMAX_PRIORITIES - 2, cdc_stack, + &cdc_taskdef); +#else + xTaskCreate(led_blinking_task, "blinky", BLINKY_STACK_SIZE, NULL, 1, NULL); + xTaskCreate(usb_device_task, "usbd", USBD_STACK_SIZE, NULL, configMAX_PRIORITIES - 1, NULL); + xTaskCreate(cdc_task, "cdc", CDC_STACK_SZIE, NULL, configMAX_PRIORITIES - 2, NULL); +#endif + + // skip starting scheduler (and return) for ESP32-S2 or ESP32-S3 +#if !TUP_MCU_ESPRESSIF + vTaskStartScheduler(); +#endif + + return 0; +} + +#if TUP_MCU_ESPRESSIF +void app_main(void) +{ + main(); +} +#endif + +// USB Device Driver task +// This top level thread process all usb events and invoke callbacks +static void usb_device_task(void *param) +{ + (void)param; + + // init device stack on configured roothub port + // This should be called after scheduler/kernel is started. + // Otherwise it could cause kernel issue since USB IRQ handler does use RTOS queue API. + tud_init(BOARD_TUD_RHPORT); + + if (board_init_after_tusb) { + board_init_after_tusb(); + } + + // RTOS forever loop + while (1) { + // put this thread to waiting state until there is new events + tud_task(); + + // following code only run if tud_task() process at least 1 event + tud_cdc_write_flush(); + } +} + +//--------------------------------------------------------------------+ +// Device callbacks +//--------------------------------------------------------------------+ + +// Invoked when device is mounted +void tud_mount_cb(void) +{ + blink_interval_ms = BLINK_MOUNTED; +} + +// Invoked when device is unmounted +void tud_umount_cb(void) +{ + blink_interval_ms = BLINK_NOT_MOUNTED; +} + +// Invoked when usb bus is suspended +// remote_wakeup_en : if host allow us to perform remote wakeup +// Within 7ms, device must draw an average of current less than 2.5 mA from bus +void tud_suspend_cb(bool remote_wakeup_en) +{ + (void)remote_wakeup_en; + blink_interval_ms = BLINK_SUSPENDED; +} + +// Invoked when usb bus is resumed +void tud_resume_cb(void) +{ + blink_interval_ms = tud_mounted() ? BLINK_MOUNTED : BLINK_NOT_MOUNTED; +} + +//--------------------------------------------------------------------+ +// USB CDC +//--------------------------------------------------------------------+ +void cdc_task(void *params) +{ + (void)params; + + // RTOS forever loop + while (1) { + // connected() check for DTR bit + // Most but not all terminal client set this when making connection + // if ( tud_cdc_connected() ) + { + // There are data available + while (tud_cdc_available()) { + uint8_t buf[64]; + + // read and echo back + uint32_t count = tud_cdc_read(buf, sizeof(buf)); + (void)count; + + // Echo back + // Note: Skip echo by commenting out write() and write_flush() + // for throughput test e.g + // $ dd if=/dev/zero of=/dev/ttyACM0 count=10000 + tud_cdc_write(buf, count); + } + + tud_cdc_write_flush(); + } + + // For ESP32-Sx this delay is essential to allow idle how to run and reset watchdog + vTaskDelay(1); + } +} + +// Invoked when cdc when line state changed e.g connected/disconnected +void tud_cdc_line_state_cb(uint8_t itf, bool dtr, bool rts) +{ + (void)itf; + (void)rts; + + if (dtr) { + // Terminal connected + } else { + // Terminal disconnected + } +} + +// Invoked when CDC interface received data from host +void tud_cdc_rx_cb(uint8_t itf) +{ + (void)itf; +} + +//--------------------------------------------------------------------+ +// BLINKING TASK +//--------------------------------------------------------------------+ +void led_blinking_task(void *param) +{ + (void)param; + static uint32_t start_ms = 0; + static bool led_state = false; + + while (1) { + // Blink every interval ms + vTaskDelay(blink_interval_ms / portTICK_PERIOD_MS); + start_ms += blink_interval_ms; + + board_led_write(led_state); + led_state = 1 - led_state; // toggle + } +} + +//------------------------------------------------------------------------------ +// Wrapper functions to bridge TinyUSB BSP with MSDK BSP +//------------------------------------------------------------------------------ +void board_init(void) +{ + // If freeRTOS is used, IRQ priority is limit by max syscall ( smaller is higher ) + NVIC_SetPriority(USB_IRQn, configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY); + + //USB + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clk_ctrl & MXC_F_GCR_CLK_CTRL_HIRC96_EN)) { + MXC_GCR->clk_ctrl |= MXC_F_GCR_CLK_CTRL_HIRC96_EN; + MXC_SYS_Clock_Timeout(MXC_F_GCR_CLK_CTRL_HIRC96_RDY); + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); +} + +void board_led_write(bool state) +{ + if (state) { + LED_On(0); + } else { + LED_Off(0); + } +} + +//--------------------------------------------------------------------+ +// Forward USB interrupt events to TinyUSB IRQ Handler +//--------------------------------------------------------------------+ +void USB_IRQHandler(void) +{ + tud_int_handler(0); +} diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/msc_disk.c b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/msc_disk.c new file mode 100644 index 00000000000..532e4651377 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/msc_disk.c @@ -0,0 +1,254 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +#if CFG_TUD_MSC + +// Some MCU doesn't have enough 8KB SRAM to store the whole disk +// We will use Flash as read-only disk with board that has +// CFG_EXAMPLE_MSC_READONLY defined + +#define README_CONTENTS \ + "This is tinyusb's MassStorage Class demo.\r\n\r\n" \ + "If you find any bugs or get any questions, feel free to file an\r\n" \ + "issue at github.com/hathach/tinyusb" + +enum { + DISK_BLOCK_NUM = 16, // 8KB is the smallest size that windows allow to mount + DISK_BLOCK_SIZE = 512 +}; + +#ifdef CFG_EXAMPLE_MSC_READONLY +const +#endif + uint8_t msc_disk[DISK_BLOCK_NUM][DISK_BLOCK_SIZE] = { + //------------- Block0: Boot Sector -------------// + // byte_per_sector = DISK_BLOCK_SIZE; fat12_sector_num_16 = DISK_BLOCK_NUM; + // sector_per_cluster = 1; reserved_sectors = 1; + // fat_num = 1; fat12_root_entry_num = 16; + // sector_per_fat = 1; sector_per_track = 1; head_num = 1; hidden_sectors = 0; + // drive_number = 0x80; media_type = 0xf8; extended_boot_signature = 0x29; + // filesystem_type = "FAT12 "; volume_serial_number = 0x1234; volume_label = "TinyUSB MSC"; + // FAT magic code at offset 510-511 + { 0xEB, 0x3C, 0x90, 0x4D, 0x53, 0x44, 0x4F, 0x53, 0x35, 0x2E, 0x30, 0x00, 0x02, 0x01, 0x01, + 0x00, 0x01, 0x10, 0x00, 0x10, 0x00, 0xF8, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x29, 0x34, 0x12, 0x00, 0x00, 'T', 'i', + 'n', 'y', 'U', 'S', 'B', ' ', 'M', 'S', 'C', 0x46, 0x41, 0x54, 0x31, 0x32, 0x20, 0x20, + 0x20, 0x00, 0x00, + + // Zero up to 2 last bytes of FAT magic code + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x55, 0xAA }, + + //------------- Block1: FAT12 Table -------------// + { + 0xF8, 0xFF, 0xFF, 0xFF, + 0x0F // // first 2 entries must be F8FF, third entry is cluster end of readme file + }, + + //------------- Block2: Root Directory -------------// + { + // first entry is volume label + 'T', 'i', 'n', 'y', 'U', 'S', 'B', ' ', 'M', 'S', 'C', 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x6D, 0x65, 0x43, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, + // second entry is readme file + 'R', 'E', 'A', 'D', 'M', 'E', ' ', ' ', 'T', 'X', 'T', 0x20, 0x00, 0xC6, 0x52, 0x6D, + 0x65, 0x43, 0x65, 0x43, 0x00, 0x00, 0x88, 0x6D, 0x65, 0x43, 0x02, 0x00, + sizeof(README_CONTENTS) - 1, 0x00, 0x00, 0x00 // readme's files size (4 Bytes) + }, + + //------------- Block3: Readme Content -------------// + README_CONTENTS + }; + +// Invoked when received SCSI_CMD_INQUIRY +// Application fill vendor id, product id and revision with string up to 8, 16, 4 characters respectively +void tud_msc_inquiry_cb(uint8_t lun, uint8_t vendor_id[8], uint8_t product_id[16], + uint8_t product_rev[4]) +{ + (void)lun; + + const char vid[] = "TinyUSB"; + const char pid[] = "Mass Storage"; + const char rev[] = "1.0"; + + memcpy(vendor_id, vid, strlen(vid)); + memcpy(product_id, pid, strlen(pid)); + memcpy(product_rev, rev, strlen(rev)); +} + +// Invoked when received Test Unit Ready command. +// return true allowing host to read/write this LUN e.g SD card inserted +bool tud_msc_test_unit_ready_cb(uint8_t lun) +{ + (void)lun; + + return true; // RAM disk is always ready +} + +// Invoked when received SCSI_CMD_READ_CAPACITY_10 and SCSI_CMD_READ_FORMAT_CAPACITY to determine the disk size +// Application update block count and block size +void tud_msc_capacity_cb(uint8_t lun, uint32_t *block_count, uint16_t *block_size) +{ + (void)lun; + + *block_count = DISK_BLOCK_NUM; + *block_size = DISK_BLOCK_SIZE; +} + +// Invoked when received Start Stop Unit command +// - Start = 0 : stopped power mode, if load_eject = 1 : unload disk storage +// - Start = 1 : active mode, if load_eject = 1 : load disk storage +bool tud_msc_start_stop_cb(uint8_t lun, uint8_t power_condition, bool start, bool load_eject) +{ + (void)lun; + (void)power_condition; + + if (load_eject) { + if (start) { + // load disk storage + } else { + // unload disk storage + } + } + + return true; +} + +// Callback invoked when received READ10 command. +// Copy disk's data to buffer (up to bufsize) and return number of copied bytes. +int32_t tud_msc_read10_cb(uint8_t lun, uint32_t lba, uint32_t offset, void *buffer, + uint32_t bufsize) +{ + (void)lun; + + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + + uint8_t const *addr = msc_disk[lba] + offset; + memcpy(buffer, addr, bufsize); + + return (int32_t)bufsize; +} + +// Callback invoked when received WRITE10 command. +// Process data in buffer to disk's storage and return number of written bytes +int32_t tud_msc_write10_cb(uint8_t lun, uint32_t lba, uint32_t offset, uint8_t *buffer, + uint32_t bufsize) +{ + (void)lun; + + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + +#ifndef CFG_EXAMPLE_MSC_READONLY + uint8_t *addr = msc_disk[lba] + offset; + memcpy(addr, buffer, bufsize); +#else + (void)lba; + (void)offset; + (void)buffer; +#endif + + return (int32_t)bufsize; +} + +// Callback invoked when received an SCSI command not in built-in list below +// - READ_CAPACITY10, READ_FORMAT_CAPACITY, INQUIRY, MODE_SENSE6, REQUEST_SENSE +// - READ10 and WRITE10 has their own callbacks +int32_t tud_msc_scsi_cb(uint8_t lun, uint8_t const scsi_cmd[16], void *buffer, uint16_t bufsize) +{ + // read10 & write10 has their own callback and MUST not be handled here + + void const *response = NULL; + int32_t resplen = 0; + + // most scsi handled is input + bool in_xfer = true; + + switch (scsi_cmd[0]) { + default: + // Set Sense = Invalid Command Operation + tud_msc_set_sense(lun, SCSI_SENSE_ILLEGAL_REQUEST, 0x20, 0x00); + + // negative means error -> tinyusb could stall and/or response with failed status + resplen = -1; + break; + } + + // return resplen must not larger than bufsize + if (resplen > bufsize) + resplen = bufsize; + + if (response && (resplen > 0)) { + if (in_xfer) { + memcpy(buffer, response, (size_t)resplen); + } else { + // SCSI output + } + } + + return (int32_t)resplen; +} + +#endif diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/project.mk b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/project.mk new file mode 100644 index 00000000000..041227cc8a4 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/project.mk @@ -0,0 +1,28 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +#BOARD=FTHR_RevA +# ^ For example, you can uncomment this line to make the +# project build for the "FTHR_RevA" board. + +# ********************************************************** + +# Add your config here! + +# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable TINYUSB library +LIB_TINYUSB=1 +TINYUSB_CONFIG_DIR = ./ + +# Enable FreeRTOS library +LIB_FREERTOS=1 + + diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/tusb_config.h b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/tusb_config.h new file mode 100644 index 00000000000..92e3f44b1df --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/tusb_config.h @@ -0,0 +1,121 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#ifndef EXAMPLES_MAX32650_USB_TINYUSB_CDC_MSC_FREERTOS_TUSB_CONFIG_H_ +#define EXAMPLES_MAX32650_USB_TINYUSB_CDC_MSC_FREERTOS_TUSB_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +//--------------------------------------------------------------------+ +// Board Specific Configuration +//--------------------------------------------------------------------+ + +// RHPort number used for device can be defined by board.mk, default to port 0 +#ifndef BOARD_TUD_RHPORT +#define BOARD_TUD_RHPORT 0 +#endif + +// RHPort max operational speed can defined by board.mk +#ifndef BOARD_TUD_MAX_SPEED +#define BOARD_TUD_MAX_SPEED OPT_MODE_DEFAULT_SPEED +#endif + +//-------------------------------------------------------------------- +// COMMON CONFIGURATION +//-------------------------------------------------------------------- + +// defined by board.mk +#ifndef CFG_TUSB_MCU +#error CFG_TUSB_MCU must be defined +#endif + +// This examples use FreeRTOS +#ifndef CFG_TUSB_OS +#define CFG_TUSB_OS OPT_OS_FREERTOS +#endif + +// Espressif IDF requires "freertos/" prefix in include path +#if TUP_MCU_ESPRESSIF +#define CFG_TUSB_OS_INC_PATH freertos / +#endif + +// can be defined by compiler in DEBUG build +#ifndef CFG_TUSB_DEBUG +#define CFG_TUSB_DEBUG 0 +#endif + +// Enable Device stack +#define CFG_TUD_ENABLED 1 + +// Default is max speed that hardware controller could support with on-chip PHY +#define CFG_TUD_MAX_SPEED BOARD_TUD_MAX_SPEED + +/* USB DMA on some MCUs can only access a specific SRAM region with restriction on alignment. + * Tinyusb use follows macros to declare transferring memory so that they can be put + * into those specific section. + * e.g + * - CFG_TUSB_MEM SECTION : __attribute__ (( section(".usb_ram") )) + * - CFG_TUSB_MEM_ALIGN : __attribute__ ((aligned(4))) + */ +#ifndef CFG_TUSB_MEM_SECTION +#define CFG_TUSB_MEM_SECTION +#endif + +#ifndef CFG_TUSB_MEM_ALIGN +#define CFG_TUSB_MEM_ALIGN __attribute__((aligned(4))) +#endif + +//-------------------------------------------------------------------- +// DEVICE CONFIGURATION +//-------------------------------------------------------------------- + +#ifndef CFG_TUD_ENDPOINT0_SIZE +#define CFG_TUD_ENDPOINT0_SIZE 64 +#endif + +//------------- CLASS -------------// +#define CFG_TUD_CDC 1 +#define CFG_TUD_MSC 1 +#define CFG_TUD_HID 0 +#define CFG_TUD_MIDI 0 +#define CFG_TUD_VENDOR 0 + +// CDC FIFO size of TX and RX +#define CFG_TUD_CDC_RX_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) +#define CFG_TUD_CDC_TX_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) + +// CDC Endpoint transfer buffer size, more is faster +#define CFG_TUD_CDC_EP_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) + +// MSC Buffer size of Device Mass storage +#define CFG_TUD_MSC_EP_BUFSIZE 512 + +#ifdef __cplusplus +} +#endif + +#endif // EXAMPLES_MAX32650_USB_TINYUSB_CDC_MSC_FREERTOS_TUSB_CONFIG_H_ diff --git a/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/usb_descriptors.c b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/usb_descriptors.c new file mode 100644 index 00000000000..80664f0329d --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/cdc_msc_freertos/usb_descriptors.c @@ -0,0 +1,282 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +/* A combination of interfaces must have a unique product id, since PC will save device driver after the first plug. + * Same VID/PID with different interface e.g MSC (first), then CDC (later) will possibly cause system error on PC. + * + * Auto ProductID layout's Bitmap: + * [MSB] HID | MSC | CDC [LSB] + */ +#define _PID_MAP(itf, n) ((CFG_TUD_##itf) << (n)) +#define USB_PID \ + (0x4000 | _PID_MAP(CDC, 0) | _PID_MAP(MSC, 1) | _PID_MAP(HID, 2) | _PID_MAP(MIDI, 3) | \ + _PID_MAP(VENDOR, 4)) + +#define USB_VID 0xCafe +#define USB_BCD 0x0200 + +//--------------------------------------------------------------------+ +// Device Descriptors +//--------------------------------------------------------------------+ +tusb_desc_device_t const desc_device = { + .bLength = sizeof(tusb_desc_device_t), + .bDescriptorType = TUSB_DESC_DEVICE, + .bcdUSB = USB_BCD, + + // Use Interface Association Descriptor (IAD) for CDC + // As required by USB Specs IAD's subclass must be common class (2) and protocol must be IAD (1) + .bDeviceClass = TUSB_CLASS_MISC, + .bDeviceSubClass = MISC_SUBCLASS_COMMON, + .bDeviceProtocol = MISC_PROTOCOL_IAD, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + + .idVendor = USB_VID, + .idProduct = USB_PID, + .bcdDevice = 0x0100, + + .iManufacturer = 0x01, + .iProduct = 0x02, + .iSerialNumber = 0x03, + + .bNumConfigurations = 0x01 +}; + +// Invoked when received GET DEVICE DESCRIPTOR +// Application return pointer to descriptor +uint8_t const *tud_descriptor_device_cb(void) +{ + return (uint8_t const *)&desc_device; +} + +//--------------------------------------------------------------------+ +// Configuration Descriptor +//--------------------------------------------------------------------+ + +enum { ITF_NUM_CDC = 0, ITF_NUM_CDC_DATA, ITF_NUM_MSC, ITF_NUM_TOTAL }; + +#if CFG_TUSB_MCU == OPT_MCU_LPC175X_6X || CFG_TUSB_MCU == OPT_MCU_LPC177X_8X || \ + CFG_TUSB_MCU == OPT_MCU_LPC40XX +// LPC 17xx and 40xx endpoint type (bulk/interrupt/iso) are fixed by its number +// 0 control, 1 In, 2 Bulk, 3 Iso, 4 In, 5 Bulk etc ... +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x82 + +#define EPNUM_MSC_OUT 0x05 +#define EPNUM_MSC_IN 0x85 + +#elif CFG_TUSB_MCU == OPT_MCU_SAMG +// SAMG doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x83 + +#define EPNUM_MSC_OUT 0x04 +#define EPNUM_MSC_IN 0x85 + +#elif CFG_TUSB_MCU == OPT_MCU_MAX32690 || CFG_TUSB_MCU == OPT_MCU_MAX32650 || \ + CFG_TUSB_MCU == OPT_MCU_MAX32666 || CFG_TUSB_MCU == OPT_MCU_MAX78002 +// MAX32 doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x83 + +#define EPNUM_MSC_OUT 0x04 +#define EPNUM_MSC_IN 0x85 + +#else +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x82 + +#define EPNUM_MSC_OUT 0x03 +#define EPNUM_MSC_IN 0x83 + +#endif + +#define CONFIG_TOTAL_LEN (TUD_CONFIG_DESC_LEN + TUD_CDC_DESC_LEN + TUD_MSC_DESC_LEN) + +uint8_t const desc_fs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP notification address and size, EP data address (out, in) and size. + TUD_CDC_DESCRIPTOR(ITF_NUM_CDC, 4, EPNUM_CDC_NOTIF, 8, EPNUM_CDC_OUT, EPNUM_CDC_IN, 64), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 5, EPNUM_MSC_OUT, EPNUM_MSC_IN, 64), +}; + +#if TUD_OPT_HIGH_SPEED +// Per USB specs: high speed capable device must report device_qualifier and other_speed_configuration + +// high speed configuration +uint8_t const desc_hs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP notification address and size, EP data address (out, in) and size. + TUD_CDC_DESCRIPTOR(ITF_NUM_CDC, 4, EPNUM_CDC_NOTIF, 8, EPNUM_CDC_OUT, EPNUM_CDC_IN, 512), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 5, EPNUM_MSC_OUT, EPNUM_MSC_IN, 512), +}; + +// other speed configuration +uint8_t desc_other_speed_config[CONFIG_TOTAL_LEN]; + +// device qualifier is mostly similar to device descriptor since we don't change configuration based on speed +tusb_desc_device_qualifier_t const desc_device_qualifier = { + .bLength = sizeof(tusb_desc_device_qualifier_t), + .bDescriptorType = TUSB_DESC_DEVICE_QUALIFIER, + .bcdUSB = USB_BCD, + + .bDeviceClass = TUSB_CLASS_MISC, + .bDeviceSubClass = MISC_SUBCLASS_COMMON, + .bDeviceProtocol = MISC_PROTOCOL_IAD, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + .bNumConfigurations = 0x01, + .bReserved = 0x00 +}; + +// Invoked when received GET DEVICE QUALIFIER DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete. +// device_qualifier descriptor describes information about a high-speed capable device that would +// change if the device were operating at the other speed. If not highspeed capable stall this request. +uint8_t const *tud_descriptor_device_qualifier_cb(void) +{ + return (uint8_t const *)&desc_device_qualifier; +} + +// Invoked when received GET OTHER SEED CONFIGURATION DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +// Configuration descriptor in the other speed e.g if high speed then this is for full speed and vice versa +uint8_t const *tud_descriptor_other_speed_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + + // if link speed is high return fullspeed config, and vice versa + // Note: the descriptor type is OHER_SPEED_CONFIG instead of CONFIG + memcpy(desc_other_speed_config, + (tud_speed_get() == TUSB_SPEED_HIGH) ? desc_fs_configuration : desc_hs_configuration, + CONFIG_TOTAL_LEN); + + desc_other_speed_config[1] = TUSB_DESC_OTHER_SPEED_CONFIG; + + return desc_other_speed_config; +} + +#endif // highspeed + +// Invoked when received GET CONFIGURATION DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const *tud_descriptor_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + +#if TUD_OPT_HIGH_SPEED + // Although we are highspeed, host may be fullspeed. + return (tud_speed_get() == TUSB_SPEED_HIGH) ? desc_hs_configuration : desc_fs_configuration; +#else + return desc_fs_configuration; +#endif +} + +//--------------------------------------------------------------------+ +// String Descriptors +//--------------------------------------------------------------------+ + +// String Descriptor Index +enum { + STRID_LANGID = 0, + STRID_MANUFACTURER, + STRID_PRODUCT, + STRID_SERIAL, +}; + +// array of pointer to string descriptors +char const *string_desc_arr[] = { + (const char[]){ 0x09, 0x04 }, // 0: is supported language is English (0x0409) + "TinyUSB", // 1: Manufacturer + "TinyUSB Device", // 2: Product + NULL, // 3: Serials will use unique ID if possible + "TinyUSB CDC", // 4: CDC Interface + "TinyUSB MSC", // 5: MSC Interface +}; + +static uint16_t _desc_str[32 + 1]; + +// Invoked when received GET STRING DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +uint16_t const *tud_descriptor_string_cb(uint8_t index, uint16_t langid) +{ + (void)langid; + size_t chr_count; + + switch (index) { + case STRID_LANGID: + memcpy(&_desc_str[1], string_desc_arr[0], 2); + chr_count = 1; + break; + + case STRID_SERIAL: + chr_count = board_usb_get_serial(_desc_str + 1, 32); + break; + + default: + // Note: the 0xEE index string is a Microsoft OS 1.0 Descriptors. + // https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/microsoft-defined-usb-descriptors + + if (!(index < sizeof(string_desc_arr) / sizeof(string_desc_arr[0]))) + return NULL; + + const char *str = string_desc_arr[index]; + + // Cap at max char + chr_count = strlen(str); + size_t const max_count = sizeof(_desc_str) / sizeof(_desc_str[0]) - 1; // -1 for string type + if (chr_count > max_count) + chr_count = max_count; + + // Convert ASCII string into UTF-16 + for (size_t i = 0; i < chr_count; i++) { + _desc_str[1 + i] = str[i]; + } + break; + } + + // first byte is length (including header), second byte is string type + _desc_str[0] = (uint16_t)((TUSB_DESC_STRING << 8) | (2 * chr_count + 2)); + + return _desc_str; +} diff --git a/Examples/MAX32650/USB/TinyUSB/hid_composite/.cproject b/Examples/MAX32650/USB/TinyUSB/hid_composite/.cproject new file mode 100644 index 00000000000..1b73d5ef0fb --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/hid_composite/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32650/USB/TinyUSB/hid_composite/.project b/Examples/MAX32650/USB/TinyUSB/hid_composite/.project new file mode 100644 index 00000000000..691dbf6d42e --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/hid_composite/.project @@ -0,0 +1,26 @@ + + + hid_composite + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml b/Examples/MAX32650/USB/TinyUSB/hid_composite/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml rename to Examples/MAX32650/USB/TinyUSB/hid_composite/.settings/language.settings.xml diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32650/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32650/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32650/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32650/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..9907fa94314 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=hid_composite +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32650 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32650/USB/TinyUSB/hid_composite/.vscode/README.md b/Examples/MAX32650/USB/TinyUSB/hid_composite/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/hid_composite/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.vscode/c_cpp_properties.json b/Examples/MAX32650/USB/TinyUSB/hid_composite/.vscode/c_cpp_properties.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.vscode/c_cpp_properties.json rename to Examples/MAX32650/USB/TinyUSB/hid_composite/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb b/Examples/MAX32650/USB/TinyUSB/hid_composite/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb rename to Examples/MAX32650/USB/TinyUSB/hid_composite/.vscode/flash.gdb diff --git a/Examples/MAX32650/USB/TinyUSB/hid_composite/.vscode/launch.json b/Examples/MAX32650/USB/TinyUSB/hid_composite/.vscode/launch.json new file mode 100644 index 00000000000..b7404af60e8 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/hid_composite/.vscode/launch.json @@ -0,0 +1,190 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd": "${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": [ + "${workspaceFolder}/build/${config:program_file}" + ], + "symbolFiles": [ + { + "file": "${workspaceFolder}/build/${config:symbol_file}" + } + ], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd" + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe" + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd" + }, + "searchDir": [ + "${config:OCD_path}/scripts" + ], + "configFiles": [ + "interface/${config:M4_OCD_interface_file}", + "target/${config:M4_OCD_target_file}" + ], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd" + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe" + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd" + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + { + "text": "-list-features" + } + ], + "setupCommands": [ + { + "text": "set logging overwrite on" + }, + { + "text": "set logging file debug-arm.log" + }, + { + "text": "set logging on" + }, + { + "text": "cd ${workspaceFolder}" + }, + { + "text": "exec-file build/${config:program_file}" + }, + { + "text": "symbol-file build/${config:symbol_file}" + }, + { + "text": "target remote localhost:3333" + }, + { + "text": "monitor reset halt" + }, + { + "text": "set $pc=Reset_Handler" + }, + { + "text": "b main" + } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd" + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe" + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd" + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + { + "text": "-list-features" + } + ], + "targetArchitecture": "arm", + "setupCommands": [ + { + "text": "set logging overwrite on" + }, + { + "text": "set logging file debug-riscv.log" + }, + { + "text": "set logging on" + }, + { + "text": "cd ${workspaceFolder}" + }, + { + "text": "set architecture riscv:rv32", + "ignoreFailures": false + }, + { + "text": "exec-file build/${config:program_file}", + "ignoreFailures": false + }, + { + "text": "symbol-file buildrv/${config:symbol_file}", + "ignoreFailures": false + }, + { + "text": "target remote localhost:3334" + }, + { + "text": "b main" + }, + { + "text": "set $pc=Reset_Handler", + "ignoreFailures": false + } + ] + } + ] +} \ No newline at end of file diff --git a/Examples/MAX32650/USB/TinyUSB/hid_composite/.vscode/settings.json b/Examples/MAX32650/USB/TinyUSB/hid_composite/.vscode/settings.json new file mode 100644 index 00000000000..c6f0b09fa51 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/hid_composite/.vscode/settings.json @@ -0,0 +1,80 @@ +{ + "terminal.integrated.env.windows": { + "Path": "${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + "terminal.integrated.env.linux": { + "PATH": "${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH": "${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "target": "MAX32650", + "board": "EvKit_V1", + "project_name": "${workspaceFolderBasename}", + "program_file": "${config:project_name}.elf", + "symbol_file": "${config:program_file}", + "M4_OCD_interface_file": "cmsis-dap.cfg", + "M4_OCD_target_file": "max32650.cfg", + "RV_OCD_interface_file": "ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file": "${config:target}_riscv.cfg", + "v_Arm_GCC": "10.3", + "v_xPack_GCC": "12.2.0-3.1", + "OCD_path": "${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path": "${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path": "${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path": "${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path": "${config:MAXIM_PATH}/Tools/MSYS2", + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", + "${config:MAXIM_PATH}/Libraries/tinyusb/src/", + "${config:MAXIM_PATH}/Libraries/tinyusb/hw/" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json b/Examples/MAX32650/USB/TinyUSB/hid_composite/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json rename to Examples/MAX32650/USB/TinyUSB/hid_composite/.vscode/tasks.json diff --git a/Examples/MAX32650/USB/TinyUSB/hid_composite/Makefile b/Examples/MAX32650/USB/TinyUSB/hid_composite/Makefile new file mode 100644 index 00000000000..6d97c8e0fb3 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/hid_composite/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32650 +TARGET_UC := MAX32650 +TARGET_LC := max32650 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32650/USB/TinyUSB/hid_composite/README.md b/Examples/MAX32650/USB/TinyUSB/hid_composite/README.md new file mode 100644 index 00000000000..a94121c76a5 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/hid_composite/README.md @@ -0,0 +1,39 @@ +## Description + +The example demonstrates the use of USB composite HID driver class. After doing the required connections given below, run the program and a new composite +HID device appears in the device manager, with keyboard, joystick, mouse and consumer control support. Pressing the switch SW2 on the EV Kit will result +in the 'a' key being pressed by the keyboard, the mouse moving down and right, joystick button A, and volume down. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +tusb_config.h by default has logging disabled via the CFG_TUSB_DEBUG definition. +For TinyUSB console logging, set the debug level to 1, 2, or 3, with a higher value +indicating more verbose logging. + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/UART0) connector. Make sure JP11 (2-3) is connected to UART. +- Default EV kit hardware configuration. + +## Expected Output + +By default, the console UART does not output any message. With CFG_TUSB_DEBUG set +to '2', the Console UART of the device will output these messages: + +``` +USBD init on controller 0, Highspeed = 1024 +sizeof(usbd_device_t) = 69 +sizeof(dcd_event_t) = 12 +sizeof(tu_fifo_t) = 12 +sizeof(tu_edpt_stream_t) = 24 +HID init +``` diff --git a/Examples/MAX32650/USB/TinyUSB/hid_composite/hid_composite.launch b/Examples/MAX32650/USB/TinyUSB/hid_composite/hid_composite.launch new file mode 100644 index 00000000000..4de38c439dc --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/hid_composite/hid_composite.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32650/USB/TinyUSB/hid_composite/main.c b/Examples/MAX32650/USB/TinyUSB/hid_composite/main.c new file mode 100644 index 00000000000..d3f1be82d4a --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/hid_composite/main.c @@ -0,0 +1,348 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * Copyright (c) 2024 Analog Devices, Inc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include +#include +#include + +#include "bsp/board_api.h" +#include "tusb.h" +#include "led.h" +#include "pb.h" +#include "mxc_device.h" +#include "gcr_regs.h" +#include "mxc_sys.h" +#include "usb_descriptors.h" + +//--------------------------------------------------------------------+ +// MACRO CONSTANT TYPEDEF PROTYPES +//--------------------------------------------------------------------+ + +/* Blink pattern + * - 250 ms : device not mounted + * - 1000 ms : device mounted + * - 2500 ms : device is suspended + */ +enum { + BLINK_NOT_MOUNTED = 250, + BLINK_MOUNTED = 1000, + BLINK_SUSPENDED = 2500, +}; + +static uint32_t blink_interval_ms = BLINK_NOT_MOUNTED; + +void led_blinking_task(void); +void hid_task(void); + +/*------------- MAIN -------------*/ +int main(void) +{ + board_init(); + + // init device stack on configured roothub port + tud_init(BOARD_TUD_RHPORT); + + if (board_init_after_tusb) { + board_init_after_tusb(); + } + + while (1) { + tud_task(); // tinyusb device task + led_blinking_task(); + + hid_task(); + } +} + +//--------------------------------------------------------------------+ +// Device callbacks +//--------------------------------------------------------------------+ + +// Invoked when device is mounted +void tud_mount_cb(void) +{ + blink_interval_ms = BLINK_MOUNTED; +} + +// Invoked when device is unmounted +void tud_umount_cb(void) +{ + blink_interval_ms = BLINK_NOT_MOUNTED; +} + +// Invoked when usb bus is suspended +// remote_wakeup_en : if host allow us to perform remote wakeup +// Within 7ms, device must draw an average of current less than 2.5 mA from bus +void tud_suspend_cb(bool remote_wakeup_en) +{ + (void)remote_wakeup_en; + blink_interval_ms = BLINK_SUSPENDED; +} + +// Invoked when usb bus is resumed +void tud_resume_cb(void) +{ + blink_interval_ms = tud_mounted() ? BLINK_MOUNTED : BLINK_NOT_MOUNTED; +} + +//--------------------------------------------------------------------+ +// USB HID +//--------------------------------------------------------------------+ + +static void send_hid_report(uint8_t report_id, uint32_t btn) +{ + // skip if hid is not ready yet + if (!tud_hid_ready()) + return; + + switch (report_id) { + case REPORT_ID_KEYBOARD: { + // use to avoid send multiple consecutive zero report for keyboard + static bool has_keyboard_key = false; + + if (btn) { + uint8_t keycode[6] = { 0 }; + keycode[0] = HID_KEY_A; + + tud_hid_keyboard_report(REPORT_ID_KEYBOARD, 0, keycode); + has_keyboard_key = true; + } else { + // send empty key report if previously has key pressed + if (has_keyboard_key) + tud_hid_keyboard_report(REPORT_ID_KEYBOARD, 0, NULL); + has_keyboard_key = false; + } + } break; + + case REPORT_ID_MOUSE: { + int8_t const delta = 5; + + // no button, right + down, no scroll, no pan + tud_hid_mouse_report(REPORT_ID_MOUSE, 0x00, delta, delta, 0, 0); + } break; + + case REPORT_ID_CONSUMER_CONTROL: { + // use to avoid send multiple consecutive zero report + static bool has_consumer_key = false; + + if (btn) { + // volume down + uint16_t volume_down = HID_USAGE_CONSUMER_VOLUME_DECREMENT; + tud_hid_report(REPORT_ID_CONSUMER_CONTROL, &volume_down, 2); + has_consumer_key = true; + } else { + // send empty key report (release key) if previously has key pressed + uint16_t empty_key = 0; + if (has_consumer_key) + tud_hid_report(REPORT_ID_CONSUMER_CONTROL, &empty_key, 2); + has_consumer_key = false; + } + } break; + + case REPORT_ID_GAMEPAD: { + // use to avoid send multiple consecutive zero report for keyboard + static bool has_gamepad_key = false; + + hid_gamepad_report_t report = { + .x = 0, .y = 0, .z = 0, .rz = 0, .rx = 0, .ry = 0, .hat = 0, .buttons = 0 + }; + + if (btn) { + report.hat = GAMEPAD_HAT_UP; + report.buttons = GAMEPAD_BUTTON_A; + tud_hid_report(REPORT_ID_GAMEPAD, &report, sizeof(report)); + + has_gamepad_key = true; + } else { + report.hat = GAMEPAD_HAT_CENTERED; + report.buttons = 0; + if (has_gamepad_key) + tud_hid_report(REPORT_ID_GAMEPAD, &report, sizeof(report)); + has_gamepad_key = false; + } + } break; + + default: + break; + } +} + +// Every 10ms, we will sent 1 report for each HID profile (keyboard, mouse etc ..) +// tud_hid_report_complete_cb() is used to send the next report after previous one is complete +void hid_task(void) +{ + // Poll every 10ms + const uint32_t interval_ms = 10; + static uint32_t start_ms = 0; + + if (board_millis() - start_ms < interval_ms) + return; // not enough time + start_ms += interval_ms; + + uint32_t const btn = board_button_read(); + + // Remote wakeup + if (tud_suspended() && btn) { + // Wake up host if we are in suspend mode + // and REMOTE_WAKEUP feature is enabled by host + tud_remote_wakeup(); + } else { + // Send the 1st of report chain, the rest will be sent by tud_hid_report_complete_cb() + send_hid_report(REPORT_ID_KEYBOARD, btn); + } +} + +// Invoked when sent REPORT successfully to host +// Application can use this to send the next report +// Note: For composite reports, report[0] is report ID +void tud_hid_report_complete_cb(uint8_t instance, uint8_t const *report, uint16_t len) +{ + (void)instance; + (void)len; + + uint8_t next_report_id = report[0] + 1u; + + if (next_report_id < REPORT_ID_COUNT) { + send_hid_report(next_report_id, board_button_read()); + } +} + +// Invoked when received GET_REPORT control request +// Application must fill buffer report's content and return its length. +// Return zero will cause the stack to STALL request +uint16_t tud_hid_get_report_cb(uint8_t instance, uint8_t report_id, hid_report_type_t report_type, + uint8_t *buffer, uint16_t reqlen) +{ + (void)instance; + (void)report_id; + (void)report_type; + (void)buffer; + (void)reqlen; + + return 0; +} + +// Invoked when received SET_REPORT control request or +// received data on OUT endpoint ( Report ID = 0, Type = 0 ) +void tud_hid_set_report_cb(uint8_t instance, uint8_t report_id, hid_report_type_t report_type, + uint8_t const *buffer, uint16_t bufsize) +{ + (void)instance; + + if (report_type == HID_REPORT_TYPE_OUTPUT) { + // Set keyboard LED e.g Capslock, Numlock etc... + if (report_id == REPORT_ID_KEYBOARD) { + // bufsize should be (at least) 1 + if (bufsize < 1) + return; + + uint8_t const kbd_leds = buffer[0]; + + if (kbd_leds & KEYBOARD_LED_CAPSLOCK) { + // Capslock On: disable blink, turn led on + blink_interval_ms = 0; + board_led_write(true); + } else { + // Caplocks Off: back to normal blink + board_led_write(false); + blink_interval_ms = BLINK_MOUNTED; + } + } + } +} + +//--------------------------------------------------------------------+ +// BLINKING TASK +//--------------------------------------------------------------------+ +void led_blinking_task(void) +{ + static uint32_t start_ms = 0; + static bool led_state = false; + + // blink is disabled + if (!blink_interval_ms) + return; + + // Blink every interval ms + if (board_millis() - start_ms < blink_interval_ms) + return; // not enough time + start_ms += blink_interval_ms; + + board_led_write(led_state); + led_state = 1 - led_state; // toggle +} + +//------------------------------------------------------------------------------ +// Wrapper functions to bridge TinyUSB BSP with MSDK BSP +//------------------------------------------------------------------------------ +void board_init(void) +{ + // 1ms tick timer + SysTick_Config(SystemCoreClock / 1000); + + //USB + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clk_ctrl & MXC_F_GCR_CLK_CTRL_HIRC96_EN)) { + MXC_GCR->clk_ctrl |= MXC_F_GCR_CLK_CTRL_HIRC96_EN; + MXC_SYS_Clock_Timeout(MXC_F_GCR_CLK_CTRL_HIRC96_RDY); + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); +} + +void board_led_write(bool state) +{ + if (state) { + LED_On(0); + } else { + LED_Off(0); + } +} + +uint32_t board_button_read(void) +{ + return PB_Get(0); +} + +//--------------------------------------------------------------------+ +// Forward USB interrupt events to TinyUSB IRQ Handler +//--------------------------------------------------------------------+ +void USB_IRQHandler(void) +{ + tud_int_handler(0); +} + +volatile uint32_t system_ticks = 0; + +void SysTick_Handler(void) +{ + system_ticks++; +} + +uint32_t board_millis(void) +{ + return system_ticks; +} diff --git a/Examples/MAX32650/USB/TinyUSB/hid_composite/project.mk b/Examples/MAX32650/USB/TinyUSB/hid_composite/project.mk new file mode 100644 index 00000000000..fa4a6d0c2b7 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/hid_composite/project.mk @@ -0,0 +1,23 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +#BOARD=FTHR_RevA +# ^ For example, you can uncomment this line to make the +# project build for the "FTHR_RevA" board. + +# ********************************************************** + +# Add your config here! + +# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable TINYUSB library +LIB_TINYUSB=1 +TINYUSB_CONFIG_DIR = ./ diff --git a/Examples/MAX32650/USB/TinyUSB/hid_composite/tusb_config.h b/Examples/MAX32650/USB/TinyUSB/hid_composite/tusb_config.h new file mode 100644 index 00000000000..b6c8b201a00 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/hid_composite/tusb_config.h @@ -0,0 +1,107 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#ifndef EXAMPLES_MAX32650_USB_TINYUSB_HID_COMPOSITE_TUSB_CONFIG_H_ +#define EXAMPLES_MAX32650_USB_TINYUSB_HID_COMPOSITE_TUSB_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +//--------------------------------------------------------------------+ +// Board Specific Configuration +//--------------------------------------------------------------------+ + +// RHPort number used for device can be defined by board.mk, default to port 0 +#ifndef BOARD_TUD_RHPORT +#define BOARD_TUD_RHPORT 0 +#endif + +// RHPort max operational speed can defined by board.mk +#ifndef BOARD_TUD_MAX_SPEED +#define BOARD_TUD_MAX_SPEED OPT_MODE_DEFAULT_SPEED +#endif + +//-------------------------------------------------------------------- +// COMMON CONFIGURATION +//-------------------------------------------------------------------- + +// defined by compiler flags for flexibility +#ifndef CFG_TUSB_MCU +#error CFG_TUSB_MCU must be defined +#endif + +#ifndef CFG_TUSB_OS +#define CFG_TUSB_OS OPT_OS_NONE +#endif + +#ifndef CFG_TUSB_DEBUG +#define CFG_TUSB_DEBUG 0 +#endif + +// Enable Device stack +#define CFG_TUD_ENABLED 1 + +// Default is max speed that hardware controller could support with on-chip PHY +#define CFG_TUD_MAX_SPEED BOARD_TUD_MAX_SPEED + +/* USB DMA on some MCUs can only access a specific SRAM region with restriction on alignment. + * Tinyusb use follows macros to declare transferring memory so that they can be put + * into those specific section. + * e.g + * - CFG_TUSB_MEM SECTION : __attribute__ (( section(".usb_ram") )) + * - CFG_TUSB_MEM_ALIGN : __attribute__ ((aligned(4))) + */ +#ifndef CFG_TUSB_MEM_SECTION +#define CFG_TUSB_MEM_SECTION +#endif + +#ifndef CFG_TUSB_MEM_ALIGN +#define CFG_TUSB_MEM_ALIGN __attribute__((aligned(4))) +#endif + +//-------------------------------------------------------------------- +// DEVICE CONFIGURATION +//-------------------------------------------------------------------- + +#ifndef CFG_TUD_ENDPOINT0_SIZE +#define CFG_TUD_ENDPOINT0_SIZE 64 +#endif + +//------------- CLASS -------------// +#define CFG_TUD_HID 1 +#define CFG_TUD_CDC 0 +#define CFG_TUD_MSC 0 +#define CFG_TUD_MIDI 0 +#define CFG_TUD_VENDOR 0 + +// HID buffer size Should be sufficient to hold ID (if any) + Data +#define CFG_TUD_HID_EP_BUFSIZE 16 + +#ifdef __cplusplus +} +#endif + +#endif // EXAMPLES_MAX32650_USB_TINYUSB_HID_COMPOSITE_TUSB_CONFIG_H_ diff --git a/Examples/MAX32650/USB/TinyUSB/hid_composite/usb_descriptors.c b/Examples/MAX32650/USB/TinyUSB/hid_composite/usb_descriptors.c new file mode 100644 index 00000000000..83793abd40e --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/hid_composite/usb_descriptors.c @@ -0,0 +1,234 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" +#include "usb_descriptors.h" + +/* A combination of interfaces must have a unique product id, since PC will save device driver after the first plug. + * Same VID/PID with different interface e.g MSC (first), then CDC (later) will possibly cause system error on PC. + * + * Auto ProductID layout's Bitmap: + * [MSB] HID | MSC | CDC [LSB] + */ +#define _PID_MAP(itf, n) ((CFG_TUD_##itf) << (n)) +#define USB_PID \ + (0x4000 | _PID_MAP(CDC, 0) | _PID_MAP(MSC, 1) | _PID_MAP(HID, 2) | _PID_MAP(MIDI, 3) | \ + _PID_MAP(VENDOR, 4)) + +#define USB_VID 0xCafe +#define USB_BCD 0x0200 + +//--------------------------------------------------------------------+ +// Device Descriptors +//--------------------------------------------------------------------+ +tusb_desc_device_t const desc_device = { .bLength = sizeof(tusb_desc_device_t), + .bDescriptorType = TUSB_DESC_DEVICE, + .bcdUSB = USB_BCD, + .bDeviceClass = 0x00, + .bDeviceSubClass = 0x00, + .bDeviceProtocol = 0x00, + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + + .idVendor = USB_VID, + .idProduct = USB_PID, + .bcdDevice = 0x0100, + + .iManufacturer = 0x01, + .iProduct = 0x02, + .iSerialNumber = 0x03, + + .bNumConfigurations = 0x01 }; + +// Invoked when received GET DEVICE DESCRIPTOR +// Application return pointer to descriptor +uint8_t const *tud_descriptor_device_cb(void) +{ + return (uint8_t const *)&desc_device; +} + +//--------------------------------------------------------------------+ +// HID Report Descriptor +//--------------------------------------------------------------------+ + +uint8_t const desc_hid_report[] = { TUD_HID_REPORT_DESC_KEYBOARD(HID_REPORT_ID(REPORT_ID_KEYBOARD)), + TUD_HID_REPORT_DESC_MOUSE(HID_REPORT_ID(REPORT_ID_MOUSE)), + TUD_HID_REPORT_DESC_CONSUMER( + HID_REPORT_ID(REPORT_ID_CONSUMER_CONTROL)), + TUD_HID_REPORT_DESC_GAMEPAD(HID_REPORT_ID(REPORT_ID_GAMEPAD)) }; + +// Invoked when received GET HID REPORT DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const *tud_hid_descriptor_report_cb(uint8_t instance) +{ + (void)instance; + return desc_hid_report; +} + +//--------------------------------------------------------------------+ +// Configuration Descriptor +//--------------------------------------------------------------------+ + +enum { ITF_NUM_HID, ITF_NUM_TOTAL }; + +#define CONFIG_TOTAL_LEN (TUD_CONFIG_DESC_LEN + TUD_HID_DESC_LEN) + +#define EPNUM_HID 0x81 + +uint8_t const desc_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, TUSB_DESC_CONFIG_ATT_REMOTE_WAKEUP, + 100), + + // Interface number, string index, protocol, report descriptor len, EP In address, size & polling interval + TUD_HID_DESCRIPTOR(ITF_NUM_HID, 0, HID_ITF_PROTOCOL_NONE, sizeof(desc_hid_report), EPNUM_HID, + CFG_TUD_HID_EP_BUFSIZE, 5) +}; + +#if TUD_OPT_HIGH_SPEED +// Per USB specs: high speed capable device must report device_qualifier and other_speed_configuration + +// other speed configuration +uint8_t desc_other_speed_config[CONFIG_TOTAL_LEN]; + +// device qualifier is mostly similar to device descriptor since we don't change configuration based on speed +tusb_desc_device_qualifier_t const desc_device_qualifier = { + .bLength = sizeof(tusb_desc_device_qualifier_t), + .bDescriptorType = TUSB_DESC_DEVICE_QUALIFIER, + .bcdUSB = USB_BCD, + + .bDeviceClass = 0x00, + .bDeviceSubClass = 0x00, + .bDeviceProtocol = 0x00, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + .bNumConfigurations = 0x01, + .bReserved = 0x00 +}; + +// Invoked when received GET DEVICE QUALIFIER DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete. +// device_qualifier descriptor describes information about a high-speed capable device that would +// change if the device were operating at the other speed. If not highspeed capable stall this request. +uint8_t const *tud_descriptor_device_qualifier_cb(void) +{ + return (uint8_t const *)&desc_device_qualifier; +} + +// Invoked when received GET OTHER SEED CONFIGURATION DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +// Configuration descriptor in the other speed e.g if high speed then this is for full speed and vice versa +uint8_t const *tud_descriptor_other_speed_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + + // other speed config is basically configuration with type = OHER_SPEED_CONFIG + memcpy(desc_other_speed_config, desc_configuration, CONFIG_TOTAL_LEN); + desc_other_speed_config[1] = TUSB_DESC_OTHER_SPEED_CONFIG; + + // this example use the same configuration for both high and full speed mode + return desc_other_speed_config; +} + +#endif // highspeed + +// Invoked when received GET CONFIGURATION DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const *tud_descriptor_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + + // This example use the same configuration for both high and full speed mode + return desc_configuration; +} + +//--------------------------------------------------------------------+ +// String Descriptors +//--------------------------------------------------------------------+ + +// String Descriptor Index +enum { + STRID_LANGID = 0, + STRID_MANUFACTURER, + STRID_PRODUCT, + STRID_SERIAL, +}; + +// array of pointer to string descriptors +char const *string_desc_arr[] = { + (const char[]){ 0x09, 0x04 }, // 0: is supported language is English (0x0409) + "TinyUSB", // 1: Manufacturer + "TinyUSB Device", // 2: Product + NULL, // 3: Serials will use unique ID if possible +}; + +static uint16_t _desc_str[32 + 1]; + +// Invoked when received GET STRING DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +uint16_t const *tud_descriptor_string_cb(uint8_t index, uint16_t langid) +{ + (void)langid; + size_t chr_count; + + switch (index) { + case STRID_LANGID: + memcpy(&_desc_str[1], string_desc_arr[0], 2); + chr_count = 1; + break; + + case STRID_SERIAL: + chr_count = board_usb_get_serial(_desc_str + 1, 32); + break; + + default: + // Note: the 0xEE index string is a Microsoft OS 1.0 Descriptors. + // https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/microsoft-defined-usb-descriptors + + if (!(index < sizeof(string_desc_arr) / sizeof(string_desc_arr[0]))) + return NULL; + + const char *str = string_desc_arr[index]; + + // Cap at max char + chr_count = strlen(str); + size_t const max_count = sizeof(_desc_str) / sizeof(_desc_str[0]) - 1; // -1 for string type + if (chr_count > max_count) + chr_count = max_count; + + // Convert ASCII string into UTF-16 + for (size_t i = 0; i < chr_count; i++) { + _desc_str[1 + i] = str[i]; + } + break; + } + + // first byte is length (including header), second byte is string type + _desc_str[0] = (uint16_t)((TUSB_DESC_STRING << 8) | (2 * chr_count + 2)); + + return _desc_str; +} diff --git a/Examples/MAX32650/USB/TinyUSB/hid_composite/usb_descriptors.h b/Examples/MAX32650/USB/TinyUSB/hid_composite/usb_descriptors.h new file mode 100644 index 00000000000..546de44bc59 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/hid_composite/usb_descriptors.h @@ -0,0 +1,36 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef EXAMPLES_MAX32650_USB_TINYUSB_HID_COMPOSITE_USB_DESCRIPTORS_H_ +#define EXAMPLES_MAX32650_USB_TINYUSB_HID_COMPOSITE_USB_DESCRIPTORS_H_ + +enum { + REPORT_ID_KEYBOARD = 1, + REPORT_ID_MOUSE, + REPORT_ID_CONSUMER_CONTROL, + REPORT_ID_GAMEPAD, + REPORT_ID_COUNT +}; + +#endif // EXAMPLES_MAX32650_USB_TINYUSB_HID_COMPOSITE_USB_DESCRIPTORS_H_ diff --git a/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.cproject b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.cproject new file mode 100644 index 00000000000..cf9c44fe137 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.project b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.project new file mode 100644 index 00000000000..4c572f75f0f --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.project @@ -0,0 +1,26 @@ + + + msc_dual_lun + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/.settings/language.settings.xml b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32665/USB/USB_HIDKeyboard/.settings/language.settings.xml rename to Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.settings/language.settings.xml diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32665/USB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..25ccac5aa37 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=msc_dual_lun +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32650 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.vscode/README.md b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.vscode/c_cpp_properties.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json rename to Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/.vscode/flash.gdb b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/USB/USB_HIDKeyboard/.vscode/flash.gdb rename to Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.vscode/flash.gdb diff --git a/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.vscode/launch.json b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.vscode/launch.json new file mode 100644 index 00000000000..b7404af60e8 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.vscode/launch.json @@ -0,0 +1,190 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd": "${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": [ + "${workspaceFolder}/build/${config:program_file}" + ], + "symbolFiles": [ + { + "file": "${workspaceFolder}/build/${config:symbol_file}" + } + ], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd" + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe" + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd" + }, + "searchDir": [ + "${config:OCD_path}/scripts" + ], + "configFiles": [ + "interface/${config:M4_OCD_interface_file}", + "target/${config:M4_OCD_target_file}" + ], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd" + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe" + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd" + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + { + "text": "-list-features" + } + ], + "setupCommands": [ + { + "text": "set logging overwrite on" + }, + { + "text": "set logging file debug-arm.log" + }, + { + "text": "set logging on" + }, + { + "text": "cd ${workspaceFolder}" + }, + { + "text": "exec-file build/${config:program_file}" + }, + { + "text": "symbol-file build/${config:symbol_file}" + }, + { + "text": "target remote localhost:3333" + }, + { + "text": "monitor reset halt" + }, + { + "text": "set $pc=Reset_Handler" + }, + { + "text": "b main" + } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd" + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe" + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd" + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + { + "text": "-list-features" + } + ], + "targetArchitecture": "arm", + "setupCommands": [ + { + "text": "set logging overwrite on" + }, + { + "text": "set logging file debug-riscv.log" + }, + { + "text": "set logging on" + }, + { + "text": "cd ${workspaceFolder}" + }, + { + "text": "set architecture riscv:rv32", + "ignoreFailures": false + }, + { + "text": "exec-file build/${config:program_file}", + "ignoreFailures": false + }, + { + "text": "symbol-file buildrv/${config:symbol_file}", + "ignoreFailures": false + }, + { + "text": "target remote localhost:3334" + }, + { + "text": "b main" + }, + { + "text": "set $pc=Reset_Handler", + "ignoreFailures": false + } + ] + } + ] +} \ No newline at end of file diff --git a/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.vscode/settings.json b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.vscode/settings.json new file mode 100644 index 00000000000..c6f0b09fa51 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.vscode/settings.json @@ -0,0 +1,80 @@ +{ + "terminal.integrated.env.windows": { + "Path": "${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + "terminal.integrated.env.linux": { + "PATH": "${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH": "${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "target": "MAX32650", + "board": "EvKit_V1", + "project_name": "${workspaceFolderBasename}", + "program_file": "${config:project_name}.elf", + "symbol_file": "${config:program_file}", + "M4_OCD_interface_file": "cmsis-dap.cfg", + "M4_OCD_target_file": "max32650.cfg", + "RV_OCD_interface_file": "ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file": "${config:target}_riscv.cfg", + "v_Arm_GCC": "10.3", + "v_xPack_GCC": "12.2.0-3.1", + "OCD_path": "${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path": "${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path": "${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path": "${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path": "${config:MAXIM_PATH}/Tools/MSYS2", + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", + "${config:MAXIM_PATH}/Libraries/tinyusb/src/", + "${config:MAXIM_PATH}/Libraries/tinyusb/hw/" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/.vscode/tasks.json b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/USB/USB_HIDKeyboard/.vscode/tasks.json rename to Examples/MAX32650/USB/TinyUSB/msc_dual_lun/.vscode/tasks.json diff --git a/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/Makefile b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/Makefile new file mode 100644 index 00000000000..6d97c8e0fb3 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32650 +TARGET_UC := MAX32650 +TARGET_LC := max32650 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/README.md b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/README.md new file mode 100644 index 00000000000..df98b1a75da --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/README.md @@ -0,0 +1,37 @@ +## Description + +The example demonstrates the use of USB Mass Storage driver class with TinyUSB. After doing the required connections given below, run the program and two new portable device appears in the device manager. It will appear as a new drives which can be read from. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +tusb_config.h by default has logging disabled via the CFG_TUSB_DEBUG definition. +For TinyUSB console logging, set the debug level to 1, 2, or 3, with a higher value +indicating more verbose logging. + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/UART0) connector. Make sure JP11 (2-3) is connected to UART. +- Default EV kit hardware configuration. + +## Expected Output + +By default, the console UART does not output any message. With CFG_TUSB_DEBUG set +to '2', the Console UART of the device will output these messages: + +``` +USBD init on controller 0, Highspeed = 1024 +sizeof(usbd_device_t) = 69 +sizeof(dcd_event_t) = 12 +sizeof(tu_fifo_t) = 12 +sizeof(tu_edpt_stream_t) = 24 +MSC init +``` diff --git a/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/main.c b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/main.c new file mode 100644 index 00000000000..8a1026a7cb6 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/main.c @@ -0,0 +1,174 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * Copyright (c) 2024 Analog Devices, Inc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include +#include +#include + +#include "bsp/board_api.h" +#include "tusb.h" +#include "led.h" +#include "pb.h" +#include "mxc_device.h" +#include "gcr_regs.h" +#include "mxc_sys.h" + +//--------------------------------------------------------------------+ +// MACRO CONSTANT TYPEDEF PROTYPES +//--------------------------------------------------------------------+ + +/* Blink pattern + * - 250 ms : device not mounted + * - 1000 ms : device mounted + * - 2500 ms : device is suspended + */ +enum { + BLINK_NOT_MOUNTED = 250, + BLINK_MOUNTED = 1000, + BLINK_SUSPENDED = 2500, +}; + +static uint32_t blink_interval_ms = BLINK_NOT_MOUNTED; + +void led_blinking_task(void); + +/*------------- MAIN -------------*/ +int main(void) +{ + board_init(); + + // init device stack on configured roothub port + tud_init(BOARD_TUD_RHPORT); + + if (board_init_after_tusb) { + board_init_after_tusb(); + } + + while (1) { + tud_task(); // tinyusb device task + led_blinking_task(); + } +} + +//--------------------------------------------------------------------+ +// Device callbacks +//--------------------------------------------------------------------+ + +// Invoked when device is mounted +void tud_mount_cb(void) +{ + blink_interval_ms = BLINK_MOUNTED; +} + +// Invoked when device is unmounted +void tud_umount_cb(void) +{ + blink_interval_ms = BLINK_NOT_MOUNTED; +} + +// Invoked when usb bus is suspended +// remote_wakeup_en : if host allow us to perform remote wakeup +// Within 7ms, device must draw an average of current less than 2.5 mA from bus +void tud_suspend_cb(bool remote_wakeup_en) +{ + (void)remote_wakeup_en; + blink_interval_ms = BLINK_SUSPENDED; +} + +// Invoked when usb bus is resumed +void tud_resume_cb(void) +{ + blink_interval_ms = tud_mounted() ? BLINK_MOUNTED : BLINK_NOT_MOUNTED; +} + +//--------------------------------------------------------------------+ +// BLINKING TASK +//--------------------------------------------------------------------+ +void led_blinking_task(void) +{ + static uint32_t start_ms = 0; + static bool led_state = false; + + // Blink every interval ms + if (board_millis() - start_ms < blink_interval_ms) + return; // not enough time + start_ms += blink_interval_ms; + + board_led_write(led_state); + led_state = 1 - led_state; // toggle +} + +//------------------------------------------------------------------------------ +// Wrapper functions to bridge TinyUSB BSP with MSDK BSP +//------------------------------------------------------------------------------ +void board_init(void) +{ + // 1ms tick timer + SysTick_Config(SystemCoreClock / 1000); + + //USB + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clk_ctrl & MXC_F_GCR_CLK_CTRL_HIRC96_EN)) { + MXC_GCR->clk_ctrl |= MXC_F_GCR_CLK_CTRL_HIRC96_EN; + MXC_SYS_Clock_Timeout(MXC_F_GCR_CLK_CTRL_HIRC96_RDY); + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); +} + +void board_led_write(bool state) +{ + if (state) { + LED_On(0); + } else { + LED_Off(0); + } +} + +uint32_t board_button_read(void) +{ + return PB_Get(0); +} + +//--------------------------------------------------------------------+ +// Forward USB interrupt events to TinyUSB IRQ Handler +//--------------------------------------------------------------------+ +void USB_IRQHandler(void) +{ + tud_int_handler(0); +} + +volatile uint32_t system_ticks = 0; + +void SysTick_Handler(void) +{ + system_ticks++; +} + +uint32_t board_millis(void) +{ + return system_ticks; +} diff --git a/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/msc_disk_dual.c b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/msc_disk_dual.c new file mode 100644 index 00000000000..1045f332e8b --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/msc_disk_dual.c @@ -0,0 +1,354 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +#if CFG_TUD_MSC + +// When button is pressed, LUN1 will be set to not ready to simulate +// medium not present (e.g SD card removed) + +// Some MCU doesn't have enough 8KB SRAM to store the whole disk +// We will use Flash as read-only disk with board that has +// CFG_EXAMPLE_MSC_READONLY defined +#if defined(CFG_EXAMPLE_MSC_READONLY) || defined(CFG_EXAMPLE_MSC_DUAL_READONLY) +#define MSC_CONST const +#else +#define MSC_CONST +#endif + +enum { + DISK_BLOCK_NUM = 16, // 8KB is the smallest size that windows allow to mount + DISK_BLOCK_SIZE = 512 +}; + +//--------------------------------------------------------------------+ +// LUN 0 +//--------------------------------------------------------------------+ +#define README0_CONTENTS \ + "LUN0: This is tinyusb's MassStorage Class demo.\r\n\r\n" \ + "If you find any bugs or get any questions, feel free to file an\r\n" \ + "issue at github.com/hathach/tinyusb" + +MSC_CONST uint8_t msc_disk0[DISK_BLOCK_NUM][DISK_BLOCK_SIZE] = { + //------------- Block0: Boot Sector -------------// + // byte_per_sector = DISK_BLOCK_SIZE; fat12_sector_num_16 = DISK_BLOCK_NUM; + // sector_per_cluster = 1; reserved_sectors = 1; + // fat_num = 1; fat12_root_entry_num = 16; + // sector_per_fat = 1; sector_per_track = 1; head_num = 1; hidden_sectors = 0; + // drive_number = 0x80; media_type = 0xf8; extended_boot_signature = 0x29; + // filesystem_type = "FAT12 "; volume_serial_number = 0x1234; volume_label = "TinyUSB 0 "; + // FAT magic code at offset 510-511 + { 0xEB, 0x3C, 0x90, 0x4D, 0x53, 0x44, 0x4F, 0x53, 0x35, 0x2E, 0x30, 0x00, 0x02, 0x01, 0x01, + 0x00, 0x01, 0x10, 0x00, 0x10, 0x00, 0xF8, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x29, 0x34, 0x12, 0x00, 0x00, 'T', 'i', 'n', + 'y', 'U', 'S', 'B', ' ', '0', ' ', ' ', 0x46, 0x41, 0x54, 0x31, 0x32, 0x20, 0x20, 0x20, 0x00, + 0x00, + + // Zero up to 2 last bytes of FAT magic code + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x55, 0xAA }, + + //------------- Block1: FAT12 Table -------------// + { + 0xF8, 0xFF, 0xFF, 0xFF, + 0x0F // // first 2 entries must be F8FF, third entry is cluster end of readme file + }, + + //------------- Block2: Root Directory -------------// + { + // first entry is volume label + 'T', 'i', 'n', 'y', 'U', 'S', 'B', ' ', '0', ' ', ' ', 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x6D, 0x65, 0x43, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // second entry is readme file + 'R', 'E', 'A', 'D', 'M', 'E', '0', ' ', 'T', 'X', 'T', 0x20, 0x00, 0xC6, 0x52, 0x6D, 0x65, + 0x43, 0x65, 0x43, 0x00, 0x00, 0x88, 0x6D, 0x65, 0x43, 0x02, 0x00, + sizeof(README0_CONTENTS) - 1, 0x00, 0x00, 0x00 // readme's files size (4 Bytes) + }, + + //------------- Block3: Readme Content -------------// + README0_CONTENTS +}; + +//--------------------------------------------------------------------+ +// LUN 1 +//--------------------------------------------------------------------+ +#define README1_CONTENTS \ + "LUN1: This is tinyusb's MassStorage Class demo.\r\n\r\n" \ + "If you find any bugs or get any questions, feel free to file an\r\n" \ + "issue at github.com/hathach/tinyusb" + +MSC_CONST uint8_t msc_disk1[DISK_BLOCK_NUM][DISK_BLOCK_SIZE] = { + //------------- Block0: Boot Sector -------------// + // byte_per_sector = DISK_BLOCK_SIZE; fat12_sector_num_16 = DISK_BLOCK_NUM; + // sector_per_cluster = 1; reserved_sectors = 1; + // fat_num = 1; fat12_root_entry_num = 16; + // sector_per_fat = 1; sector_per_track = 1; head_num = 1; hidden_sectors = 0; + // drive_number = 0x80; media_type = 0xf8; extended_boot_signature = 0x29; + // filesystem_type = "FAT12 "; volume_serial_number = 0x5678; volume_label = "TinyUSB 1 "; + // FAT magic code at offset 510-511 + { 0xEB, 0x3C, 0x90, 0x4D, 0x53, 0x44, 0x4F, 0x53, 0x35, 0x2E, 0x30, 0x00, 0x02, 0x01, 0x01, + 0x00, 0x01, 0x10, 0x00, 0x10, 0x00, 0xF8, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x29, 0x78, 0x56, 0x00, 0x00, 'T', 'i', 'n', + 'y', 'U', 'S', 'B', ' ', '1', ' ', ' ', 0x46, 0x41, 0x54, 0x31, 0x32, 0x20, 0x20, 0x20, 0x00, + 0x00, + + // Zero up to 2 last bytes of FAT magic code + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x55, 0xAA }, + + //------------- Block1: FAT12 Table -------------// + { + 0xF8, 0xFF, 0xFF, 0xFF, + 0x0F // // first 2 entries must be F8FF, third entry is cluster end of readme file + }, + + //------------- Block2: Root Directory -------------// + { + // first entry is volume label + 'T', 'i', 'n', 'y', 'U', 'S', 'B', ' ', '1', ' ', ' ', 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x6D, 0x65, 0x43, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // second entry is readme file + 'R', 'E', 'A', 'D', 'M', 'E', '1', ' ', 'T', 'X', 'T', 0x20, 0x00, 0xC6, 0x52, 0x6D, 0x65, + 0x43, 0x65, 0x43, 0x00, 0x00, 0x88, 0x6D, 0x65, 0x43, 0x02, 0x00, + sizeof(README1_CONTENTS) - 1, 0x00, 0x00, 0x00 // readme's files size (4 Bytes) + }, + + //------------- Block3: Readme Content -------------// + README1_CONTENTS +}; + +// Invoked to determine max LUN +uint8_t tud_msc_get_maxlun_cb(void) +{ + return 2; // dual LUN +} + +// Invoked when received SCSI_CMD_INQUIRY +// Application fill vendor id, product id and revision with string up to 8, 16, 4 characters respectively +void tud_msc_inquiry_cb(uint8_t lun, uint8_t vendor_id[8], uint8_t product_id[16], + uint8_t product_rev[4]) +{ + (void)lun; // use same ID for both LUNs + + const char vid[] = "TinyUSB"; + const char pid[] = "Mass Storage"; + const char rev[] = "1.0"; + + memcpy(vendor_id, vid, strlen(vid)); + memcpy(product_id, pid, strlen(pid)); + memcpy(product_rev, rev, strlen(rev)); +} + +// Invoked when received Test Unit Ready command. +// return true allowing host to read/write this LUN e.g SD card inserted +bool tud_msc_test_unit_ready_cb(uint8_t lun) +{ + if (lun == 1 && board_button_read()) + return false; + + return true; // RAM disk is always ready +} + +// Invoked when received SCSI_CMD_READ_CAPACITY_10 and SCSI_CMD_READ_FORMAT_CAPACITY to determine the disk size +// Application update block count and block size +void tud_msc_capacity_cb(uint8_t lun, uint32_t *block_count, uint16_t *block_size) +{ + (void)lun; + + *block_count = DISK_BLOCK_NUM; + *block_size = DISK_BLOCK_SIZE; +} + +// Invoked when received Start Stop Unit command +// - Start = 0 : stopped power mode, if load_eject = 1 : unload disk storage +// - Start = 1 : active mode, if load_eject = 1 : load disk storage +bool tud_msc_start_stop_cb(uint8_t lun, uint8_t power_condition, bool start, bool load_eject) +{ + (void)lun; + (void)power_condition; + + if (load_eject) { + if (start) { + // load disk storage + } else { + // unload disk storage + } + } + + return true; +} + +// Callback invoked when received READ10 command. +// Copy disk's data to buffer (up to bufsize) and return number of copied bytes. +int32_t tud_msc_read10_cb(uint8_t lun, uint32_t lba, uint32_t offset, void *buffer, + uint32_t bufsize) +{ + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + + uint8_t const *addr = (lun ? msc_disk1[lba] : msc_disk0[lba]) + offset; + memcpy(buffer, addr, bufsize); + + return (int32_t)bufsize; +} + +bool tud_msc_is_writable_cb(uint8_t lun) +{ + (void)lun; + +#if defined(CFG_EXAMPLE_MSC_READONLY) || defined(CFG_EXAMPLE_MSC_DUAL_READONLY) + return false; +#else + return true; +#endif +} + +// Callback invoked when received WRITE10 command. +// Process data in buffer to disk's storage and return number of written bytes +int32_t tud_msc_write10_cb(uint8_t lun, uint32_t lba, uint32_t offset, uint8_t *buffer, + uint32_t bufsize) +{ + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + +#if defined(CFG_EXAMPLE_MSC_READONLY) || defined(CFG_EXAMPLE_MSC_DUAL_READONLY) + (void)lun; + (void)lba; + (void)offset; + (void)buffer; +#else + uint8_t *addr = (lun ? msc_disk1[lba] : msc_disk0[lba]) + offset; + memcpy(addr, buffer, bufsize); +#endif + + return (int32_t)bufsize; +} + +// Callback invoked when received an SCSI command not in built-in list below +// - READ_CAPACITY10, READ_FORMAT_CAPACITY, INQUIRY, MODE_SENSE6, REQUEST_SENSE +// - READ10 and WRITE10 has their own callbacks (MUST not be handled here) +int32_t tud_msc_scsi_cb(uint8_t lun, uint8_t const scsi_cmd[16], void *buffer, uint16_t bufsize) +{ + void const *response = NULL; + int32_t resplen = 0; + + // most scsi handled is input + bool in_xfer = true; + + switch (scsi_cmd[0]) { + default: + // Set Sense = Invalid Command Operation + tud_msc_set_sense(lun, SCSI_SENSE_ILLEGAL_REQUEST, 0x20, 0x00); + + // negative means error -> tinyusb could stall and/or response with failed status + return -1; + } + + // return resplen must not larger than bufsize + if (resplen > bufsize) + resplen = bufsize; + + if (response && (resplen > 0)) { + if (in_xfer) { + memcpy(buffer, response, (size_t)resplen); + } else { + // SCSI output + } + } + + return resplen; +} + +#endif diff --git a/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/msc_dual_lun.launch b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/msc_dual_lun.launch new file mode 100644 index 00000000000..6f1b8914131 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/msc_dual_lun.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/project.mk b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/project.mk new file mode 100644 index 00000000000..fa4a6d0c2b7 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/project.mk @@ -0,0 +1,23 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +#BOARD=FTHR_RevA +# ^ For example, you can uncomment this line to make the +# project build for the "FTHR_RevA" board. + +# ********************************************************** + +# Add your config here! + +# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable TINYUSB library +LIB_TINYUSB=1 +TINYUSB_CONFIG_DIR = ./ diff --git a/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/tusb_config.h b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/tusb_config.h new file mode 100644 index 00000000000..5162f00ad38 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/tusb_config.h @@ -0,0 +1,107 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#ifndef EXAMPLES_MAX32650_USB_TINYUSB_MSC_DUAL_LUN_TUSB_CONFIG_H_ +#define EXAMPLES_MAX32650_USB_TINYUSB_MSC_DUAL_LUN_TUSB_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +//--------------------------------------------------------------------+ +// Board Specific Configuration +//--------------------------------------------------------------------+ + +// RHPort number used for device can be defined by board.mk, default to port 0 +#ifndef BOARD_TUD_RHPORT +#define BOARD_TUD_RHPORT 0 +#endif + +// RHPort max operational speed can defined by board.mk +#ifndef BOARD_TUD_MAX_SPEED +#define BOARD_TUD_MAX_SPEED OPT_MODE_DEFAULT_SPEED +#endif + +//-------------------------------------------------------------------- +// COMMON CONFIGURATION +//-------------------------------------------------------------------- + +// defined by compiler flags for flexibility +#ifndef CFG_TUSB_MCU +#error CFG_TUSB_MCU must be defined +#endif + +#ifndef CFG_TUSB_OS +#define CFG_TUSB_OS OPT_OS_NONE +#endif + +#ifndef CFG_TUSB_DEBUG +#define CFG_TUSB_DEBUG 0 +#endif + +// Enable Device stack +#define CFG_TUD_ENABLED 1 + +// Default is max speed that hardware controller could support with on-chip PHY +#define CFG_TUD_MAX_SPEED BOARD_TUD_MAX_SPEED + +/* USB DMA on some MCUs can only access a specific SRAM region with restriction on alignment. + * Tinyusb use follows macros to declare transferring memory so that they can be put + * into those specific section. + * e.g + * - CFG_TUSB_MEM SECTION : __attribute__ (( section(".usb_ram") )) + * - CFG_TUSB_MEM_ALIGN : __attribute__ ((aligned(4))) + */ +#ifndef CFG_TUSB_MEM_SECTION +#define CFG_TUSB_MEM_SECTION +#endif + +#ifndef CFG_TUSB_MEM_ALIGN +#define CFG_TUSB_MEM_ALIGN __attribute__((aligned(4))) +#endif + +//-------------------------------------------------------------------- +// DEVICE CONFIGURATION +//-------------------------------------------------------------------- + +#ifndef CFG_TUD_ENDPOINT0_SIZE +#define CFG_TUD_ENDPOINT0_SIZE 64 +#endif + +//------------- CLASS -------------// +#define CFG_TUD_CDC 0 +#define CFG_TUD_MSC 1 +#define CFG_TUD_HID 0 +#define CFG_TUD_MIDI 0 +#define CFG_TUD_VENDOR 0 + +// MSC Buffer size of Device Mass storage +#define CFG_TUD_MSC_EP_BUFSIZE 512 + +#ifdef __cplusplus +} +#endif + +#endif // EXAMPLES_MAX32650_USB_TINYUSB_MSC_DUAL_LUN_TUSB_CONFIG_H_ diff --git a/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/usb_descriptors.c b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/usb_descriptors.c new file mode 100644 index 00000000000..0c6bfd7fa64 --- /dev/null +++ b/Examples/MAX32650/USB/TinyUSB/msc_dual_lun/usb_descriptors.c @@ -0,0 +1,206 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +/* A combination of interfaces must have a unique product id, since PC will save device driver after the first plug. + * Same VID/PID with different interface e.g MSC (first), then CDC (later) will possibly cause system error on PC. + * + * Auto ProductID layout's Bitmap: + * [MSB] HID | MSC | CDC [LSB] + */ +#define _PID_MAP(itf, n) ((CFG_TUD_##itf) << (n)) +#define USB_PID \ + (0x4000 | _PID_MAP(CDC, 0) | _PID_MAP(MSC, 1) | _PID_MAP(HID, 2) | _PID_MAP(MIDI, 3) | \ + _PID_MAP(VENDOR, 4)) + +//--------------------------------------------------------------------+ +// Device Descriptors +//--------------------------------------------------------------------+ +tusb_desc_device_t const desc_device = { .bLength = sizeof(tusb_desc_device_t), + .bDescriptorType = TUSB_DESC_DEVICE, + .bcdUSB = 0x0200, + .bDeviceClass = 0x00, + .bDeviceSubClass = 0x00, + .bDeviceProtocol = 0x00, + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + + .idVendor = 0xCafe, + .idProduct = USB_PID, + .bcdDevice = 0x0100, + + .iManufacturer = 0x01, + .iProduct = 0x02, + .iSerialNumber = 0x03, + + .bNumConfigurations = 0x01 }; + +// Invoked when received GET DEVICE DESCRIPTOR +// Application return pointer to descriptor +uint8_t const *tud_descriptor_device_cb(void) +{ + return (uint8_t const *)&desc_device; +} + +//--------------------------------------------------------------------+ +// Configuration Descriptor +//--------------------------------------------------------------------+ + +enum { ITF_NUM_MSC, ITF_NUM_TOTAL }; + +#define CONFIG_TOTAL_LEN (TUD_CONFIG_DESC_LEN + TUD_MSC_DESC_LEN) + +#if CFG_TUSB_MCU == OPT_MCU_LPC175X_6X || CFG_TUSB_MCU == OPT_MCU_LPC177X_8X || \ + CFG_TUSB_MCU == OPT_MCU_LPC40XX +// LPC 17xx and 40xx endpoint type (bulk/interrupt/iso) are fixed by its number +// 0 control, 1 In, 2 Bulk, 3 Iso, 4 In, 5 Bulk etc ... +#define EPNUM_MSC_OUT 0x02 +#define EPNUM_MSC_IN 0x82 + +#elif CFG_TUSB_MCU == OPT_MCU_SAMG +// SAMG doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_MSC_OUT 0x01 +#define EPNUM_MSC_IN 0x82 + +#elif CFG_TUSB_MCU == OPT_MCU_FT90X || CFG_TUSB_MCU == OPT_MCU_FT93X +// FT9XX doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_MSC_OUT 0x01 +#define EPNUM_MSC_IN 0x82 + +#elif CFG_TUSB_MCU == OPT_MCU_MAX32690 || CFG_TUSB_MCU == OPT_MCU_MAX32650 || \ + CFG_TUSB_MCU == OPT_MCU_MAX32666 || CFG_TUSB_MCU == OPT_MCU_MAX78002 +// MAX32 doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_MSC_OUT 0x01 +#define EPNUM_MSC_IN 0x82 + +#else +#define EPNUM_MSC_OUT 0x01 +#define EPNUM_MSC_IN 0x81 + +#endif + +uint8_t const desc_fs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 0, EPNUM_MSC_OUT, EPNUM_MSC_IN, 64), +}; + +#if TUD_OPT_HIGH_SPEED +uint8_t const desc_hs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 0, EPNUM_MSC_OUT, EPNUM_MSC_IN, 512), +}; +#endif + +// Invoked when received GET CONFIGURATION DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const *tud_descriptor_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + +#if TUD_OPT_HIGH_SPEED + // Although we are highspeed, host may be fullspeed. + return (tud_speed_get() == TUSB_SPEED_HIGH) ? desc_hs_configuration : desc_fs_configuration; +#else + return desc_fs_configuration; +#endif +} + +//--------------------------------------------------------------------+ +// String Descriptors +//--------------------------------------------------------------------+ + +// String Descriptor Index +enum { + STRID_LANGID = 0, + STRID_MANUFACTURER, + STRID_PRODUCT, + STRID_SERIAL, +}; + +// array of pointer to string descriptors +char const *string_desc_arr[] = { + (const char[]){ 0x09, 0x04 }, // 0: is supported language is English (0x0409) + "TinyUSB", // 1: Manufacturer + "TinyUSB Device", // 2: Product + NULL, // 3: Serials will use unique ID if possible +}; + +static uint16_t _desc_str[32 + 1]; + +// Invoked when received GET STRING DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +uint16_t const *tud_descriptor_string_cb(uint8_t index, uint16_t langid) +{ + (void)langid; + size_t chr_count; + + switch (index) { + case STRID_LANGID: + memcpy(&_desc_str[1], string_desc_arr[0], 2); + chr_count = 1; + break; + + case STRID_SERIAL: + chr_count = board_usb_get_serial(_desc_str + 1, 32); + break; + + default: + // Note: the 0xEE index string is a Microsoft OS 1.0 Descriptors. + // https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/microsoft-defined-usb-descriptors + + if (!(index < sizeof(string_desc_arr) / sizeof(string_desc_arr[0]))) + return NULL; + + const char *str = string_desc_arr[index]; + + // Cap at max char + chr_count = strlen(str); + size_t const max_count = sizeof(_desc_str) / sizeof(_desc_str[0]) - 1; // -1 for string type + if (chr_count > max_count) + chr_count = max_count; + + // Convert ASCII string into UTF-16 + for (size_t i = 0; i < chr_count; i++) { + _desc_str[1 + i] = str[i]; + } + break; + } + + // first byte is length (including header), second byte is string type + _desc_str[0] = (uint16_t)((TUSB_DESC_STRING << 8) | (2 * chr_count + 2)); + + return _desc_str; +} diff --git a/Examples/MAX32650/USB/USB_CDCACM/.vscode/settings.json b/Examples/MAX32650/USB/USB_CDCACM/.vscode/settings.json deleted file mode 100755 index a87b60bd8e7..00000000000 --- a/Examples/MAX32650/USB/USB_CDCACM/.vscode/settings.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32650", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32650.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32650/USB/USB_CDCACM/Makefile b/Examples/MAX32650/USB/USB_CDCACM/Makefile deleted file mode 100644 index 2765ae15e10..00000000000 --- a/Examples/MAX32650/USB/USB_CDCACM/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32650 -TARGET_UC := MAX32650 -TARGET_LC := max32650 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32650/USB/USB_CDCACM/descriptors.h b/Examples/MAX32650/USB/USB_CDCACM/descriptors.h deleted file mode 100644 index 29e61108a6b..00000000000 --- a/Examples/MAX32650/USB/USB_CDCACM/descriptors.h +++ /dev/null @@ -1,329 +0,0 @@ -/** - * @file descriptors.h - * @brief descriptors listed here - */ - -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/* Define to prevent redundant inclusion */ -#ifndef EXAMPLES_MAX32650_USB_USB_CDCACM_DESCRIPTORS_H_ -#define EXAMPLES_MAX32650_USB_USB_CDCACM_DESCRIPTORS_H_ - -/* **** Includes **** */ -#include -#include "usb.h" -#include "hid_kbd.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* **** Definitions **** */ - -MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { - 0x12, /* bLength = 18 */ - 0x01, /* bDescriptorType = Device */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x02, /* bDeviceClass = comm class (2) */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x0B6A, /* idVendor (Maxim Integrated) */ - 0x003C, /* idProduct */ - 0x0100, /* bcdDevice */ - 0x01, /* iManufacturer Descriptor ID */ - 0x02, /* iProduct Descriptor ID */ - 0x00, /* iSerialNumber = (0) No string */ - 0x01 /* bNumConfigurations */ -}; - -/* Device qualifier needed for high-speed operation */ -MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) device_qualifier_descriptor = { - 0x0A, /* bLength = 10 */ - 0x06, /* bDescriptorType = Device Qualifier */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x02, /* bDeviceClass = Unspecified */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x01, /* bNumConfigurations */ - 0x00 /* Reserved, must be 0 */ -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #1 CDCACM Device */ - MXC_USB_interface_descriptor_t comm_interface_descriptor; - uint8_t header_functional_descriptor[5]; - uint8_t call_management_descriptor[5]; - uint8_t acm_functional_descriptor[4]; - uint8_t union_functional_descriptor[5]; - /* Interface #2 CDC Data*/ - MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; - MXC_USB_interface_descriptor_t data_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; -} - -config_descriptor = { - { - 0x09, /* bLength = 9 */ - 0x02, /* bDescriptorType = Config (2) */ - 0x0043, /* wTotalLength(L/H) */ - 0x02, /* bNumInterfaces */ - 0x01, /* bConfigValue */ - 0x02, /* iConfiguration */ - 0xE0, /* bmAttributes (self-powered, remote wakeup) */ - 0x01, /* MaxPower is 2ma (units are 2ma/bit) */ - }, - /********** Interface #1 : COMM Interface **********/ - { - /* First Interface Descriptor For Comm Class Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x02, /* bInterfaceClass = Communications Interface Class (2) */ - 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ - 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ - 0x04, /* iInterface */ - }, - { - /* Header Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x00, /* bDescriptorSubtype */ - 0x10, 0x01, /* bcdCDC */ - }, - { - /* Call Management Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x01, /* bDescriptorSubtype */ - 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ - 0x01, /* bmDataInterface */ - }, - { - /* Abstract Control Management Functional Descriptor */ - 0x04, /* bFunctionalLength = 4 */ - 0x24, /* bDescriptorType */ - 0x02, /* bDescriptorSubtype */ - 0x02, /* bmCapabilities */ - }, - { - /* Union Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x06, /* bDescriptorSubtype */ - 0x00, /* bmMasterInterface */ - 0x01, /* bmSlaveInterface0 */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x84, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0040, /* wMaxPacketSize */ - 0xff, /* bInterval (milliseconds) */ - }, - { - /* Second Interface Descriptor For Data Interface */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType (Interface) */ - 0x01, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints */ - 0x0a, /* bInterfaceClass = Data Interface (10) */ - 0x00, /* bInterfaceSubClass = none (0) */ - 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ - 0x04, /* biInterface = No Text String (0) */ - }, - { - /* OUT Endpoint 1 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x05, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #3) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00 /* bInterval (N/A) */ - } -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #1 CDCACM Device */ - MXC_USB_interface_descriptor_t comm_interface_descriptor; - uint8_t header_functional_descriptor[5]; - uint8_t call_management_descriptor[5]; - uint8_t acm_functional_descriptor[4]; - uint8_t union_functional_descriptor[5]; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; - /* Interface #2 CDCACM Data */ - MXC_USB_interface_descriptor_t data_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; -} - -config_descriptor_hs = { - { - 0x09, /* bLength */ - 0x02, /* bDescriptorType = Config */ - 0x0043, /* wTotalLength(L/H) */ - 0x02, /* bNumInterfaces */ - 0x01, /* bConfigurationValue */ - 0x02, /* iConfiguration */ - 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - /********** Interface #1 : COMM Interface **********/ - { - /* First Interface Descriptor For Comm Class Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x02, /* bInterfaceClass = Communications Interface Class (2) */ - 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ - 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ - 0x04, /* iInterface */ - }, - { - /* Header Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x00, /* bDescriptorSubtype */ - 0x10, 0x01, /* bcdCDC */ - }, - { - /* Call Management Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x01, /* bDescriptorSubtype */ - 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ - 0x01, /* bmDataInterface */ - }, - { - /* Abstract Control Management Functional Descriptor */ - 0x04, /* bFunctionalLength = 4 */ - 0x24, /* bDescriptorType */ - 0x02, /* bDescriptorSubtype */ - 0x02, /* bmCapabilities */ - }, - { - /* Union Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x06, /* bDescriptorSubtype */ - 0x00, /* bmMasterInterface */ - 0x01, /* bmSlaveInterface0 */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x84, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0200, /* wMaxPacketSize */ - 0xff, /* bInterval (milliseconds) */ - }, - { - /* Second Interface Descriptor For Data Interface */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType (Interface) */ - 0x01, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints */ - 0x0a, /* bInterfaceClass = Data Interface (10) */ - 0x00, /* bInterfaceSubClass = none (0) */ - 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ - 0x04, /* biInterface = No Text String (0) */ - }, - { - /* OUT Endpoint 1 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x05, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #3) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, -}; - -__attribute__((aligned(4))) uint8_t lang_id_desc[] = { - 0x04, /* bLength */ - 0x03, /* bDescriptorType */ - 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ -}; - -__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, - 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t prod_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', 0, - ' ', 0, 'C', 0, 'D', 0, 'C', 0, '-', 0, 'A', 0, 'C', 0, 'M', 0, -}; - -/* Not currently used (see device descriptor), but could be enabled if desired */ -__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ - 0x03, /* bDescriptorType */ - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, - '0', 0, '0', 0, '0', 0, '1', 0 }; - -__attribute__((aligned(4))) uint8_t cdcacm_func_desc[] = { - 0x20, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', - 0, ' ', 0, 'C', 0, 'D', 0, 'C', 0, 'A', 0, 'C', 0, 'M', 0, -}; - -#ifdef __cplusplus -} -#endif - -#endif // EXAMPLES_MAX32650_USB_USB_CDCACM_DESCRIPTORS_H_ diff --git a/Examples/MAX32650/USB/USB_CDCACM/main.c b/Examples/MAX32650/USB/USB_CDCACM/main.c deleted file mode 100644 index 29b50f8a7d4..00000000000 --- a/Examples/MAX32650/USB/USB_CDCACM/main.c +++ /dev/null @@ -1,401 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file - * @brief USB CDC-ACM example - * @details This project creates a virtual COM port, which loops back data sent to it. - * Load the project, connect a cable from the PC to the USB connector - * on the Evaluation Kit, and observe that the PC now recognizes a new COM port. - * A driver for the COM port, if needed, is located in the Driver/ subdirectory. - * - */ - -/* **** Includes **** */ -#include -#include -#include "mxc_errors.h" //#include "mxc_config.h" //SJ -#include "mxc_sys.h" -#include "mxc_delay.h" -#include "board.h" -#include "led.h" -#include "usb.h" -#include "usb_event.h" -#include "enumerate.h" -#include "cdc_acm.h" -#include "descriptors.h" - -/* **** Definitions **** */ -#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS -#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) - -#define BUFFER_SIZE 64 - -#define STRINGIFY(x) #x -#define TOSTRING(x) STRINGIFY(x) - -/* **** Global Data **** */ -volatile int configured; -volatile int suspended; -volatile unsigned int event_flags; -int remote_wake_en; - -/* **** Function Prototypes **** */ -static int setconfig_callback(MXC_USB_SetupPkt *sud, void *cbdata); -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int event_callback(maxusb_event_t evt, void *data); -static void usbAppSleep(void); -static void usbAppWakeup(void); -static int usb_read_callback(void); -static void echo_usb(void); -int usbStartupCallback(); -int usbShutdownCallback(); - -/* **** File Scope Variables **** */ - -/* This EP assignment must match the Configuration Descriptor */ -static acm_cfg_t acm_cfg = { - 2, /* EP OUT */ - MXC_USBHS_MAX_PACKET, /* OUT max packet size */ - 3, /* EP IN */ - MXC_USBHS_MAX_PACKET, /* IN max packet size */ - 4, /* EP Notify */ - MXC_USBHS_MAX_PACKET, /* Notify max packet size */ -}; - -static volatile int usb_read_complete; - -/* User-supplied function to delay usec micro-seconds */ -void delay_us(unsigned int usec) -{ - /* mxc_delay() takes unsigned long, so can't use it directly */ - MXC_Delay(usec); -} - -/* ************************************************************************** */ -int main(void) -{ - maxusb_cfg_options_t usb_opts; - - printf("\n\n***** USB CDC-ACM Example *****\n"); - printf("Waiting for VBUS...\n"); - - /* Initialize state */ - configured = 0; - suspended = 0; - event_flags = 0; - remote_wake_en = 0; - - /* Start out in full speed */ - usb_opts.enable_hs = 1; - usb_opts.delay_us = delay_us; /* Function which will be used for delays */ - usb_opts.init_callback = usbStartupCallback; - usb_opts.shutdown_callback = usbShutdownCallback; - - /* Initialize the usb module */ - if (MXC_USB_Init(&usb_opts) != 0) { - printf("usb_init() failed\n"); - while (1) {} - } - - /* Initialize the enumeration module */ - if (enum_init() != 0) { - printf("enum_init() failed\n"); - while (1) {} - } - - /* Register enumeration data */ - enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); - - if (usb_opts.enable_hs) { - /* Two additional descriptors needed for high-speed operation */ - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); - enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&device_qualifier_descriptor, 0); - } - - enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); - enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); - enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); - enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); - enum_register_descriptor(ENUM_DESC_STRING, cdcacm_func_desc, 4); - - /* Handle configuration */ - enum_register_callback(ENUM_SETCONFIG, setconfig_callback, NULL); - - /* Handle feature set/clear */ - enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); - enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); - - /* Initialize the class driver */ - if (acm_init(&config_descriptor.comm_interface_descriptor) != 0) { - printf("acm_init() failed\n"); - while (1) {} - } - - /* Register callbacks */ - MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, event_callback, NULL); - MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, event_callback, NULL); - acm_register_callback(ACM_CB_READ_READY, usb_read_callback); - - usb_read_complete = 0; - - /* Start with USB in low power mode */ - usbAppSleep(); - NVIC_EnableIRQ(USB_IRQn); - - /* Wait for events */ - while (1) { - echo_usb(); - - if (suspended || !configured) { - LED_Off(0); - } else { - LED_On(0); - } - - if (event_flags) { - /* Display events */ - if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); - printf("VBUS Disconnect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); - printf("VBUS Connect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); - printf("Bus Reset\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { /// - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); - printf("Bus Reset Done: %s speed\n", - (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); - printf("Suspended\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); - printf("Resume\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { - MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); - printf("Enumeration complete...\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { - MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); - printf("Remote Wakeup\n"); - } - } - } -} - -/* ************************************************************************** */ -static void echo_usb(void) -{ - int chars; - uint8_t buffer[BUFFER_SIZE]; - - if ((chars = acm_canread()) > 0) { - if (chars > BUFFER_SIZE) { - chars = BUFFER_SIZE; - } - - /* Read the data from USB */ - if (acm_read(buffer, chars) != chars) { - printf("acm_read() failed\n"); - return; - } - - /* Echo it back */ - if (acm_present()) { - if (acm_write(buffer, chars) != chars) { - printf("acm_write() failed\n"); - } - } - } -} - -/******************************************************************************/ -int usbStartupCallback() -{ - // Startup the HIRC96M clock if it's not on already - if (!(MXC_GCR->clk_ctrl & MXC_F_GCR_CLK_CTRL_HIRC96_EN)) { - MXC_GCR->clk_ctrl |= MXC_F_GCR_CLK_CTRL_HIRC96_EN; - - if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLK_CTRL_HIRC96_RDY) != E_NO_ERROR) { - return E_TIME_OUT; - } - } - - MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -int usbShutdownCallback() -{ - return MXC_SYS_USBHS_Shutdown(); -} - -/* ************************************************************************** */ -static int setconfig_callback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - /* Confirm the configuration value */ - if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { - configured = 1; - MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); - - acm_cfg.out_ep = config_descriptor.endpoint_descriptor_4.bEndpointAddress & 0x7; - acm_cfg.out_maxpacket = config_descriptor.endpoint_descriptor_4.wMaxPacketSize; - acm_cfg.in_ep = config_descriptor.endpoint_descriptor_5.bEndpointAddress & 0x7; - acm_cfg.in_maxpacket = config_descriptor.endpoint_descriptor_5.wMaxPacketSize; - acm_cfg.notify_ep = config_descriptor.endpoint_descriptor_3.bEndpointAddress & 0x7; - acm_cfg.notify_maxpacket = config_descriptor.endpoint_descriptor_3.wMaxPacketSize; - - return acm_configure(&acm_cfg); /* Configure the device class */ - } else if (sud->wValue == 0) { - configured = 0; - return acm_deconfigure(); - } - - return -1; -} - -/* ************************************************************************** */ -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 1; - } else { - /* Unknown callback */ - return -1; - } - - return 0; -} - -/* ************************************************************************** */ -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 0; - } else { - /* Unknown callback */ - return -1; - } - - return 0; -} - -/* ************************************************************************** */ -static void usbAppSleep(void) -{ - suspended = 1; -} - -/* ************************************************************************** */ -static void usbAppWakeup(void) -{ - suspended = 0; -} - -/* ************************************************************************** */ -static int event_callback(maxusb_event_t evt, void *data) -{ - /* Set event flag */ - MXC_SETBIT(&event_flags, evt); - - switch (evt) { - case MAXUSB_EVENT_NOVBUS: - MXC_USB_EventDisable(MAXUSB_EVENT_BRST); - MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); - MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); - MXC_USB_Disconnect(); - configured = 0; - enum_clearconfig(); - acm_deconfigure(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_VBUS: - MXC_USB_EventClear(MAXUSB_EVENT_BRST); - MXC_USB_EventEnable(MAXUSB_EVENT_BRST, event_callback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); /// - MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, event_callback, NULL); /// - MXC_USB_EventClear(MAXUSB_EVENT_SUSP); - MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, event_callback, NULL); - MXC_USB_Connect(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_BRST: - usbAppWakeup(); - enum_clearconfig(); - acm_deconfigure(); - configured = 0; - suspended = 0; - break; - - case MAXUSB_EVENT_BRSTDN: /// - if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor_hs, 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor, 0); - } else { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); - } - break; - - case MAXUSB_EVENT_SUSP: - usbAppSleep(); - break; - - case MAXUSB_EVENT_DPACT: - usbAppWakeup(); - break; - - default: - break; - } - - return 0; -} - -/* ************************************************************************** */ - -static int usb_read_callback(void) -{ - usb_read_complete = 1; - return 0; -} - -/* ************************************************************************** */ - -void USB_IRQHandler(void) -{ - MXC_USB_EventHandler(); -} - -/* ************************************************************************** */ - -void SysTick_Handler(void) -{ - MXC_DelayHandler(); -} diff --git a/Examples/MAX32650/USB/USB_CDCACM/project.mk b/Examples/MAX32650/USB/USB_CDCACM/project.mk deleted file mode 100644 index fef00cb4043..00000000000 --- a/Examples/MAX32650/USB/USB_CDCACM/project.mk +++ /dev/null @@ -1,22 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -#BOARD=FTHR_RevA -# ^ For example, you can uncomment this line to make the -# project build for the "FTHR_RevA" board. - -# ********************************************************** - -# Add your config here! - -# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable MAXUSB library -LIB_MAXUSB=1 diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json b/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json deleted file mode 100755 index a87b60bd8e7..00000000000 --- a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32650", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32650.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/Makefile b/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/Makefile deleted file mode 100644 index 2765ae15e10..00000000000 --- a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32650 -TARGET_UC := MAX32650 -TARGET_LC := max32650 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/descriptors.h b/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/descriptors.h deleted file mode 100644 index d641f3d4e9a..00000000000 --- a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/descriptors.h +++ /dev/null @@ -1,444 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -#ifndef EXAMPLES_MAX32650_USB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ -#define EXAMPLES_MAX32650_USB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ - -#include -#include "usb.h" -#include "hid_kbd.h" - -MXC_USB_device_descriptor_t __attribute__((aligned(4))) composite_device_descriptor = { - 0x12, /* bLength */ - 0x01, /* bDescriptorType = Device */ - 0x0200, - /* bcdUSB USB spec rev (BCD) */ /// - 0xEF, /* bDeviceClass = code specified by interface descriptors */ - 0x02, /* bDeviceSubClass = code specified by interface descriptors */ - 0x01, /* bDeviceProtocol = code specified by interface descriptors */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x0B6A, /* idVendor (Maxim Integrated) */ - 0x003C, - /* idProduct */ /// - 0x0100, /* bcdDevice */ - 0x01, /* iManufacturer Descriptor ID */ - 0x02, /* iProduct Descriptor ID */ - 0x00, /* iSerialNumber Descriptor ID */ - 0x01 /* bNumConfigurations */ -}; - -/* Device qualifier needed for high-speed operation */ -MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) -composite_device_qualifier_descriptor = { - 0x0A, /* bLength = 10 */ - 0x06, /* bDescriptorType = Device Qualifier */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0xEF, /* bDeviceClass = Unspecified */ - 0x02, /* bDeviceSubClass */ - 0x01, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x01, /* bNumConfigurations */ - 0x00 /* Reserved, must be 0 */ -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #0 Mass Storage Device */ - MXC_USB_interface_descriptor_t msc_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; - /* Interface Association Descriptor */ - uint8_t interface_association_descriptor[8]; - /* Interface #1 CDCACM Device */ - MXC_USB_interface_descriptor_t comm_interface_descriptor; - uint8_t header_functional_descriptor[5]; - uint8_t call_management_descriptor[5]; - uint8_t acm_functional_descriptor[4]; - uint8_t union_functional_descriptor[5]; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; - /* Interface #2 CDC Data*/ - MXC_USB_interface_descriptor_t data_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; -} - -composite_config_descriptor = { - { - 0x09, /* bLength */ - 0x02, /* bDescriptorType = Config */ - 0x0062, /* wTotalLength(L/H) = 98 bytes */ - 0x03, /* bNumInterfaces */ - 0x01, /* bConfigurationValue */ - 0x02, /* iConfiguration */ /// - 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ - 0x01, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - /********** Interface #0 : Mass Storage Device **********/ - { - /* Second Interface Descriptor For MSC Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints (one for IN one for OUT) */ - 0x08, /* bInterfaceClass = Mass Storage (8) */ - 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ - 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ - 0x05, /* iInterface */ - }, - { - /* OUT Endpoint 1 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00 /* bInterval (N/A) */ - }, - /********** Interface Association Descriptor **********/ - { - 0x08, /* bLength */ - 0x0B, /* bDescriptorType */ - 0x01, /* bFirstInterface */ - 0x02, /* bInterfaceCount */ - 0x02, /* bFunctionClass */ - 0x02, /* bFunctionSubClass */ - 0x01, /* bFunctionProtocol */ - 0x00, /* iFunction */ - }, - /********** Interface #1 : COMM Interface **********/ - { - /* First Interface Descriptor For Comm Class Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x01, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x02, /* bInterfaceClass = Communications Interface Class (2) */ - 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ - 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ - 0x04, /* iInterface */ - }, - { - /* Header Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x00, /* bDescriptorSubtype */ - 0x10, 0x01, /* bcdCDC */ - }, - { - /* Call Management Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x01, /* bDescriptorSubtype */ - 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ - 0x01, /* bmDataInterface */ - }, - { - /* Abstract Control Management Functional Descriptor */ - 0x04, /* bFunctionalLength = 4 */ - 0x24, /* bDescriptorType */ - 0x02, /* bDescriptorSubtype */ - 0x02, /* bmCapabilities */ - }, - { - /* Union Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x06, /* bDescriptorSubtype */ - 0x00, /* bmMasterInterface */ - 0x01, /* bmSlaveInterface0 */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x84, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0040, /* wMaxPacketSize */ - 0xff, /* bInterval (milliseconds) */ - }, - { - /* Second Interface Descriptor For Data Interface */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType (Interface) */ - 0x02, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints */ - 0x0a, /* bInterfaceClass = Data Interface (10) */ - 0x00, /* bInterfaceSubClass = none (0) */ - 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ - 0x04, /* biInterface = No Text String (0) */ - }, - { - /* OUT Endpoint 1 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x05, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #3) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #0 Mass Storage Device */ - MXC_USB_interface_descriptor_t msc_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; - /* Interface Association Descriptor */ - uint8_t interface_association_descriptor[8]; - /* Interface #1 CDCACM Device */ - MXC_USB_interface_descriptor_t comm_interface_descriptor; - uint8_t header_functional_descriptor[5]; - uint8_t call_management_descriptor[5]; - uint8_t acm_functional_descriptor[4]; - uint8_t union_functional_descriptor[5]; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; - /* Interface #2 CDC Data*/ - MXC_USB_interface_descriptor_t data_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; -} - -composite_config_descriptor_hs = { - { - 0x09, /* bLength */ - 0x02, /* bDescriptorType = Config */ - 0x0062, /* wTotalLength(L/H) */ - 0x03, /* bNumInterfaces */ - 0x01, /* bConfigurationValue */ - 0x02, /* iConfiguration */ - 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - /********** Interface #0 : Mass Storage Device **********/ - { - /* Second Interface Descriptor For MSC Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints (one for IN one for OUT) */ - 0x08, /* bInterfaceClass = Mass Storage (8) */ - 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ - 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ - 0x05, /* iInterface */ - }, - { - /* OUT Endpoint 1 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x01, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x01 /* bInterval (N/A) */ - }, - /********** Interface Association Descriptor **********/ - { - 0x08, /* bLength */ - 0x0B, /* bDescriptorType */ - 0x01, /* bFirstInterface */ - 0x02, /* bInterfaceCount */ - 0x02, /* bFunctionClass */ - 0x02, /* bFunctionSubClass */ - 0x01, /* bFunctionProtocol */ - 0x00, /* iFunction */ - }, - /********** Interface #1 : COMM Interface **********/ - { - /* First Interface Descriptor For Comm Class Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x01, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x02, /* bInterfaceClass = Communications Interface Class (2) */ - 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ - 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ - 0x04, /* iInterface */ - }, - { - /* Header Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x00, /* bDescriptorSubtype */ - 0x10, 0x01, /* bcdCDC */ - }, - { - /* Call Management Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x01, /* bDescriptorSubtype */ - 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ - 0x01, /* bmDataInterface */ - }, - { - /* Abstract Control Management Functional Descriptor */ - 0x04, /* bFunctionalLength = 4 */ - 0x24, /* bDescriptorType */ - 0x02, /* bDescriptorSubtype */ - 0x02, /* bmCapabilities */ - }, - { - /* Union Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x06, /* bDescriptorSubtype */ - 0x00, /* bmMasterInterface */ - 0x01, /* bmSlaveInterface0 */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x84, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0200, /* wMaxPacketSize */ - 0xff, /* bInterval (milliseconds) */ - }, - { - /* Second Interface Descriptor For Data Interface */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType (Interface) */ - 0x02, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints */ - 0x0a, /* bInterfaceClass = Data Interface (10) */ - 0x00, /* bInterfaceSubClass = none (0) */ - 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ - 0x04, /* biInterface = No Text String (0) */ - }, - { - /* OUT Endpoint 1 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x05, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #3) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, -}; - -__attribute__((aligned(4))) uint8_t report_descriptor[] = { - 0x05, 0x01, /* Usage Page (generic desktop) */ - 0x09, 0x06, /* Usage (keyboard) */ - 0xa1, 0x01, /* Collection */ - 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ - 0x19, 0xe0, /* Usage Minimum = 224 */ - 0x29, 0xe7, /* Usage Maximum = 231 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x01, /* Logical Maximum = 1 */ - 0x75, 0x01, /* Report Size = 1 */ - 0x95, 0x08, /* Report Count = 8 */ - 0x81, 0x02, /* Input(Data,Variable,Absolute) */ - 0x95, 0x01, /* Report Count = 1 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x81, 0x01, /* Input(Constant) */ - 0x19, 0x00, /* Usage Minimum = 0 */ - 0x29, 0x65, /* Usage Maximum = 101 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x65, /* Logical Maximum = 101 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x95, 0x01, /* Report Count = 1 */ - 0x81, 0x00, /* Input(Data,Variable,Array) */ - 0xc0 /* End Collection */ -}; - -__attribute__((aligned(4))) uint8_t lang_id_desc[] = { - 0x04, /* bLength */ - 0x03, /* bDescriptorType */ - 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ -}; - -__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, - 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t prod_id_desc[] = { - 0x34, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', - 0, 'C', 0, 'o', 0, 'm', 0, 'p', 0, 'o', 0, 's', 0, 'i', 0, 't', 0, - 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, -}; - -__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ - 0x03, /* bDescriptorType */ - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, - '0', 0, '0', 0, '0', 0, '1', 0 }; - -__attribute__((aligned(4))) uint8_t cdcacm_func_desc[] = { - 0x20, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', - 0, ' ', 0, 'C', 0, 'D', 0, 'C', 0, 'A', 0, 'C', 0, 'M', 0, -}; - -__attribute__((aligned(4))) uint8_t msc_func_desc[] = { - 0x3A, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', 0, 'M', - 0, 'a', 0, 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, - 'g', 0, 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, -}; - -#endif // EXAMPLES_MAX32650_USB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/main.c b/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/main.c deleted file mode 100644 index 5711fea27a9..00000000000 --- a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/main.c +++ /dev/null @@ -1,443 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file main.c - * @brief USB composite device with Mass Storage driver class and CDC-SCM driver class. -*/ - -#include -#include -#include "mxc_sys.h" -#include "mxc_delay.h" -#include "board.h" -#include "led.h" -#include "usb.h" -#include "usb_event.h" -#include "enumerate.h" -#include "cdc_acm.h" -#include "msc.h" -#include "descriptors.h" -#include "mscmem.h" - -/* **** Definitions **** */ -#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS -#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) - -#define BUFFER_SIZE 64 - -#define STRINGIFY(x) #x -#define TOSTRING(x) STRINGIFY(x) - -/* **** Global Data **** */ -volatile int configured; -volatile int suspended; -volatile unsigned int event_flags; -int remote_wake_en; - -/* **** Function Prototypes **** */ - -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int eventCallback(maxusb_event_t evt, void *data); -static void usbAppSleep(void); -static void usbAppWakeup(void); -static int usbReadCallback(void); -int usbStartupCallback(); -int usbShutdownCallback(); -static void echoUSB(void); - -/* This EP assignment must match the Configuration Descriptor */ -static msc_cfg_t msc_cfg = { - 1, /* EP OUT */ - MXC_USBHS_MAX_PACKET, /* OUT max packet size */ - 2, /* EP IN */ - MXC_USBHS_MAX_PACKET, /* IN max packet size */ -}; - -static const msc_idstrings_t ids = { - "MAXIM", /* Vendor string. Maximum of 8 bytes */ - "MSC Example", /* Product string. Maximum of 16 bytes */ - "1.0" /* Version string. Maximum of 4 bytes */ -}; - -/* This EP assignment must match the Configuration Descriptor */ -static acm_cfg_t acm_cfg = { - 2, /* EP OUT */ - MXC_USBHS_MAX_PACKET, /* OUT max packet size */ - 3, /* EP IN */ - MXC_USBHS_MAX_PACKET, /* IN max packet size */ - 4, /* EP Notify */ - MXC_USBHS_MAX_PACKET, /* Notify max packet size */ -}; - -static volatile int usb_read_complete; - -/* Functions to control "disk" memory. See msc.h for definitions. */ -static const msc_mem_t mem = { mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, - mscmem_Size, mscmem_Read, mscmem_Write }; - -/** - * User-supplied function to delay usec micro-seconds - * - * @param[in] usec The usec time to delay. - */ -void delay_us(unsigned int usec) -{ - /* mxc_delay() takes unsigned long, so can't use it directly */ - MXC_Delay(usec); -} - -/* ************************************************************************** */ -int main(void) -{ - maxusb_cfg_options_t usb_opts; - - printf("\n\n***** USB Composite Device (CDCACM and Mass Storage) Example *****\n"); - printf("Waiting for VBUS...\n"); - - /* Initialize state */ - configured = 0; - suspended = 0; - event_flags = 0; - remote_wake_en = 0; - - /* Start out in full speed */ - usb_opts.enable_hs = 1; /* 0:Full Speed 1:High Speed */ - usb_opts.delay_us = delay_us; /* Function which will be used for delays */ - usb_opts.init_callback = usbStartupCallback; - usb_opts.shutdown_callback = usbShutdownCallback; - - /* Initialize the usb module */ - if (MXC_USB_Init(&usb_opts) != 0) { - printf("usb_init() failed\n"); - while (1) {} - } - - /* Initialize the enumeration module */ - if (enum_init() != 0) { - printf("enum_init() failed\n"); - while (1) {} - } - - /* Register enumeration data */ - enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&composite_device_descriptor, 0); - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); - if (usb_opts.enable_hs) { - /* Two additional descriptors needed for high-speed operation */ - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor_hs, 0); - enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&composite_device_qualifier_descriptor, - 0); - } - enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); - enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); - enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); - enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); - enum_register_descriptor(ENUM_DESC_STRING, cdcacm_func_desc, 4); - enum_register_descriptor(ENUM_DESC_STRING, msc_func_desc, 5); - - /* Handle configuration */ - enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); - - /* Handle feature set/clear */ - enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); - enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); - - /* Initialize the class driver */ - if (msc_init(&composite_config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { - printf("msc_init() failed\n"); - while (1) {} - } - - if (acm_init(&composite_config_descriptor.comm_interface_descriptor) != 0) { - printf("acm_init() failed\n"); - while (1) {} - } - - /* Register callbacks */ - MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); - MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); - acm_register_callback(ACM_CB_READ_READY, usbReadCallback); - usb_read_complete = 0; - - /* Start with USB in low power mode */ - usbAppSleep(); - NVIC_EnableIRQ(USB_IRQn); - - /* Wait for events */ - while (1) { - echoUSB(); - - if (suspended || !configured) { - LED_Off(0); - } else { - LED_On(0); - } - - if (event_flags) { - /* Display events */ - if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); - printf("VBUS Disconnect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); - printf("VBUS Connect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); - printf("Bus Reset\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { /// - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); - printf("Bus Reset Done: %s speed\n", - (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); - printf("Suspended\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); - printf("Resume\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { - MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); - printf("Enumeration complete...\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { - MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); - printf("Remote Wakeup\n"); - } - } - } -} - -/******************************************************************************/ -static void echoUSB(void) -{ - int chars; - uint8_t buffer[BUFFER_SIZE]; - - if ((chars = acm_canread()) > 0) { - if (chars > BUFFER_SIZE) { - chars = BUFFER_SIZE; - } - - // Read the data from USB - if (acm_read(buffer, chars) != chars) { - printf("acm_read() failed\n"); - return; - } - - // Echo it back - if (acm_present()) { - if (acm_write(buffer, chars) != chars) { - printf("acm_write() failed\n"); - } - } - } -} - -/******************************************************************************/ -int usbStartupCallback() -{ - // Startup the HIRC96M clock if it's not on already - if (!(MXC_GCR->clk_ctrl & MXC_F_GCR_CLK_CTRL_HIRC96_EN)) { - MXC_GCR->clk_ctrl |= MXC_F_GCR_CLK_CTRL_HIRC96_EN; - - if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLK_CTRL_HIRC96_RDY) != E_NO_ERROR) { - return E_TIME_OUT; - } - } - - MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -int usbShutdownCallback() -{ - MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/* ************************************************************************** */ - -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - /* Confirm the configuration value */ - if (sud->wValue == composite_config_descriptor.config_descriptor.bConfigurationValue) { - // on++; - configured = 1; - MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); - if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { /// - msc_cfg.out_ep = composite_config_descriptor_hs.endpoint_descriptor_1.bEndpointAddress & - 0x7; - msc_cfg.out_maxpacket = - composite_config_descriptor_hs.endpoint_descriptor_1.wMaxPacketSize; - msc_cfg.in_ep = composite_config_descriptor_hs.endpoint_descriptor_2.bEndpointAddress & - 0x7; - msc_cfg.in_maxpacket = - composite_config_descriptor_hs.endpoint_descriptor_2.wMaxPacketSize; - } else { - msc_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_1.bEndpointAddress & - 0x7; - msc_cfg.out_maxpacket = - composite_config_descriptor.endpoint_descriptor_1.wMaxPacketSize; - msc_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_2.bEndpointAddress & - 0x7; - msc_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_2.wMaxPacketSize; - } - - acm_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_4.bEndpointAddress & 0x7; - acm_cfg.out_maxpacket = composite_config_descriptor.endpoint_descriptor_4.wMaxPacketSize; - acm_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_5.bEndpointAddress & 0x7; - acm_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_5.wMaxPacketSize; - acm_cfg.notify_ep = composite_config_descriptor.endpoint_descriptor_3.bEndpointAddress & - 0x7; - acm_cfg.notify_maxpacket = composite_config_descriptor.endpoint_descriptor_3.wMaxPacketSize; - - msc_configure(&msc_cfg); - return acm_configure(&acm_cfg); - /* Configure the device class */ - } else if (sud->wValue == 0) { - configured = 0; - msc_deconfigure(); - return acm_deconfigure(); - } - - return -1; -} - -/* ************************************************************************** */ - -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 1; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/* ************************************************************************** */ - -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 0; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/* ************************************************************************** */ - -static void usbAppSleep(void) -{ - /* TODO: Place low-power code here */ - suspended = 1; -} - -/* ************************************************************************** */ - -static void usbAppWakeup(void) -{ - /* TODO: Place low-power code here */ - suspended = 0; -} - -/* ************************************************************************** */ -static int eventCallback(maxusb_event_t evt, void *data) -{ - /* Set event flag */ - MXC_SETBIT(&event_flags, evt); - - switch (evt) { - case MAXUSB_EVENT_NOVBUS: - MXC_USB_EventDisable(MAXUSB_EVENT_BRST); - MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); - MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); - MXC_USB_Disconnect(); - configured = 0; - enum_clearconfig(); - msc_deconfigure(); - acm_deconfigure(); - usbAppSleep(); - break; - case MAXUSB_EVENT_VBUS: - MXC_USB_EventClear(MAXUSB_EVENT_BRST); - MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); /// - MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, eventCallback, NULL); /// - MXC_USB_EventClear(MAXUSB_EVENT_SUSP); - MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); - MXC_USB_Connect(); - usbAppSleep(); - break; - case MAXUSB_EVENT_BRST: - usbAppWakeup(); - enum_clearconfig(); - msc_deconfigure(); - acm_deconfigure(); - configured = 0; - suspended = 0; - break; - case MAXUSB_EVENT_BRSTDN: /// - if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor_hs, - 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor, 0); - } else { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor_hs, - 0); - } - break; - case MAXUSB_EVENT_SUSP: - usbAppSleep(); - break; - case MAXUSB_EVENT_DPACT: - usbAppWakeup(); - break; - default: - break; - } - - return 0; -} - -/* ************************************************************************** */ - -void USB_IRQHandler(void) -{ - MXC_USB_EventHandler(); -} - -/******************************************************************************/ -static int usbReadCallback(void) -{ - usb_read_complete = 1; - return 0; -} diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/mscmem.c b/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/mscmem.c deleted file mode 100644 index 3e888d05ab5..00000000000 --- a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/mscmem.c +++ /dev/null @@ -1,313 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file mscmem.h - * @brief Memory routines used by the USB Mass Storage Class example. - * See the msc_mem_t structure in msc.h for function details. - * @details Functions are provided for using the internal RAM of the - * device or the external SPI flash memory. Use the SPIXF_DISK - * and RAM_DISK defines to select the desired memory at compile - * time. - */ - -#include "mscmem.h" -#include -#include -#include "Ext_Flash.h" -#include "spixf.h" - -/***** Definitions *****/ - -#define SPIXF_DISK 1 -#define RAM_DISK 0 - -#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ -#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ - -/***** Global Data *****/ - -/***** File Scope Variables *****/ - -static int initialized = 0; -static int running = 0; - -#if SPIXF_DISK - -#undef EXT_FLASH_BAUD -#define EXT_FLASH_BAUD 5000000 /* SPI clock rate to communicate with the external flash */ - -#define EXT_FLASH_SECTOR_SIZE 4096 /* Number of bytes in one sector of the external flash */ -#define EXT_FLASH_SECTOR_SIZE_SHIFT \ - 12 /* The shift value used to convert between addresses and block numbers */ -#define EXT_FLASH_NUM_SECTORS 2048 /* Total number of sectors in the external flash */ - -#define MXC_SPIXF_WIDTH Ext_Flash_DataLine_Single /*Number of data lines*/ - -#define LBA_PER_SECTOR (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) -#define INVALID_SECTOR \ - EXT_FLASH_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ - -/***** File Scope Variables *****/ -static uint32_t sectorNum = INVALID_SECTOR; -static uint8_t sector[EXT_FLASH_SECTOR_SIZE]; -static int sectorDirty = 0; - -/***** Function Prototypes *****/ -static uint32_t getSectorNum(uint32_t lba); -static uint32_t getSectorAddr(uint32_t lba); -static uint32_t getSector(uint32_t num); - -/******************************************************************************/ -static uint32_t getSectorNum(uint32_t lba) -{ - /* Absolute_address = lba * LBA_SIZE */ - /* Sector_num = Absolute_address / EXT_FLASH_SECTOR_SIZE */ - /* Sector_num = lba * 512 / 4096 */ - return lba >> (EXT_FLASH_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); -} - -/******************************************************************************/ -static uint32_t getSectorAddr(uint32_t lba) -{ - /* eight 512 byte blocks in each sector */ - return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; -} - -/******************************************************************************/ -static uint32_t getSector(uint32_t num) -{ - /* New sector requested? */ - if (sectorNum != num) { - /* Is the current sector real? */ - if (sectorNum != INVALID_SECTOR) { - /* Was it written to after it was read from memory? */ - if (sectorDirty) { - /* Erase the old data. */ - Ext_Flash_Erase(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, Ext_Flash_Erase_4K); - /* Write the new */ - Ext_Flash_Program_Page(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, - EXT_FLASH_SECTOR_SIZE, MXC_SPIXF_WIDTH); - /* Mark data as clean */ - sectorDirty = 0; - } - } - - /* Requesting a new valid sector? */ - if (num != INVALID_SECTOR) { - Ext_Flash_Read(num << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, EXT_FLASH_SECTOR_SIZE, - MXC_SPIXF_WIDTH); - sectorDirty = 0; - sectorNum = num; - } - } - - return 0; -} - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - MXC_SPIXF_SetSPIFrequency(EXT_FLASH_BAUD); - Ext_Flash_Init(); - Ext_Flash_Reset(); - - if (MXC_SPIXF_WIDTH == Ext_Flash_DataLine_Quad) { - Ext_Flash_Quad(1); - } else { - Ext_Flash_Quad(0); - } - - initialized = 1; - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - /* Get number of 512 byte chunks the external flash contains. */ - return (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) * EXT_FLASH_NUM_SECTORS; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to external flash sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from external flash */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(buffer, sector + addr, LBA_SIZE); - - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to external flash sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from external flash */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(sector + addr, buffer, LBA_SIZE); - sectorDirty = 1; - - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Turn on the external flash if it is not already. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the initialization succeeded. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* TODO - could shut down XIPF interface here. */ - - /* Flush the currently cached sector if necessary. */ - if (getSector(INVALID_SECTOR)) { - return 1; - } - - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#elif RAM_DISK - -#define NUM_PAGES 0x100 -static uint8_t mem[NUM_PAGES][LBA_SIZE]; - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - initialized = 1; -#if (ERASE_MEMORY_ON_INIT) - memset(mem, 0, sizeof(mem)); -#endif - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - return NUM_PAGES; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(buffer, mem[lba], LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(mem[lba], buffer, LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Not much to do for this implementation. The RAM is always ready. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the RAM has been initialized. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* Nothing to do for this implementation. All data is written as it is */ - /* received so there are no pending writes that need to be flushed. */ - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#else -#error "You must assign either RAM_DISK or SPIXF_DISK to 1." -#endif diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/mscmem.h b/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/mscmem.h deleted file mode 100644 index 7231aacc003..00000000000 --- a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/mscmem.h +++ /dev/null @@ -1,85 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file mscmem.h - * @brief Memory routines used by the USB Mass Storage Class example. - * See the msc_mem_t structure in msc.h for function details. - */ - -#ifndef EXAMPLES_MAX32650_USB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ -#define EXAMPLES_MAX32650_USB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ - -#include - -/* **** Definitions **** */ -#define ERASE_MEMORY_ON_INIT \ - 1 /* Configuration option to clear the memory (to 0s) on initialization. */ -/* Use 1 to clear or 0 to leave untouched. */ -/** - * @brief Perform any initialization necessary to prepare the memory for reading/writing data. - * @returns 0 if initialization is successful, non-zero if an error occurred. - */ -int mscmem_Init(void); - -/** - * @brief Activates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Start(void); - -/** - * @brief Deactivates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Stop(void); - -/** - * @brief Reports the total size of the mass-storage memory. - * @returns The number of 512 byte blocks contained in the memory. - */ -uint32_t mscmem_Size(void); - -/** - * @brief Reads 512 bytes of data from the memory. - * @param lba The index of the 512 byte block to read. - * @param buffer A byte array of at least 512 bytes to hold the values read. - * @returns 0 if reading is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Read(uint32_t lba, uint8_t *buffer); - -/** - * @brief Writes 512 bytes of data to the memory. - * @param lba The index of the 512 byte block to write. - * @param buffer A byte array of at least 512 bytes holding the values to write. - * @returns 0 if writing is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Write(uint32_t lba, uint8_t *buffer); - -/** - * @brief Checks if the memory is ready to be read/written. - * @returns non-zero if the memory is ready, 0 otherwise. - */ -int mscmem_Ready(void); - -#endif // EXAMPLES_MAX32650_USB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/project.mk b/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/project.mk deleted file mode 100644 index 6a30aa04c35..00000000000 --- a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/project.mk +++ /dev/null @@ -1,26 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -#BOARD=FTHR_RevA -# ^ For example, you can uncomment this line to make the -# project build for the "FTHR_RevA" board. - -# ********************************************************** - -# Add your config here! - -# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable MAXUSB library -LIB_MAXUSB=1 - -ifeq ($(BOARD),FTHR_APPS_A) -$(error ERR_NOTSUPPORTED: This example requires an external flash IC, therefore it's not supported on the MAX32650FTHR) -endif \ No newline at end of file diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.vscode/settings.json b/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.vscode/settings.json deleted file mode 100755 index a87b60bd8e7..00000000000 --- a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.vscode/settings.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32650", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32650.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/Makefile b/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/Makefile deleted file mode 100644 index 2765ae15e10..00000000000 --- a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32650 -TARGET_UC := MAX32650 -TARGET_LC := max32650 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/descriptors.h b/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/descriptors.h deleted file mode 100644 index 692720c5072..00000000000 --- a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/descriptors.h +++ /dev/null @@ -1,216 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -#ifndef EXAMPLES_MAX32650_USB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ -#define EXAMPLES_MAX32650_USB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ - -#include -#include "usb.h" -#include "hid_kbd.h" - -MXC_USB_device_descriptor_t __attribute__((aligned(4))) composite_device_descriptor = { - 0x12, /* bLength */ - 0x01, /* bDescriptorType = Device */ - 0x0200, - /* bcdUSB USB spec rev (BCD) */ /// - 0x00, /* bDeviceClass = code specified by interface descriptors */ - 0x00, /* bDeviceSubClass = code specified by interface descriptors */ - 0x00, /* bDeviceProtocol = code specified by interface descriptors */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x0B6A, /* idVendor (Maxim Integrated) */ - 0x003C, - /* idProduct */ /// - 0x0100, /* bcdDevice */ - 0x01, /* iManufacturer Descriptor ID */ - 0x02, /* iProduct Descriptor ID */ - 0x03, /* iSerialNumber Descriptor ID */ - 0x01 /* bNumConfigurations */ -}; - -/* Device qualifier needed for high-speed operation */ -MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) -composite_device_qualifier_descriptor = { - 0x0A, /* bLength = 10 */ - 0x01, /* bDescriptorType = Device Qualifier */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x00, /* bDeviceClass = Unspecified */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x01, /* bNumConfigurations */ - 0x00 /* Reserved, must be 0 */ -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #1 HID Keyboard */ - MXC_USB_interface_descriptor_t hid_interface_descriptor; - hid_descriptor_t hid_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; - /* Interface #2 Mass Storage Device */ - MXC_USB_interface_descriptor_t msc_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; -} - -composite_config_descriptor = { - { - 0x09, /* bLength */ - 0x02, /* bDescriptorType = Config */ - 0x0039, /* wTotalLength(L/H) = 57 bytes */ - 0x02, /* bNumInterfaces */ - 0x01, /* bConfigurationValue */ - 0x02, /* iConfiguration */ - 0xA0, /* bmAttributes (bus-powered, remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - /********** Interface #0 : HID Keyboard **********/ - { - /* First Interface Descriptor */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x03, /* bInterfaceClass = HID */ - 0x00, /* bInterfaceSubClass */ - 0x00, /* bInterfaceProtocol */ - 0x04, /* iInterface */ - }, - { - /* HID Descriptor */ - 0x09, /* bFunctionalLength */ - 0x21, /* bDescriptorType = HID */ - 0x0110, /* bcdHID Rev 1.1 */ - 0x00, /* bCountryCode */ - 0x01, /* bNumDescriptors */ - 0x22, /* bDescriptorType = Report */ - 0x002b, /* wDescriptorLength */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0040, /* wMaxPacketSize */ - 0x0a /* bInterval (milliseconds) */ - }, - /********** Interface #1 : Mass Storage Device **********/ - { - /* Second Interface Descriptor For MSC Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x01, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints (one for IN one for OUT) */ - 0x08, /* bInterfaceClass = Mass Storage (8) */ - 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ - 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ - 0x05, /* iInterface */ - }, - { - /* OUT Endpoint 1 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00 /* bInterval (N/A) */ - }, -}; - -__attribute__((aligned(4))) uint8_t report_descriptor[] = { - 0x05, 0x01, /* Usage Page (generic desktop) */ - 0x09, 0x06, /* Usage (keyboard) */ - 0xa1, 0x01, /* Collection */ - 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ - 0x19, 0xe0, /* Usage Minimum = 224 */ - 0x29, 0xe7, /* Usage Maximum = 231 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x01, /* Logical Maximum = 1 */ - 0x75, 0x01, /* Report Size = 1 */ - 0x95, 0x08, /* Report Count = 8 */ - 0x81, 0x02, /* Input(Data,Variable,Absolute) */ - 0x95, 0x01, /* Report Count = 1 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x81, 0x01, /* Input(Constant) */ - 0x19, 0x00, /* Usage Minimum = 0 */ - 0x29, 0x65, /* Usage Maximum = 101 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x65, /* Logical Maximum = 101 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x95, 0x01, /* Report Count = 1 */ - 0x81, 0x00, /* Input(Data,Variable,Array) */ - 0xc0 /* End Collection */ -}; - -__attribute__((aligned(4))) uint8_t lang_id_desc[] = { - 0x04, /* bLength */ - 0x03, /* bDescriptorType */ - 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ -}; - -__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, - 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t prod_id_desc[] = { - 0x34, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', - 0, 'C', 0, 'o', 0, 'm', 0, 'p', 0, 'o', 0, 's', 0, 'i', 0, 't', 0, - 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, -}; - -__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ - 0x03, /* bDescriptorType */ - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, - '0', 0, '0', 0, '0', 0, '1', 0 }; - -__attribute__((aligned(4))) uint8_t hidkbd_func_desc[] = { - 0x24, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', - 0, 'K', 0, 'e', 0, 'y', 0, 'b', 0, 'o', 0, 'a', 0, 'r', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t msc_func_desc[] = { - 0x3A, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', 0, 'M', - 0, 'a', 0, 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, - 'g', 0, 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, -}; - -#endif // EXAMPLES_MAX32650_USB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/main.c b/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/main.c deleted file mode 100644 index fd2b132430c..00000000000 --- a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/main.c +++ /dev/null @@ -1,402 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file main.c - * @brief USB composite device with Mass Storage driver class and HID driver class. -*/ - -#include -#include -#include "led.h" -#include "pb.h" -#include "mxc_delay.h" -#include "usb.h" -#include "usb_event.h" -#include "enumerate.h" -#include "hid_kbd.h" -#include "msc.h" -#include "descriptors.h" -#include "mscmem.h" - -/* **** Definitions **** */ -#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS -#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) - -#define STRINGIFY(x) #x -#define TOSTRING(x) STRINGIFY(x) - -/* **** Global Data **** */ -volatile int configured; -volatile int suspended; -volatile unsigned int event_flags; -int remote_wake_en; - -/* This EP assignment must match the Configuration Descriptor */ -static msc_cfg_t msc_cfg = { - 1, /* EP OUT */ - MXC_USBHS_MAX_PACKET, /* OUT max packet size */ - 2, /* EP IN */ - MXC_USBHS_MAX_PACKET, /* IN max packet size */ -}; - -static const msc_idstrings_t ids = { - "MAXIM", /* Vendor string. Maximum of 8 bytes */ - "MSC Example", /* Product string. Maximum of 16 bytes */ - "1.0" /* Version string. Maximum of 4 bytes */ -}; - -/* Functions to control "disk" memory. See msc.h for definitions. */ -static const msc_mem_t mem = { - mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, mscmem_Size, mscmem_Read, mscmem_Write, -}; - -/* **** Function Prototypes **** */ -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int eventCallback(maxusb_event_t evt, void *data); -static void usbAppSleep(void); -static void usbAppWakeup(void); -static void buttonCallback(void *pb); -int usbStartupCallback(); -int usbShutdownCallback(); - -/** - * User-supplied function to delay usec micro-seconds - * - * @param[in] usec The usec time to delay. - */ -void delay_us(unsigned int usec) -{ - /* mxc_delay() takes unsigned long, so can't use it directly */ - MXC_Delay(usec); -} - -/* ************************************************************************** */ - -void USB_IRQHandler(void) -{ - MXC_USB_EventHandler(); -} - -/* ************************************************************************** */ -int main(void) -{ - maxusb_cfg_options_t usb_opts; - - printf("\n\n***** USB Composite Device (Keyboard and Mass Storage) Example *****\n"); - printf("Waiting for VBUS...\n"); - - /* Initialize state */ - configured = 0; - suspended = 0; - event_flags = 0; - remote_wake_en = 0; - - /* Start out in full speed */ - usb_opts.enable_hs = 0; - usb_opts.delay_us = delay_us; /* Function which will be used for delays */ - usb_opts.init_callback = usbStartupCallback; - usb_opts.shutdown_callback = usbShutdownCallback; - - /* Initialize the usb module */ - if (MXC_USB_Init(&usb_opts) != 0) { - printf("usb_init() failed\n"); - - while (1) {} - } - - /* Initialize the enumeration module */ - if (enum_init() != 0) { - printf("enum_init() failed\n"); - - while (1) {} - } - - /* Register enumeration data */ - enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&composite_device_descriptor, 0); - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); - enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); - enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); - enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); - enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); - enum_register_descriptor(ENUM_DESC_STRING, hidkbd_func_desc, 4); - enum_register_descriptor(ENUM_DESC_STRING, msc_func_desc, 5); - - /* Handle configuration */ - enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); - - /* Handle feature set/clear */ - enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); - enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); - - /* Initialize the class driver */ - if (msc_init(&composite_config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { - printf("msc_init() failed\n"); - - while (1) {} - } - - if (hidkbd_init(&composite_config_descriptor.hid_interface_descriptor, - &composite_config_descriptor.hid_descriptor, report_descriptor) != 0) { - printf("hidkbd_init() failed\n"); - - while (1) {} - } - - /* Register callbacks */ - MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); - MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); - - /* Register callback for keyboard events */ - if (PB_RegisterCallback(0, buttonCallback) != E_NO_ERROR) { - printf("PB_RegisterCallback() failed\n"); - - while (1) {} - } - - /* Start with USB in low power mode */ - usbAppSleep(); - NVIC_EnableIRQ(USB_IRQn); - - /* Wait for events */ - while (1) { - if (suspended || !configured) { - LED_Off(0); - } else { - LED_On(0); - } - - if (event_flags) { - /* Display events */ - if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); - printf("VBUS Disconnect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); - printf("VBUS Connect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); - printf("Bus Reset\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); - printf("Suspended\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); - printf("Resume\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { - MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); - printf("Enumeration complete. Press SW2 to send character.\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { - MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); - printf("Remote Wakeup\n"); - } - } - } -} - -/******************************************************************************/ -int usbStartupCallback() -{ - // Startup the HIRC96M clock if it's not on already - if (!(MXC_GCR->clk_ctrl & MXC_F_GCR_CLK_CTRL_HIRC96_EN)) { - MXC_GCR->clk_ctrl |= MXC_F_GCR_CLK_CTRL_HIRC96_EN; - - if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLK_CTRL_HIRC96_RDY) != E_NO_ERROR) { - return E_TIME_OUT; - } - } - - MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -int usbShutdownCallback() -{ - MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/* ************************************************************************** */ - -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 1; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/* ************************************************************************** */ - -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 0; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/* ************************************************************************** */ - -static void usbAppSleep(void) -{ - /* TODO: Place low-power code here */ - suspended = 1; -} - -/* ************************************************************************** */ - -static void usbAppWakeup(void) -{ - /* TODO: Place low-power code here */ - suspended = 0; -} - -/* ************************************************************************** */ - -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - /* Confirm the configuration value */ - if (sud->wValue == composite_config_descriptor.config_descriptor.bConfigurationValue) { - // on++; - configured = 1; - MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); - msc_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_1.bEndpointAddress & 0x7; - msc_cfg.out_maxpacket = composite_config_descriptor.endpoint_descriptor_1.wMaxPacketSize; - msc_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_2.bEndpointAddress & 0x7; - msc_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_2.wMaxPacketSize; - - msc_configure(&msc_cfg); - return hidkbd_configure(composite_config_descriptor.endpoint_descriptor_3.bEndpointAddress & - USB_EP_NUM_MASK); - } else if (sud->wValue == 0) { - configured = 0; - msc_deconfigure(); - return hidkbd_deconfigure(); - } - - return -1; -} - -/* ************************************************************************** */ - -static int eventCallback(maxusb_event_t evt, void *data) -{ - /* Set event flag */ - MXC_SETBIT(&event_flags, evt); - - switch (evt) { - case MAXUSB_EVENT_NOVBUS: - MXC_USB_EventDisable(MAXUSB_EVENT_BRST); - MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); - MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); - MXC_USB_Disconnect(); - configured = 0; - enum_clearconfig(); - hidkbd_deconfigure(); - msc_deconfigure(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_VBUS: - MXC_USB_EventClear(MAXUSB_EVENT_BRST); - MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_SUSP); - MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); - MXC_USB_Connect(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_BRST: - usbAppWakeup(); - enum_clearconfig(); - hidkbd_deconfigure(); - msc_deconfigure(); - configured = 0; - suspended = 0; - break; - - case MAXUSB_EVENT_SUSP: - usbAppSleep(); - break; - - case MAXUSB_EVENT_DPACT: - usbAppWakeup(); - break; - - default: - break; - } - - return 0; -} - -/* ************************************************************************** */ - -void buttonCallback(void *pb) -{ - static const uint8_t chars[] = "Maxim Integrated\n"; - static int i = 0; - int count = 0; - int button_pressed = 0; - - //determine if interrupt triggered by bounce or a true button press - while (PB_Get(0) && !button_pressed) { - count++; - - if (count > 1000) { - button_pressed = 1; - } - } - - if (button_pressed) { - LED_Toggle(0); - - if (configured) { - if (suspended && remote_wake_en) { - /* The bus is suspended. Wake up the host */ - suspended = 0; - usbAppWakeup(); - MXC_USB_RemoteWakeup(); - MXC_SETBIT(&event_flags, EVENT_REMOTE_WAKE); - } else { - if (i >= (sizeof(chars) - 1)) { - i = 0; - } - - hidkbd_keypress(chars[i++]); - } - } - } -} diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/mscmem.c b/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/mscmem.c deleted file mode 100644 index 039b5434ae8..00000000000 --- a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/mscmem.c +++ /dev/null @@ -1,312 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file mscmem.h - * @brief Memory routines used by the USB Mass Storage Class example. - * See the msc_mem_t structure in msc.h for function details. - * @details Functions are provided for using the internal RAM of the - * device or the external SPI flash memory. Use the SPIXF_DISK - * and RAM_DISK defines to select the desired memory at compile - * time. - */ - -#include "mscmem.h" -#include -#include -#include "Ext_Flash.h" -#include "spixf.h" - -/***** Definitions *****/ - -#define SPIXF_DISK 1 -#define RAM_DISK 0 - -#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ -#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ - -/***** Global Data *****/ - -/***** File Scope Variables *****/ - -static int initialized = 0; -static int running = 0; - -#if SPIXF_DISK - -#define EXT_FLASH_BAUD 5000000 /* SPI clock rate to communicate with the external flash */ - -#define EXT_FLASH_SECTOR_SIZE 4096 /* Number of bytes in one sector of the external flash */ -#define EXT_FLASH_SECTOR_SIZE_SHIFT \ - 12 /* The shift value used to convert between addresses and block numbers */ -#define EXT_FLASH_NUM_SECTORS 2048 /* Total number of sectors in the external flash */ - -#define MXC_SPIXF_WIDTH Ext_Flash_DataLine_Single /*Number of data lines*/ - -#define LBA_PER_SECTOR (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) -#define INVALID_SECTOR \ - EXT_FLASH_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ - -/***** File Scope Variables *****/ -static uint32_t sectorNum = INVALID_SECTOR; -static uint8_t sector[EXT_FLASH_SECTOR_SIZE]; -static int sectorDirty = 0; - -/***** Function Prototypes *****/ -static uint32_t getSectorNum(uint32_t lba); -static uint32_t getSectorAddr(uint32_t lba); -static uint32_t getSector(uint32_t num); - -/******************************************************************************/ -static uint32_t getSectorNum(uint32_t lba) -{ - /* Absolute_address = lba * LBA_SIZE */ - /* Sector_num = Absolute_address / EXT_FLASH_SECTOR_SIZE */ - /* Sector_num = lba * 512 / 4096 */ - return lba >> (EXT_FLASH_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); -} - -/******************************************************************************/ -static uint32_t getSectorAddr(uint32_t lba) -{ - /* eight 512 byte blocks in each sector */ - return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; -} - -/******************************************************************************/ -static uint32_t getSector(uint32_t num) -{ - /* New sector requested? */ - if (sectorNum != num) { - /* Is the current sector real? */ - if (sectorNum != INVALID_SECTOR) { - /* Was it written to after it was read from memory? */ - if (sectorDirty) { - /* Erase the old data. */ - Ext_Flash_Erase(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, Ext_Flash_Erase_4K); - /* Write the new */ - Ext_Flash_Program_Page(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, - EXT_FLASH_SECTOR_SIZE, MXC_SPIXF_WIDTH); - /* Mark data as clean */ - sectorDirty = 0; - } - } - - /* Requesting a new valid sector? */ - if (num != INVALID_SECTOR) { - Ext_Flash_Read(num << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, EXT_FLASH_SECTOR_SIZE, - MXC_SPIXF_WIDTH); - sectorDirty = 0; - sectorNum = num; - } - } - - return 0; -} - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - MXC_SPIXF_SetSPIFrequency(EXT_FLASH_BAUD); - Ext_Flash_Init(); - Ext_Flash_Reset(); - - if (MXC_SPIXF_WIDTH == Ext_Flash_DataLine_Quad) { - Ext_Flash_Quad(1); - } else { - Ext_Flash_Quad(0); - } - - initialized = 1; - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - /* Get number of 512 byte chunks the external flash contains. */ - return (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) * EXT_FLASH_NUM_SECTORS; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to external flash sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from external flash */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(buffer, sector + addr, LBA_SIZE); - - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to external flash sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from external flash */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(sector + addr, buffer, LBA_SIZE); - sectorDirty = 1; - - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Turn on the external flash if it is not already. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the initialization succeeded. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* TODO - could shut down XIPF interface here. */ - - /* Flush the currently cached sector if necessary. */ - if (getSector(INVALID_SECTOR)) { - return 1; - } - - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#elif RAM_DISK - -#define NUM_PAGES 0x100 -static uint8_t mem[NUM_PAGES][LBA_SIZE]; - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - initialized = 1; -#if (ERASE_MEMORY_ON_INIT) - memset(mem, 0, sizeof(mem)); -#endif - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - return NUM_PAGES; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(buffer, mem[lba], LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(mem[lba], buffer, LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Not much to do for this implementation. The RAM is always ready. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the RAM has been initialized. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* Nothing to do for this implementation. All data is written as it is */ - /* received so there are no pending writes that need to be flushed. */ - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#else -#error "You must assign either RAM_DISK or SPIXF_DISK to 1." -#endif diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/mscmem.h b/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/mscmem.h deleted file mode 100644 index 595ac92590e..00000000000 --- a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/mscmem.h +++ /dev/null @@ -1,85 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file mscmem.h - * @brief Memory routines used by the USB Mass Storage Class example. - * See the msc_mem_t structure in msc.h for function details. - */ - -#ifndef EXAMPLES_MAX32650_USB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ -#define EXAMPLES_MAX32650_USB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ - -#include - -/* **** Definitions **** */ -#define ERASE_MEMORY_ON_INIT \ - 1 /* Configuration option to clear the memory (to 0s) on initialization. */ -/* Use 1 to clear or 0 to leave untouched. */ -/** - * @brief Perform any initialization necessary to prepare the memory for reading/writing data. - * @returns 0 if initialization is successful, non-zero if an error occurred. - */ -int mscmem_Init(void); - -/** - * @brief Activates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Start(void); - -/** - * @brief Deactivates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Stop(void); - -/** - * @brief Reports the total size of the mass-storage memory. - * @returns The number of 512 byte blocks contained in the memory. - */ -uint32_t mscmem_Size(void); - -/** - * @brief Reads 512 bytes of data from the memory. - * @param lba The index of the 512 byte block to read. - * @param buffer A byte array of at least 512 bytes to hold the values read. - * @returns 0 if reading is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Read(uint32_t lba, uint8_t *buffer); - -/** - * @brief Writes 512 bytes of data to the memory. - * @param lba The index of the 512 byte block to write. - * @param buffer A byte array of at least 512 bytes holding the values to write. - * @returns 0 if writing is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Write(uint32_t lba, uint8_t *buffer); - -/** - * @brief Checks if the memory is ready to be read/written. - * @returns non-zero if the memory is ready, 0 otherwise. - */ -int mscmem_Ready(void); - -#endif // EXAMPLES_MAX32650_USB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/project.mk b/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/project.mk deleted file mode 100644 index a91d99845f9..00000000000 --- a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/project.mk +++ /dev/null @@ -1,26 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -#BOARD=FTHR_RevA -# ^ For example, you can uncomment this line to make the -# project build for the "FTHR_RevA" board. - -# ********************************************************** - -# Add your config here! - -# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable MAXUSB library -LIB_MAXUSB=1 - -ifeq ($(BOARD),FTHR_APPS_A) -$(error ERR_NOTSUPPORTED: This example requires an an external flash IC, therefore it's not supported on the MAX32650FTHR) -endif diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/.vscode/README.md b/Examples/MAX32650/USB/USB_HIDKeyboard/.vscode/README.md deleted file mode 100755 index 90fbcefc65d..00000000000 --- a/Examples/MAX32650/USB/USB_HIDKeyboard/.vscode/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# VSCode-Maxim - -_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ - -## Quick Links - -* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) - -## Introduction - -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). - -The following features are supported: - -* Code editing with intellisense down to the register level -* Code compilation with the ability to easily re-target a project for different microcontrollers and boards -* Flashing programs -* GUI and command-line debugging - -## Dependencies - -* [Visual Studio Code](https://code.visualstudio.com/) - * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) -* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) - -## Installation - -Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. - -See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. - -## Usage - -See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. - -## Issue Tracker - -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. - -New issues should contain _at minimum_ the following information: - -* Visual Studio Code version #s (see `Help -> About`) -* C/C++ Extension version # -* Target microcontroller and evaluation platform -* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/.vscode/settings.json b/Examples/MAX32650/USB/USB_HIDKeyboard/.vscode/settings.json deleted file mode 100755 index a87b60bd8e7..00000000000 --- a/Examples/MAX32650/USB/USB_HIDKeyboard/.vscode/settings.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32650", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32650.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/Makefile b/Examples/MAX32650/USB/USB_HIDKeyboard/Makefile deleted file mode 100644 index 2765ae15e10..00000000000 --- a/Examples/MAX32650/USB/USB_HIDKeyboard/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32650 -TARGET_UC := MAX32650 -TARGET_LC := max32650 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/descriptors.h b/Examples/MAX32650/USB/USB_HIDKeyboard/descriptors.h deleted file mode 100644 index 1814278348d..00000000000 --- a/Examples/MAX32650/USB/USB_HIDKeyboard/descriptors.h +++ /dev/null @@ -1,143 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -#ifndef EXAMPLES_MAX32650_USB_USB_HIDKEYBOARD_DESCRIPTORS_H_ -#define EXAMPLES_MAX32650_USB_USB_HIDKEYBOARD_DESCRIPTORS_H_ - -#include -#include "usb.h" -#include "hid_kbd.h" - -MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { - 0x12, /* bLength */ - 0x01, /* bDescriptorType = Device */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x00, /* bDeviceClass = Unspecified */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x0B6A, /* idVendor (Maxim Integrated) */ - 0x003C, /* idProduct */ - 0x0100, /* bcdDevice */ - 0x01, /* iManufacturer Descriptor ID */ - 0x02, /* iProduct Descriptor ID */ - 0x03, /* iSerialNumber Descriptor ID */ - 0x01 /* bNumConfigurations */ -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - MXC_USB_interface_descriptor_t interface_descriptor; - hid_descriptor_t hid_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor; -} config_descriptor = { { - 0x09, /* bLength */ - 0x02, /* bDescriptorType = Config */ - 0x0022, /* wTotalLength(L/H) = 34 bytes */ - 0x01, /* bNumInterfaces */ - 0x01, /* bConfigurationValue */ - 0x00, /* iConfiguration */ - 0xA0, /* bmAttributes (bus-powered, remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - { - /* First Interface Descriptor */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x03, /* bInterfaceClass = HID */ - 0x00, /* bInterfaceSubClass */ - 0x00, /* bInterfaceProtocol */ - 0x00, /* iInterface */ - }, - { - /* HID Descriptor */ - 0x09, /* bFunctionalLength */ - 0x21, /* bDescriptorType = HID */ - 0x0110, /* bcdHID Rev 1.1 */ - 0x00, /* bCountryCode */ - 0x01, /* bNumDescriptors */ - 0x22, /* bDescriptorType = Report */ - 0x002b, /* wDescriptorLength */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0040, /* wMaxPacketSize */ - 0x0a /* bInterval (milliseconds) */ - } }; - -__attribute__((aligned(4))) uint8_t report_descriptor[] = { - 0x05, 0x01, /* Usage Page (generic desktop) */ - 0x09, 0x06, /* Usage (keyboard) */ - 0xa1, 0x01, /* Collection */ - 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ - 0x19, 0xe0, /* Usage Minimum = 224 */ - 0x29, 0xe7, /* Usage Maximum = 231 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x01, /* Logical Maximum = 1 */ - 0x75, 0x01, /* Report Size = 1 */ - 0x95, 0x08, /* Report Count = 8 */ - 0x81, 0x02, /* Input(Data,Variable,Absolute) */ - 0x95, 0x01, /* Report Count = 1 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x81, 0x01, /* Input(Constant) */ - 0x19, 0x00, /* Usage Minimum = 0 */ - 0x29, 0x65, /* Usage Maximum = 101 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x65, /* Logical Maximum = 101 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x95, 0x01, /* Report Count = 1 */ - 0x81, 0x00, /* Input(Data,Variable,Array) */ - 0xc0 /* End Collection */ -}; - -__attribute__((aligned(4))) uint8_t lang_id_desc[] = { - 0x04, /* bLength */ - 0x03, /* bDescriptorType */ - 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ -}; - -__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, - 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t prod_id_desc[] = { - 0x2c, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', 0, ' ', 0, 'H', 0, 'I', 0, - 'D', 0, ' ', 0, 'K', 0, 'e', 0, 'y', 0, 'b', 0, 'o', 0, 'a', 0, 'r', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x20, /* bLength */ - 0x03, /* bDescriptorType */ - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, - '0', 0, '0', 0, '0', 0, '1', 0 }; - -#endif // EXAMPLES_MAX32650_USB_USB_HIDKEYBOARD_DESCRIPTORS_H_ diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/main.c b/Examples/MAX32650/USB/USB_HIDKeyboard/main.c deleted file mode 100644 index 4f63fb125a4..00000000000 --- a/Examples/MAX32650/USB/USB_HIDKeyboard/main.c +++ /dev/null @@ -1,361 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file main.c - * @brief Demonstrates how to configure a the USB device controller as a HID keyboard class device - * @details The EvKit should enumerate as a HID Keyboard device after loading the project and - * attaching a cable from the PC to the USB connector on the Evaluation Kit. - * 1. LED0 (P2.17) will illuminate once enumeration and configuration is complete. - * 2. Open a text editor on the PC host and place cursor in edit box. - * 3. Pressing pushbutton SW1 (P0.16) will cause a message to be typed in on a virtual keyboard one character at a time. - * - */ - -#include -#include -#include "led.h" -#include "pb.h" -#include "mxc_delay.h" -#include "usb.h" -#include "usb_event.h" -#include "enumerate.h" -#include "hid_kbd.h" -#include "descriptors.h" -#include "gcr_regs.h" -#include "mxc_sys.h" - -/***** Definitions *****/ -#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS -#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) - -#define STRINGIFY(x) #x -#define TOSTRING(x) STRINGIFY(x) - -/***** Global Data *****/ -int remoteWake; -volatile int configured; -volatile int suspended; -volatile unsigned int evtFlags; - -/***** Function Prototypes *****/ -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int eventCallback(maxusb_event_t evt, void *data); -static void usbAppSleep(void); -static void usbAppWakeup(void); -static void buttonCallback(void *pb); -void usDelay(unsigned int usec); -int usbStartupCallback(); -int usbShutdownCallback(); - -/******************************************************************************/ -void USB_IRQHandler(void) -{ - MXC_USB_EventHandler(); -} - -/******************************************************************************/ -int main(void) -{ - maxusb_cfg_options_t usb_opts; - - printf("\n\n***** USB HID Keyboard Example *****\n"); - printf("Waiting for VBUS...\n"); - - /* Initialize state */ - configured = 0; - suspended = 0; - evtFlags = 0; - remoteWake = 0; - - /* Start out in full speed */ - usb_opts.enable_hs = 0; - usb_opts.delay_us = usDelay; /* Function which will be used for delays */ - usb_opts.init_callback = usbStartupCallback; - usb_opts.shutdown_callback = usbShutdownCallback; - - /* Initialize the usb module */ - if (MXC_USB_Init(&usb_opts) != 0) { - printf("MXC_USB_Init() failed\n"); - - while (1) {} - } - - /* Initialize the enumeration module */ - if (enum_init() != 0) { - printf("enum_init() failed\n"); - - while (1) {} - } - - /* Register enumeration data */ - enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); - enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); - enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); - enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); - enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); - - /* Handle configuration */ - enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); - - /* Handle feature set/clear */ - enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); - enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); - - /* Initialize the class driver */ - if (hidkbd_init(&config_descriptor.interface_descriptor, &config_descriptor.hid_descriptor, - report_descriptor) != 0) { - printf("hidkbd_init() failed\n"); - - while (1) {} - } - - /* Register callbacks */ - MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); - MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); - - /* Register callback for keyboard events */ - if (PB_RegisterCallback(0, buttonCallback) != E_NO_ERROR) { - printf("PB_RegisterCallback() failed\n"); - - while (1) {} - } - - /* Start with USB in low power mode */ - usbAppSleep(); - NVIC_EnableIRQ(USB_IRQn); - - /* Wait for events */ - while (1) { - if (suspended || !configured) { - LED_Off(0); - } else { - LED_On(0); - } - - if (evtFlags) { - /* Display events */ - if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_NOVBUS)) { - MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_NOVBUS); - printf("VBUS Disconnect\n"); - } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_VBUS)) { - MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_VBUS); - printf("VBUS Connect\n"); - } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_BRST)) { - MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_BRST); - printf("Bus Reset\n"); - } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_SUSP)) { - MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_SUSP); - printf("Suspended\n"); - } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_DPACT)) { - MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_DPACT); - printf("Resume\n"); - } else if (MXC_GETBIT(&evtFlags, EVENT_ENUM_COMP)) { - MXC_CLRBIT(&evtFlags, EVENT_ENUM_COMP); - printf("Enumeration complete. Press SW2 to send character.\n"); - } else if (MXC_GETBIT(&evtFlags, EVENT_REMOTE_WAKE)) { - MXC_CLRBIT(&evtFlags, EVENT_REMOTE_WAKE); - printf("Remote Wakeup\n"); - } - } - } -} - -/******************************************************************************/ -int usbStartupCallback() -{ - // Startup the HIRC96M clock if it's not on already - if (!(MXC_GCR->clk_ctrl & MXC_F_GCR_CLK_CTRL_HIRC96_EN)) { - MXC_GCR->clk_ctrl |= MXC_F_GCR_CLK_CTRL_HIRC96_EN; - - if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLK_CTRL_HIRC96_RDY) != E_NO_ERROR) { - return E_TIME_OUT; - } - } - - MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -int usbShutdownCallback() -{ - MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -/* User-supplied function to delay usec micro-seconds */ -void usDelay(unsigned int usec) -{ - /* mxc_delay() takes unsigned long, so can't use it directly */ - MXC_Delay(usec); -} - -/******************************************************************************/ -static void usbAppSleep(void) -{ - /* TODO: Place low-power code here */ - suspended = 1; -} - -/******************************************************************************/ -static void usbAppWakeup(void) -{ - /* TODO: Place low-power code here */ - suspended = 0; -} - -/******************************************************************************/ -static void buttonCallback(void *pb) -{ - static const uint8_t chars[] = "Maxim Integrated\n"; - static int i = 0; - int count = 0; - int button_pressed = 0; - - //determine if interrupt triggered by bounce or a true button press - while (PB_Get(0) && !button_pressed) { - count++; - - if (count > 1000) { - button_pressed = 1; - } - } - - if (button_pressed) { - LED_Toggle(0); - - if (configured) { - if (suspended && remoteWake) { - /* The bus is suspended. Wake up the host */ - suspended = 0; - usbAppWakeup(); - MXC_USB_RemoteWakeup(); - MXC_SETBIT(&evtFlags, EVENT_REMOTE_WAKE); - } else { - if (i >= (sizeof(chars) - 1)) { - i = 0; - } - - hidkbd_keypress(chars[i++]); - } - } - } -} - -/******************************************************************************/ -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - /* Confirm the configuration value */ - if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { - configured = 1; - MXC_SETBIT(&evtFlags, EVENT_ENUM_COMP); - return hidkbd_configure(config_descriptor.endpoint_descriptor.bEndpointAddress & - USB_EP_NUM_MASK); - } else if (sud->wValue == 0) { - configured = 0; - return hidkbd_deconfigure(); - } - - return -1; -} - -/******************************************************************************/ -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remoteWake = 1; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/******************************************************************************/ -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remoteWake = 0; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/******************************************************************************/ -static int eventCallback(maxusb_event_t evt, void *data) -{ - /* Set event flag */ - MXC_SETBIT(&evtFlags, evt); - - switch (evt) { - case MAXUSB_EVENT_NOVBUS: - MXC_USB_EventDisable(MAXUSB_EVENT_BRST); - MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); - MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); - MXC_USB_Disconnect(); - configured = 0; - enum_clearconfig(); - hidkbd_deconfigure(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_VBUS: - MXC_USB_EventClear(MAXUSB_EVENT_BRST); - MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_SUSP); - MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); - MXC_USB_Connect(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_BRST: - usbAppWakeup(); - enum_clearconfig(); - hidkbd_deconfigure(); - configured = 0; - suspended = 0; - break; - - case MAXUSB_EVENT_SUSP: - usbAppSleep(); - break; - - case MAXUSB_EVENT_DPACT: - usbAppWakeup(); - break; - - default: - break; - } - - return 0; -} diff --git a/Examples/MAX32650/USB/USB_HIDKeyboard/project.mk b/Examples/MAX32650/USB/USB_HIDKeyboard/project.mk deleted file mode 100644 index fef00cb4043..00000000000 --- a/Examples/MAX32650/USB/USB_HIDKeyboard/project.mk +++ /dev/null @@ -1,22 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -#BOARD=FTHR_RevA -# ^ For example, you can uncomment this line to make the -# project build for the "FTHR_RevA" board. - -# ********************************************************** - -# Add your config here! - -# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable MAXUSB library -LIB_MAXUSB=1 diff --git a/Examples/MAX32650/USB/USB_MassStorage/.vscode/README.md b/Examples/MAX32650/USB/USB_MassStorage/.vscode/README.md deleted file mode 100755 index 90fbcefc65d..00000000000 --- a/Examples/MAX32650/USB/USB_MassStorage/.vscode/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# VSCode-Maxim - -_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ - -## Quick Links - -* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) - -## Introduction - -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). - -The following features are supported: - -* Code editing with intellisense down to the register level -* Code compilation with the ability to easily re-target a project for different microcontrollers and boards -* Flashing programs -* GUI and command-line debugging - -## Dependencies - -* [Visual Studio Code](https://code.visualstudio.com/) - * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) -* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) - -## Installation - -Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. - -See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. - -## Usage - -See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. - -## Issue Tracker - -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. - -New issues should contain _at minimum_ the following information: - -* Visual Studio Code version #s (see `Help -> About`) -* C/C++ Extension version # -* Target microcontroller and evaluation platform -* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32650/USB/USB_MassStorage/.vscode/settings.json b/Examples/MAX32650/USB/USB_MassStorage/.vscode/settings.json deleted file mode 100755 index a87b60bd8e7..00000000000 --- a/Examples/MAX32650/USB/USB_MassStorage/.vscode/settings.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32650", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32650.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32650/USB/USB_MassStorage/Makefile b/Examples/MAX32650/USB/USB_MassStorage/Makefile deleted file mode 100644 index 2765ae15e10..00000000000 --- a/Examples/MAX32650/USB/USB_MassStorage/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32650 -TARGET_UC := MAX32650 -TARGET_LC := max32650 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32650/USB/USB_MassStorage/descriptors.h b/Examples/MAX32650/USB/USB_MassStorage/descriptors.h deleted file mode 100644 index e5da542659c..00000000000 --- a/Examples/MAX32650/USB/USB_MassStorage/descriptors.h +++ /dev/null @@ -1,181 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -#ifndef EXAMPLES_MAX32650_USB_USB_MASSSTORAGE_DESCRIPTORS_H_ -#define EXAMPLES_MAX32650_USB_USB_MASSSTORAGE_DESCRIPTORS_H_ - -#include -#include "usb.h" -#include "hid_kbd.h" - -MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { - 0x12, /* bLength = 18 */ - 0x01, /* bDescriptorType = Device */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x00, /* bDeviceClass = Unspecified */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x0B6A, /* idVendor (Maxim Integrated) */ - 0x4402, /* idProduct */ - 0x0100, /* bcdDevice */ - 0x01, /* iManufacturer Descriptor ID */ - 0x02, /* iProduct Descriptor ID */ - 0x03, /* iSerialNumber = (0) No string */ - 0x01 /* bNumConfigurations */ -}; - -/* Device qualifier needed for high-speed operation */ -MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) device_qualifier_descriptor = { - 0x0A, /* bLength = 10 */ - 0x06, /* bDescriptorType = Device Qualifier */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x00, /* bDeviceClass = Unspecified */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x01, /* bNumConfigurations */ - 0x00 /* Reserved, must be 0 */ -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #0 Mass Storage Device */ - MXC_USB_interface_descriptor_t msc_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; -} config_descriptor = { { - 0x09, /* bLength = 9 */ - 0x02, /* bDescriptorType = Config (2) */ - 0x0020, /* wTotalLength(L/H) */ - 0x01, /* bNumInterfaces */ - 0x01, /* bConfigValue */ - 0x00, /* iConfiguration */ - 0xC0, /* bmAttributes (self-powered, no remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - { - /* First Interface Descriptor For MSC Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints (one for INm one for OUT) */ - 0x08, /* bInterfaceClass = Mass Storage (8) */ - 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ - 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ - 0x00, /* iInterface */ - }, - { - /* OUT Endpoint 1 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00 /* bInterval (N/A) */ - } }; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #0 Mass Storage Device */ - MXC_USB_interface_descriptor_t msc_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; -} config_descriptor_hs = { { - 0x09, /* bLength = 9 */ - 0x02, /* bDescriptorType = Config (2) */ - 0x0020, /* wTotalLength(L/H) */ - 0x01, /* bNumInterfaces */ - 0x01, /* bConfigValue */ - 0x00, /* iConfiguration */ - 0xC0, /* bmAttributes (self-powered, no remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - { - /* First Interface Descriptor For MSC Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints (one for INm one for OUT) */ - 0x08, /* bInterfaceClass = Mass Storage (8) */ - 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ - 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ - 0x00, /* iInterface */ - }, - { - /* OUT Endpoint 1 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x01, /* bInterval */ - }, - { - /* IN Endpoint 2 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x01 /* bInterval */ - } }; - -__attribute__((aligned(4))) uint8_t lang_id_desc[] = { - 0x04, /* bLength */ - 0x03, /* bDescriptorType */ - 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ -}; - -__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, - 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t prod_id_desc[] = { - 0x38, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, 'U', 0, 'S', 0, 'B', 0, ' ', 0, 'M', 0, 'a', 0, - 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, 'g', 0, - 'e', 0, ' ', 0, 'E', 0, 'x', 0, 'a', 0, 'm', 0, 'p', 0, 'l', 0, 'e', 0, -}; - -/* Not currently used (see device descriptor), but could be enabled if desired */ -__attribute__((aligned(4))) -uint8_t serial_id_desc[] = { 26, /* bLength */ - 0x03, /* bDescriptorType */ - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, '1', 0 }; - -#endif // EXAMPLES_MAX32650_USB_USB_MASSSTORAGE_DESCRIPTORS_H_ diff --git a/Examples/MAX32650/USB/USB_MassStorage/main.c b/Examples/MAX32650/USB/USB_MassStorage/main.c deleted file mode 100644 index c547e940ca7..00000000000 --- a/Examples/MAX32650/USB/USB_MassStorage/main.c +++ /dev/null @@ -1,366 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file main.c - * @brief USB Mass Storage Class example - * @details This project creates a mass storage device using either on-board RAM or - * external SPI flash memory. Load the project, connect a cable from the PC - * to the USB connector. A new external drive should appear than can be read - * and written. - */ - -#include -#include -#include "mxc_sys.h" -#include "mxc_delay.h" -#include "board.h" -#include "led.h" -#include "usb.h" -#include "usb_event.h" -#include "enumerate.h" -#include "msc.h" -#include "descriptors.h" -#include "mscmem.h" - -/***** Definitions *****/ -#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS -#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) - -#define BUFFER_SIZE 64 - -#define STRINGIFY(x) #x -#define TOSTRING(x) STRINGIFY(x) - -/***** Global Data *****/ -volatile int configured; -volatile int suspended; -volatile unsigned int event_flags; -int remote_wake_en; - -/***** Function Prototypes *****/ -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int eventCallback(maxusb_event_t evt, void *data); -static void usbAppSleep(void); -static void usbAppWakeup(void); -int usbStartupCallback(); -int usbShutdownCallback(); - -/***** File Scope Variables *****/ - -/* Defaults, which will be changed by the configuration code */ -static msc_cfg_t msc_cfg = { - 1, /* EP OUT */ - MXC_USBHS_MAX_PACKET, /* OUT max packet size */ - 2, /* EP IN */ - MXC_USBHS_MAX_PACKET, /* IN max packet size */ -}; - -static const msc_idstrings_t ids = { - "MAXIM", /* Vendor string. Maximum of 8 bytes */ - "MSC Example", /* Product string. Maximum of 16 bytes */ - "1.0" /* Version string. Maximum of 4 bytes */ -}; - -/* Functions to control "disk" memory. See msc.h for definitions. */ -static const msc_mem_t mem = { - mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, mscmem_Size, mscmem_Read, mscmem_Write, -}; - -/* User-supplied function to delay usec micro-seconds */ -void delay_us(unsigned int usec) -{ - /* mxc_delay() takes unsigned long, so can't use it directly */ - MXC_Delay(usec); -} - -/******************************************************************************/ -int main(void) -{ - maxusb_cfg_options_t usb_opts; - - printf("\n\n***** USB Mass Storage Example *****\n"); - printf("Waiting for VBUS...\n"); - - /* Initialize state */ - configured = 0; - suspended = 0; - event_flags = 0; - remote_wake_en = 0; - - /* Start out in full speed */ - usb_opts.enable_hs = 1; - usb_opts.delay_us = delay_us; /* Function which will be used for delays */ - usb_opts.init_callback = usbStartupCallback; - usb_opts.shutdown_callback = usbShutdownCallback; - - /* Initialize the usb module */ - if (MXC_USB_Init(&usb_opts) != 0) { - printf("usb_init() failed\n"); - while (1) {} - } - - /* Initialize the enumeration module */ - if (enum_init() != 0) { - printf("enum_init() failed\n"); - while (1) {} - } - - /* Register enumeration data */ - enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); - - if (usb_opts.enable_hs) { - /* Two additional descriptors needed for high-speed operation */ - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); - enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&device_qualifier_descriptor, 0); - } - - enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); - enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); - enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); - enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); - - /* Handle configuration */ - enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); - - /* Handle feature set/clear */ - enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); - enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); - - /* Initialize the class driver */ - if (msc_init(&config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { - printf("msc_init() failed\n"); - while (1) {} - } - - /* Register callbacks */ - MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); - MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); - - /* Start with USB in low power mode */ - usbAppSleep(); - NVIC_EnableIRQ(USB_IRQn); - - /* Wait for events */ - while (1) { - if (suspended || !configured) { - LED_Off(0); - } else { - LED_On(0); - } - - if (event_flags) { - /* Display events */ - if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); - printf("VBUS Disconnect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); - printf("VBUS Connect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); - printf("Bus Reset\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); - printf("Bus Reset Done: %s speed\n", - (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); - printf("Suspended\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); - printf("Resume\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { - MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); - printf("Enumeration complete.\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { - MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); - printf("Remote Wakeup\n"); - } - } - } -} - -/******************************************************************************/ -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - /* Confirm the configuration value */ - if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { - configured = 1; - MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); - - if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { - msc_cfg.out_ep = config_descriptor_hs.endpoint_descriptor_1.bEndpointAddress & 0x7; - msc_cfg.out_maxpacket = config_descriptor_hs.endpoint_descriptor_1.wMaxPacketSize; - msc_cfg.in_ep = config_descriptor_hs.endpoint_descriptor_2.bEndpointAddress & 0x7; - msc_cfg.in_maxpacket = config_descriptor_hs.endpoint_descriptor_2.wMaxPacketSize; - } else { - msc_cfg.out_ep = config_descriptor.endpoint_descriptor_1.bEndpointAddress & 0x7; - msc_cfg.out_maxpacket = config_descriptor.endpoint_descriptor_1.wMaxPacketSize; - msc_cfg.in_ep = config_descriptor.endpoint_descriptor_2.bEndpointAddress & 0x7; - msc_cfg.in_maxpacket = config_descriptor.endpoint_descriptor_2.wMaxPacketSize; - } - - return msc_configure(&msc_cfg); /* Configure the device class */ - - } else if (sud->wValue == 0) { - configured = 0; - return msc_deconfigure(); - } - - return -1; -} - -/******************************************************************************/ -int usbStartupCallback() -{ - // Startup the HIRC96M clock if it's not on already - if (!(MXC_GCR->clk_ctrl & MXC_F_GCR_CLK_CTRL_HIRC96_EN)) { - MXC_GCR->clk_ctrl |= MXC_F_GCR_CLK_CTRL_HIRC96_EN; - - if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLK_CTRL_HIRC96_RDY) != E_NO_ERROR) { - return E_TIME_OUT; - } - } - - MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -int usbShutdownCallback() -{ - MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 1; - } else { - /* Unknown callback */ - return -1; - } - - return 0; -} - -/******************************************************************************/ -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 0; - } else { - /* Unknown callback */ - return -1; - } - - return 0; -} - -/******************************************************************************/ -static void usbAppSleep(void) -{ - /* TODO: Place low-power code here */ - suspended = 1; -} - -/******************************************************************************/ -static void usbAppWakeup(void) -{ - /* TODO: Place low-power code here */ - suspended = 0; -} - -/******************************************************************************/ -static int eventCallback(maxusb_event_t evt, void *data) -{ - /* Set event flag */ - MXC_SETBIT(&event_flags, evt); - - switch (evt) { - case MAXUSB_EVENT_NOVBUS: - MXC_USB_EventDisable(MAXUSB_EVENT_BRST); - MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); - MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); - MXC_USB_Disconnect(); - configured = 0; - enum_clearconfig(); - msc_deconfigure(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_VBUS: - MXC_USB_EventClear(MAXUSB_EVENT_BRST); - MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); - MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_SUSP); - MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); - MXC_USB_Connect(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_BRST: - usbAppWakeup(); - enum_clearconfig(); - msc_deconfigure(); - configured = 0; - suspended = 0; - break; - - case MAXUSB_EVENT_BRSTDN: - if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor_hs, 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor, 0); - } else { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); - } - break; - - case MAXUSB_EVENT_SUSP: - usbAppSleep(); - break; - - case MAXUSB_EVENT_DPACT: - usbAppWakeup(); - break; - - default: - break; - } - - return 0; -} - -/******************************************************************************/ -void USB_IRQHandler(void) -{ - MXC_USB_EventHandler(); -} diff --git a/Examples/MAX32650/USB/USB_MassStorage/mscmem.c b/Examples/MAX32650/USB/USB_MassStorage/mscmem.c deleted file mode 100644 index 3e888d05ab5..00000000000 --- a/Examples/MAX32650/USB/USB_MassStorage/mscmem.c +++ /dev/null @@ -1,313 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file mscmem.h - * @brief Memory routines used by the USB Mass Storage Class example. - * See the msc_mem_t structure in msc.h for function details. - * @details Functions are provided for using the internal RAM of the - * device or the external SPI flash memory. Use the SPIXF_DISK - * and RAM_DISK defines to select the desired memory at compile - * time. - */ - -#include "mscmem.h" -#include -#include -#include "Ext_Flash.h" -#include "spixf.h" - -/***** Definitions *****/ - -#define SPIXF_DISK 1 -#define RAM_DISK 0 - -#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ -#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ - -/***** Global Data *****/ - -/***** File Scope Variables *****/ - -static int initialized = 0; -static int running = 0; - -#if SPIXF_DISK - -#undef EXT_FLASH_BAUD -#define EXT_FLASH_BAUD 5000000 /* SPI clock rate to communicate with the external flash */ - -#define EXT_FLASH_SECTOR_SIZE 4096 /* Number of bytes in one sector of the external flash */ -#define EXT_FLASH_SECTOR_SIZE_SHIFT \ - 12 /* The shift value used to convert between addresses and block numbers */ -#define EXT_FLASH_NUM_SECTORS 2048 /* Total number of sectors in the external flash */ - -#define MXC_SPIXF_WIDTH Ext_Flash_DataLine_Single /*Number of data lines*/ - -#define LBA_PER_SECTOR (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) -#define INVALID_SECTOR \ - EXT_FLASH_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ - -/***** File Scope Variables *****/ -static uint32_t sectorNum = INVALID_SECTOR; -static uint8_t sector[EXT_FLASH_SECTOR_SIZE]; -static int sectorDirty = 0; - -/***** Function Prototypes *****/ -static uint32_t getSectorNum(uint32_t lba); -static uint32_t getSectorAddr(uint32_t lba); -static uint32_t getSector(uint32_t num); - -/******************************************************************************/ -static uint32_t getSectorNum(uint32_t lba) -{ - /* Absolute_address = lba * LBA_SIZE */ - /* Sector_num = Absolute_address / EXT_FLASH_SECTOR_SIZE */ - /* Sector_num = lba * 512 / 4096 */ - return lba >> (EXT_FLASH_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); -} - -/******************************************************************************/ -static uint32_t getSectorAddr(uint32_t lba) -{ - /* eight 512 byte blocks in each sector */ - return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; -} - -/******************************************************************************/ -static uint32_t getSector(uint32_t num) -{ - /* New sector requested? */ - if (sectorNum != num) { - /* Is the current sector real? */ - if (sectorNum != INVALID_SECTOR) { - /* Was it written to after it was read from memory? */ - if (sectorDirty) { - /* Erase the old data. */ - Ext_Flash_Erase(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, Ext_Flash_Erase_4K); - /* Write the new */ - Ext_Flash_Program_Page(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, - EXT_FLASH_SECTOR_SIZE, MXC_SPIXF_WIDTH); - /* Mark data as clean */ - sectorDirty = 0; - } - } - - /* Requesting a new valid sector? */ - if (num != INVALID_SECTOR) { - Ext_Flash_Read(num << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, EXT_FLASH_SECTOR_SIZE, - MXC_SPIXF_WIDTH); - sectorDirty = 0; - sectorNum = num; - } - } - - return 0; -} - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - MXC_SPIXF_SetSPIFrequency(EXT_FLASH_BAUD); - Ext_Flash_Init(); - Ext_Flash_Reset(); - - if (MXC_SPIXF_WIDTH == Ext_Flash_DataLine_Quad) { - Ext_Flash_Quad(1); - } else { - Ext_Flash_Quad(0); - } - - initialized = 1; - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - /* Get number of 512 byte chunks the external flash contains. */ - return (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) * EXT_FLASH_NUM_SECTORS; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to external flash sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from external flash */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(buffer, sector + addr, LBA_SIZE); - - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to external flash sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from external flash */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(sector + addr, buffer, LBA_SIZE); - sectorDirty = 1; - - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Turn on the external flash if it is not already. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the initialization succeeded. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* TODO - could shut down XIPF interface here. */ - - /* Flush the currently cached sector if necessary. */ - if (getSector(INVALID_SECTOR)) { - return 1; - } - - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#elif RAM_DISK - -#define NUM_PAGES 0x100 -static uint8_t mem[NUM_PAGES][LBA_SIZE]; - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - initialized = 1; -#if (ERASE_MEMORY_ON_INIT) - memset(mem, 0, sizeof(mem)); -#endif - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - return NUM_PAGES; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(buffer, mem[lba], LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(mem[lba], buffer, LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Not much to do for this implementation. The RAM is always ready. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the RAM has been initialized. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* Nothing to do for this implementation. All data is written as it is */ - /* received so there are no pending writes that need to be flushed. */ - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#else -#error "You must assign either RAM_DISK or SPIXF_DISK to 1." -#endif diff --git a/Examples/MAX32650/USB/USB_MassStorage/mscmem.h b/Examples/MAX32650/USB/USB_MassStorage/mscmem.h deleted file mode 100644 index ed03fdc5e90..00000000000 --- a/Examples/MAX32650/USB/USB_MassStorage/mscmem.h +++ /dev/null @@ -1,85 +0,0 @@ -/** - * @file - * @brief Memory routines used by the USB Mass Storage Class example. - * See the @ref msc_mem_t structure in msc.h for function details. - */ - -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ -#ifndef EXAMPLES_MAX32650_USB_USB_MASSSTORAGE_MSCMEM_H_ -#define EXAMPLES_MAX32650_USB_USB_MASSSTORAGE_MSCMEM_H_ - -/* **** Include Files **** */ -#include - -/* **** Definitions **** */ -#define ERASE_MEMORY_ON_INIT \ - 1 /* Configuration option to clear the memory (to 0s) on initialization. */ -/* Use 1 to clear or 0 to leave untouched. */ -/** - * @brief Perform any initialization necessary to prepare the memory for reading/writing data. - * @returns 0 if initialization is successful, non-zero if an error occurred. - */ -int mscmem_Init(void); - -/** - * @brief Activates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Start(void); - -/** - * @brief Deactivates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Stop(void); - -/** - * @brief Reports the total size of the mass-storage memory. - * @returns The number of 512 byte blocks contained in the memory. - */ -uint32_t mscmem_Size(void); - -/** - * @brief Reads 512 bytes of data from the memory. - * @param lba The index of the 512 byte block to read. - * @param buffer A byte array of at least 512 bytes to hold the values read. - * @returns 0 if reading is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Read(uint32_t lba, uint8_t *buffer); - -/** - * @brief Writes 512 bytes of data to the memory. - * @param lba The index of the 512 byte block to write. - * @param buffer A byte array of at least 512 bytes holding the values to write. - * @returns 0 if writing is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Write(uint32_t lba, uint8_t *buffer); - -/** - * @brief Checks if the memory is ready to be read/written. - * @returns non-zero if the memory is ready, 0 otherwise. - */ -int mscmem_Ready(void); - -#endif // EXAMPLES_MAX32650_USB_USB_MASSSTORAGE_MSCMEM_H_ diff --git a/Examples/MAX32650/USB/USB_MassStorage/project.mk b/Examples/MAX32650/USB/USB_MassStorage/project.mk deleted file mode 100644 index f044b553dc6..00000000000 --- a/Examples/MAX32650/USB/USB_MassStorage/project.mk +++ /dev/null @@ -1,26 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -#BOARD=FTHR_RevA -# ^ For example, you can uncomment this line to make the -# project build for the "FTHR_RevA" board. - -# ********************************************************** - -# Add your config here! - -# If you have secure version of MCU (MAX32651), set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable MAXUSB library -LIB_MAXUSB=1 - -ifeq ($(BOARD),FTHR_APPS_A) -$(error ERR_NOTSUPPORTED: This example requires an external flash IC, therefore it's not supported on the MAX32650FTHR) -endif diff --git a/Examples/MAX32650/Watchdog/.vscode/README.md b/Examples/MAX32650/Watchdog/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/Watchdog/.vscode/README.md +++ b/Examples/MAX32650/Watchdog/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/Watchdog/.vscode/settings.json b/Examples/MAX32650/Watchdog/.vscode/settings.json index d29880758a0..3e8e99ac3d8 100755 --- a/Examples/MAX32650/Watchdog/.vscode/settings.json +++ b/Examples/MAX32650/Watchdog/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/Watchdog/Makefile b/Examples/MAX32650/Watchdog/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/Watchdog/Makefile +++ b/Examples/MAX32650/Watchdog/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/Watchdog/main.c b/Examples/MAX32650/Watchdog/main.c index 7129489b5e1..e5312cdbb77 100644 --- a/Examples/MAX32650/Watchdog/main.c +++ b/Examples/MAX32650/Watchdog/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +54,7 @@ /***** Functions *****/ // ***************************************************************************** -void watchdog_timeout_handler() +void watchdog_timeout_handler(void) { //get and clear flag MXC_WDT_ClearIntFlag(MXC_WDT0); @@ -69,7 +68,7 @@ void WDT0_IRQHandler(void) watchdog_timeout_handler(); } // ***************************************************************************** -void MXC_WDT_Setup() +void MXC_WDT_Setup(void) { MXC_WDT_Disable(MXC_WDT0); MXC_WDT_Enable(MXC_WDT0); diff --git a/Examples/MAX32650/Watchdog/project.mk b/Examples/MAX32650/Watchdog/project.mk index a7f185557dc..2386308605f 100644 --- a/Examples/MAX32650/Watchdog/project.mk +++ b/Examples/MAX32650/Watchdog/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/WearLeveling/.vscode/README.md b/Examples/MAX32650/WearLeveling/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32650/WearLeveling/.vscode/README.md +++ b/Examples/MAX32650/WearLeveling/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32650/WearLeveling/.vscode/settings.json b/Examples/MAX32650/WearLeveling/.vscode/settings.json index dd84c48da6c..6f929546e9b 100755 --- a/Examples/MAX32650/WearLeveling/.vscode/settings.json +++ b/Examples/MAX32650/WearLeveling/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32650/WearLeveling/Makefile b/Examples/MAX32650/WearLeveling/Makefile index 03e86f19f9c..34c2eb93756 100644 --- a/Examples/MAX32650/WearLeveling/Makefile +++ b/Examples/MAX32650/WearLeveling/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32650/WearLeveling/include/cli.h b/Examples/MAX32650/WearLeveling/include/cli.h index a458e929283..9b1efb86f82 100644 --- a/Examples/MAX32650/WearLeveling/include/cli.h +++ b/Examples/MAX32650/WearLeveling/include/cli.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/WearLeveling/include/file.h b/Examples/MAX32650/WearLeveling/include/file.h index cc69d9811fc..245f7b61362 100644 --- a/Examples/MAX32650/WearLeveling/include/file.h +++ b/Examples/MAX32650/WearLeveling/include/file.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/WearLeveling/include/flash.h b/Examples/MAX32650/WearLeveling/include/flash.h index e4697a47b45..b45ddf8e2a9 100644 --- a/Examples/MAX32650/WearLeveling/include/flash.h +++ b/Examples/MAX32650/WearLeveling/include/flash.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/WearLeveling/include/main.h b/Examples/MAX32650/WearLeveling/include/main.h index fc9aa226769..569ec33aecc 100644 --- a/Examples/MAX32650/WearLeveling/include/main.h +++ b/Examples/MAX32650/WearLeveling/include/main.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/WearLeveling/main.c b/Examples/MAX32650/WearLeveling/main.c index e0fed8e6f2a..4a4ef4a2705 100644 --- a/Examples/MAX32650/WearLeveling/main.c +++ b/Examples/MAX32650/WearLeveling/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/WearLeveling/project.mk b/Examples/MAX32650/WearLeveling/project.mk index a64684758dd..956125c3afe 100644 --- a/Examples/MAX32650/WearLeveling/project.mk +++ b/Examples/MAX32650/WearLeveling/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32650/WearLeveling/src/cli.c b/Examples/MAX32650/WearLeveling/src/cli.c index 488f3413dee..ea27a00faa5 100644 --- a/Examples/MAX32650/WearLeveling/src/cli.c +++ b/Examples/MAX32650/WearLeveling/src/cli.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/WearLeveling/src/file.c b/Examples/MAX32650/WearLeveling/src/file.c index dec9a57200f..ddb03186181 100644 --- a/Examples/MAX32650/WearLeveling/src/file.c +++ b/Examples/MAX32650/WearLeveling/src/file.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32650/WearLeveling/src/flash.c b/Examples/MAX32650/WearLeveling/src/flash.c index 13fc1b90182..ea4db18b5ea 100644 --- a/Examples/MAX32650/WearLeveling/src/flash.c +++ b/Examples/MAX32650/WearLeveling/src/flash.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/ADC/.vscode/README.md b/Examples/MAX32655/ADC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/ADC/.vscode/README.md +++ b/Examples/MAX32655/ADC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/ADC/.vscode/settings.json b/Examples/MAX32655/ADC/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/ADC/.vscode/settings.json +++ b/Examples/MAX32655/ADC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/ADC/Makefile b/Examples/MAX32655/ADC/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/ADC/Makefile +++ b/Examples/MAX32655/ADC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/ADC/main.c b/Examples/MAX32655/ADC/main.c index a1a0f74bc38..ec64b79d5a3 100644 --- a/Examples/MAX32655/ADC/main.c +++ b/Examples/MAX32655/ADC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/ADC/project.mk b/Examples/MAX32655/ADC/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/ADC/project.mk +++ b/Examples/MAX32655/ADC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/AES/.vscode/README.md b/Examples/MAX32655/AES/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/AES/.vscode/README.md +++ b/Examples/MAX32655/AES/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/AES/.vscode/settings.json b/Examples/MAX32655/AES/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/AES/.vscode/settings.json +++ b/Examples/MAX32655/AES/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/AES/Makefile b/Examples/MAX32655/AES/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/AES/Makefile +++ b/Examples/MAX32655/AES/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/AES/main.c b/Examples/MAX32655/AES/main.c index f4521c00bf1..512cb5772f7 100644 --- a/Examples/MAX32655/AES/main.c +++ b/Examples/MAX32655/AES/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -52,7 +51,7 @@ mxc_aes_req_t req; volatile int dma_flag = 0; /***** Functions *****/ -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); dma_flag++; diff --git a/Examples/MAX32655/AES/project.mk b/Examples/MAX32655/AES/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/AES/project.mk +++ b/Examples/MAX32655/AES/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/ARM-DSP/README.md b/Examples/MAX32655/ARM-DSP/README.md index 9bb2d50bedc..5e1d116671b 100644 --- a/Examples/MAX32655/ARM-DSP/README.md +++ b/Examples/MAX32655/ARM-DSP/README.md @@ -8,7 +8,7 @@ The projects in this folder are ports of ARM's DSP example projects that can be Debug launch configurations are included in each project, and should appear in the "Favorites" menu in Eclipse. -Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop) +Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop) ## Software diff --git a/Examples/MAX32655/ARM-DSP/arm_bayes_example/.vscode/README.md b/Examples/MAX32655/ARM-DSP/arm_bayes_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/ARM-DSP/arm_bayes_example/.vscode/README.md +++ b/Examples/MAX32655/ARM-DSP/arm_bayes_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/ARM-DSP/arm_bayes_example/.vscode/settings.json b/Examples/MAX32655/ARM-DSP/arm_bayes_example/.vscode/settings.json index d900322b050..be2fca0def5 100755 --- a/Examples/MAX32655/ARM-DSP/arm_bayes_example/.vscode/settings.json +++ b/Examples/MAX32655/ARM-DSP/arm_bayes_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/ARM-DSP/arm_bayes_example/Makefile b/Examples/MAX32655/ARM-DSP/arm_bayes_example/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/ARM-DSP/arm_bayes_example/Makefile +++ b/Examples/MAX32655/ARM-DSP/arm_bayes_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/ARM-DSP/arm_bayes_example/project.mk b/Examples/MAX32655/ARM-DSP/arm_bayes_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32655/ARM-DSP/arm_bayes_example/project.mk +++ b/Examples/MAX32655/ARM-DSP/arm_bayes_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/ARM-DSP/arm_class_marks_example/.vscode/README.md b/Examples/MAX32655/ARM-DSP/arm_class_marks_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/ARM-DSP/arm_class_marks_example/.vscode/README.md +++ b/Examples/MAX32655/ARM-DSP/arm_class_marks_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/ARM-DSP/arm_class_marks_example/.vscode/settings.json b/Examples/MAX32655/ARM-DSP/arm_class_marks_example/.vscode/settings.json index d900322b050..be2fca0def5 100755 --- a/Examples/MAX32655/ARM-DSP/arm_class_marks_example/.vscode/settings.json +++ b/Examples/MAX32655/ARM-DSP/arm_class_marks_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/ARM-DSP/arm_class_marks_example/Makefile b/Examples/MAX32655/ARM-DSP/arm_class_marks_example/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/ARM-DSP/arm_class_marks_example/Makefile +++ b/Examples/MAX32655/ARM-DSP/arm_class_marks_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c b/Examples/MAX32655/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c index 30f548bc888..2ea5e90d59a 100644 --- a/Examples/MAX32655/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c +++ b/Examples/MAX32655/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c @@ -139,7 +139,7 @@ uint32_t student_num; * Main f32 test function. It returns maximum marks secured and student number * ------------------------------------------------------------------------------- */ -int main() +int main(void) { #ifndef USE_STATIC_INIT diff --git a/Examples/MAX32655/ARM-DSP/arm_class_marks_example/project.mk b/Examples/MAX32655/ARM-DSP/arm_class_marks_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32655/ARM-DSP/arm_class_marks_example/project.mk +++ b/Examples/MAX32655/ARM-DSP/arm_class_marks_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/ARM-DSP/arm_convolution_example/.vscode/README.md b/Examples/MAX32655/ARM-DSP/arm_convolution_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/ARM-DSP/arm_convolution_example/.vscode/README.md +++ b/Examples/MAX32655/ARM-DSP/arm_convolution_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/ARM-DSP/arm_convolution_example/.vscode/settings.json b/Examples/MAX32655/ARM-DSP/arm_convolution_example/.vscode/settings.json index d900322b050..be2fca0def5 100755 --- a/Examples/MAX32655/ARM-DSP/arm_convolution_example/.vscode/settings.json +++ b/Examples/MAX32655/ARM-DSP/arm_convolution_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/ARM-DSP/arm_convolution_example/Makefile b/Examples/MAX32655/ARM-DSP/arm_convolution_example/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/ARM-DSP/arm_convolution_example/Makefile +++ b/Examples/MAX32655/ARM-DSP/arm_convolution_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/ARM-DSP/arm_convolution_example/project.mk b/Examples/MAX32655/ARM-DSP/arm_convolution_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32655/ARM-DSP/arm_convolution_example/project.mk +++ b/Examples/MAX32655/ARM-DSP/arm_convolution_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md b/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md +++ b/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json b/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json index d900322b050..be2fca0def5 100755 --- a/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json +++ b/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/Makefile b/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/Makefile +++ b/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/project.mk b/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/project.mk +++ b/Examples/MAX32655/ARM-DSP/arm_dotproduct_example_f32/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/.vscode/README.md b/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/.vscode/README.md +++ b/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/.vscode/settings.json b/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/.vscode/settings.json index d900322b050..be2fca0def5 100755 --- a/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/.vscode/settings.json +++ b/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/Makefile b/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/Makefile +++ b/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/project.mk b/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/project.mk +++ b/Examples/MAX32655/ARM-DSP/arm_fft_bin_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/ARM-DSP/arm_fir_example/.vscode/README.md b/Examples/MAX32655/ARM-DSP/arm_fir_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/ARM-DSP/arm_fir_example/.vscode/README.md +++ b/Examples/MAX32655/ARM-DSP/arm_fir_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/ARM-DSP/arm_fir_example/.vscode/settings.json b/Examples/MAX32655/ARM-DSP/arm_fir_example/.vscode/settings.json index d900322b050..be2fca0def5 100755 --- a/Examples/MAX32655/ARM-DSP/arm_fir_example/.vscode/settings.json +++ b/Examples/MAX32655/ARM-DSP/arm_fir_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/ARM-DSP/arm_fir_example/Makefile b/Examples/MAX32655/ARM-DSP/arm_fir_example/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/ARM-DSP/arm_fir_example/Makefile +++ b/Examples/MAX32655/ARM-DSP/arm_fir_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/ARM-DSP/arm_fir_example/project.mk b/Examples/MAX32655/ARM-DSP/arm_fir_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32655/ARM-DSP/arm_fir_example/project.mk +++ b/Examples/MAX32655/ARM-DSP/arm_fir_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md b/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md +++ b/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json b/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json index d900322b050..be2fca0def5 100755 --- a/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json +++ b/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/Makefile b/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/Makefile +++ b/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/project.mk b/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/project.mk +++ b/Examples/MAX32655/ARM-DSP/arm_graphic_equalizer_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/.vscode/README.md b/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/.vscode/README.md +++ b/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/.vscode/settings.json b/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/.vscode/settings.json index d900322b050..be2fca0def5 100755 --- a/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/.vscode/settings.json +++ b/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/Makefile b/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/Makefile +++ b/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/project.mk b/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/project.mk +++ b/Examples/MAX32655/ARM-DSP/arm_linear_interp_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/ARM-DSP/arm_matrix_example/.vscode/README.md b/Examples/MAX32655/ARM-DSP/arm_matrix_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/ARM-DSP/arm_matrix_example/.vscode/README.md +++ b/Examples/MAX32655/ARM-DSP/arm_matrix_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/ARM-DSP/arm_matrix_example/.vscode/settings.json b/Examples/MAX32655/ARM-DSP/arm_matrix_example/.vscode/settings.json index d900322b050..be2fca0def5 100755 --- a/Examples/MAX32655/ARM-DSP/arm_matrix_example/.vscode/settings.json +++ b/Examples/MAX32655/ARM-DSP/arm_matrix_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/ARM-DSP/arm_matrix_example/Makefile b/Examples/MAX32655/ARM-DSP/arm_matrix_example/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/ARM-DSP/arm_matrix_example/Makefile +++ b/Examples/MAX32655/ARM-DSP/arm_matrix_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/ARM-DSP/arm_matrix_example/project.mk b/Examples/MAX32655/ARM-DSP/arm_matrix_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32655/ARM-DSP/arm_matrix_example/project.mk +++ b/Examples/MAX32655/ARM-DSP/arm_matrix_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/.vscode/README.md b/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/.vscode/README.md +++ b/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/.vscode/settings.json b/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/.vscode/settings.json index d900322b050..be2fca0def5 100755 --- a/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/.vscode/settings.json +++ b/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/Makefile b/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/Makefile +++ b/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/project.mk b/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/project.mk +++ b/Examples/MAX32655/ARM-DSP/arm_signal_converge_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/.vscode/README.md b/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/.vscode/README.md +++ b/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/.vscode/settings.json b/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/.vscode/settings.json index d900322b050..be2fca0def5 100755 --- a/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/.vscode/settings.json +++ b/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/Makefile b/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/Makefile +++ b/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/project.mk b/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/project.mk +++ b/Examples/MAX32655/ARM-DSP/arm_sin_cos_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/ARM-DSP/arm_svm_example/.vscode/README.md b/Examples/MAX32655/ARM-DSP/arm_svm_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/ARM-DSP/arm_svm_example/.vscode/README.md +++ b/Examples/MAX32655/ARM-DSP/arm_svm_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/ARM-DSP/arm_svm_example/.vscode/settings.json b/Examples/MAX32655/ARM-DSP/arm_svm_example/.vscode/settings.json index d900322b050..be2fca0def5 100755 --- a/Examples/MAX32655/ARM-DSP/arm_svm_example/.vscode/settings.json +++ b/Examples/MAX32655/ARM-DSP/arm_svm_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/ARM-DSP/arm_svm_example/Makefile b/Examples/MAX32655/ARM-DSP/arm_svm_example/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/ARM-DSP/arm_svm_example/Makefile +++ b/Examples/MAX32655/ARM-DSP/arm_svm_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/ARM-DSP/arm_svm_example/project.mk b/Examples/MAX32655/ARM-DSP/arm_svm_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32655/ARM-DSP/arm_svm_example/project.mk +++ b/Examples/MAX32655/ARM-DSP/arm_svm_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/ARM-DSP/arm_variance_example/.vscode/README.md b/Examples/MAX32655/ARM-DSP/arm_variance_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/ARM-DSP/arm_variance_example/.vscode/README.md +++ b/Examples/MAX32655/ARM-DSP/arm_variance_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/ARM-DSP/arm_variance_example/.vscode/settings.json b/Examples/MAX32655/ARM-DSP/arm_variance_example/.vscode/settings.json index d900322b050..be2fca0def5 100755 --- a/Examples/MAX32655/ARM-DSP/arm_variance_example/.vscode/settings.json +++ b/Examples/MAX32655/ARM-DSP/arm_variance_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/ARM-DSP/arm_variance_example/Makefile b/Examples/MAX32655/ARM-DSP/arm_variance_example/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/ARM-DSP/arm_variance_example/Makefile +++ b/Examples/MAX32655/ARM-DSP/arm_variance_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/ARM-DSP/arm_variance_example/project.mk b/Examples/MAX32655/ARM-DSP/arm_variance_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32655/ARM-DSP/arm_variance_example/project.mk +++ b/Examples/MAX32655/ARM-DSP/arm_variance_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Bluetooth/BLE4_ctr/.vscode/README.md b/Examples/MAX32655/Bluetooth/BLE4_ctr/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Bluetooth/BLE4_ctr/.vscode/README.md +++ b/Examples/MAX32655/Bluetooth/BLE4_ctr/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Bluetooth/BLE4_ctr/.vscode/settings.json b/Examples/MAX32655/Bluetooth/BLE4_ctr/.vscode/settings.json index 0f708142b14..cca0bc9a442 100755 --- a/Examples/MAX32655/Bluetooth/BLE4_ctr/.vscode/settings.json +++ b/Examples/MAX32655/Bluetooth/BLE4_ctr/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Bluetooth/BLE4_ctr/Makefile b/Examples/MAX32655/Bluetooth/BLE4_ctr/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/Bluetooth/BLE4_ctr/Makefile +++ b/Examples/MAX32655/Bluetooth/BLE4_ctr/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Bluetooth/BLE4_ctr/README.md b/Examples/MAX32655/Bluetooth/BLE4_ctr/README.md index bc974890b05..e7c866a127f 100644 --- a/Examples/MAX32655/Bluetooth/BLE4_ctr/README.md +++ b/Examples/MAX32655/Bluetooth/BLE4_ctr/README.md @@ -2,7 +2,7 @@ Bluetooth version 4.2 controller, accepts HCI commands via Serial Port. -Refer to the [BLE4_ctr](../../../Libraries/Cordio/docs/Applications/BLE4_ctr.md) documentation in the Cordio Library. +Refer to the [BLE4_ctr](../../../../Libraries/Cordio/docs/Applications/BLE4_ctr.md) documentation in the Cordio Library. ## Software @@ -36,4 +36,4 @@ external USB-to-UART adapter configured to the following settings: - HW Flow Control : No - SW Flow Control : No * HCI commands can be send to Controller by BLE tester, or from PC as illustrated in -Tools/Bluetooth/BLE_hci.py. The script has built in help options to describe the usage. \ No newline at end of file +Tools/Bluetooth/BLE_hci.py. The script has built in help options to describe the usage. diff --git a/Examples/MAX32655/Bluetooth/BLE4_ctr/main.c b/Examples/MAX32655/Bluetooth/BLE4_ctr/main.c index cdcd9b61eeb..d477d982d98 100644 --- a/Examples/MAX32655/Bluetooth/BLE4_ctr/main.c +++ b/Examples/MAX32655/Bluetooth/BLE4_ctr/main.c @@ -33,6 +33,8 @@ #include "wsf_timer.h" #include "wsf_trace.h" #include "wsf_bufio.h" +#include "wsf_types.h" +#include "wsf_os.h" #include "bb_ble_sniffer_api.h" #include "pal_bb.h" #include "pal_cfg.h" @@ -130,7 +132,7 @@ static void mainWsfInit(void) * \return TRUE if there is token pending. */ /*************************************************************************************************/ -static bool_t mainCheckServiceTokens(void) +static bool mainCheckServiceTokens(void) { bool_t eventPending = FALSE; diff --git a/Examples/MAX32655/Bluetooth/BLE4_ctr/project.mk b/Examples/MAX32655/Bluetooth/BLE4_ctr/project.mk index 2d0357ad745..a6751904e52 100644 --- a/Examples/MAX32655/Bluetooth/BLE4_ctr/project.mk +++ b/Examples/MAX32655/Bluetooth/BLE4_ctr/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Bluetooth/BLE5_ctr/.vscode/README.md b/Examples/MAX32655/Bluetooth/BLE5_ctr/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Bluetooth/BLE5_ctr/.vscode/README.md +++ b/Examples/MAX32655/Bluetooth/BLE5_ctr/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Bluetooth/BLE5_ctr/.vscode/settings.json b/Examples/MAX32655/Bluetooth/BLE5_ctr/.vscode/settings.json index 0f708142b14..cca0bc9a442 100755 --- a/Examples/MAX32655/Bluetooth/BLE5_ctr/.vscode/settings.json +++ b/Examples/MAX32655/Bluetooth/BLE5_ctr/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Bluetooth/BLE5_ctr/Makefile b/Examples/MAX32655/Bluetooth/BLE5_ctr/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/Bluetooth/BLE5_ctr/Makefile +++ b/Examples/MAX32655/Bluetooth/BLE5_ctr/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Bluetooth/BLE5_ctr/README.md b/Examples/MAX32655/Bluetooth/BLE5_ctr/README.md index 191671182f5..111b9ec84e2 100644 --- a/Examples/MAX32655/Bluetooth/BLE5_ctr/README.md +++ b/Examples/MAX32655/Bluetooth/BLE5_ctr/README.md @@ -2,7 +2,7 @@ Bluetooth version 5.2 controller, accepts HCI commands via Serial Port. -Refer to the [BLE5_ctr](../../../Libraries/Cordio/docs/Applications/BLE5_ctr.md) documentation in the Cordio Library. +Refer to the [BLE5_ctr](../../../../Libraries/Cordio/docs/Applications/BLE5_ctr.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32655/Bluetooth/BLE5_ctr/main.c b/Examples/MAX32655/Bluetooth/BLE5_ctr/main.c index a8b1f7bb664..e2b71be0524 100644 --- a/Examples/MAX32655/Bluetooth/BLE5_ctr/main.c +++ b/Examples/MAX32655/Bluetooth/BLE5_ctr/main.c @@ -33,6 +33,8 @@ #include "wsf_timer.h" #include "wsf_trace.h" #include "wsf_bufio.h" +#include "wsf_types.h" +#include "wsf_os.h" #include "wsf_cs.h" #include "bb_ble_sniffer_api.h" #include "pal_bb.h" @@ -117,8 +119,8 @@ static void mainWsfInit(void) 12 + HCI_ISO_DL_MAX_LEN + mainLlRtCfg.maxAclLen + 4 + BB_DATA_PDU_TAILROOM; /* Use single pool for data buffers. */ -#if (BT_VER > 9) - WSF_ASSERT(mainLlRtCfg.maxAclLen == mainLlRtCfg.maxIsoSduLen); +#if (BT_VER > 9) && INIT_FEAT_ISO + mainLlRtCfg.maxIsoSduLen = mainLlRtCfg.maxAclLen; #endif /* Ensure pool buffers are ordered correctly. */ @@ -162,7 +164,7 @@ static void mainWsfInit(void) * \return TRUE if there is token pending. */ /*************************************************************************************************/ -static bool_t mainCheckServiceTokens(void) +static bool mainCheckServiceTokens(void) { bool_t eventPending = FALSE; diff --git a/Examples/MAX32655/Bluetooth/BLE5_ctr/project.mk b/Examples/MAX32655/Bluetooth/BLE5_ctr/project.mk index 8ff74bc7c7a..af28b49a267 100644 --- a/Examples/MAX32655/Bluetooth/BLE5_ctr/project.mk +++ b/Examples/MAX32655/Bluetooth/BLE5_ctr/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/.vscode/README.md b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/.vscode/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/.vscode/settings.json b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/.vscode/settings.json index 5eb0c7e6c5c..f5664e2f42d 100755 --- a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/.vscode/settings.json +++ b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/FreeRTOSConfig.h b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/FreeRTOSConfig.h index 5ba0911abd9..82ab72f22e4 100644 --- a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/FreeRTOSConfig.h +++ b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/Makefile b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/Makefile +++ b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/README.md b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/README.md index 0d746bf523e..3b1b3278dbd 100644 --- a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/README.md @@ -1,7 +1,7 @@ # BLE_FreeRTOS A basic getting started application for BLE and FreeRTOS. -Refer to the [BLE_FreeRTOS](../../../Libraries/Cordio/docs/Applications/BLE_FreeRTOS.md) documentation in the Cordio Library. +Refer to the [BLE_FreeRTOS](../../../../Libraries/Cordio/docs/Applications/BLE_FreeRTOS.md) documentation in the Cordio Library. ## Software @@ -26,4 +26,4 @@ viewing the trace messages and interacting with the application. Port uses setti - Stop bits : 1 - HW Flow Control : No - SW Flow Control : No -* Enabling tickless mode in **FreeRTOSConfig.h** allows the device to enter deep sleep/stanby when idle \ No newline at end of file +* Enabling tickless mode in **FreeRTOSConfig.h** allows the device to enter deep sleep/stanby when idle diff --git a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/freertos_tickless.c b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/freertos_tickless.c index dde2ca35f85..2a241b2791b 100644 --- a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/freertos_tickless.c +++ b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/freertos_tickless.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -203,25 +202,26 @@ void vPortSuppressTicksAndSleep(TickType_t xExpectedIdleTime) if (schTimerActive) { /* Stop the BLE scheduler timer */ PalTimerStop(); - - /* Shutdown BB hardware */ - PalBbDisable(); } + /* + Shutdown BB hardware + */ + + PalBbForceDisable(); + LED_Off(SLEEP_LED); LED_Off(DEEPSLEEP_LED); MXC_LP_EnterStandbyMode(); - LED_On(DEEPSLEEP_LED); LED_On(SLEEP_LED); - if (schTimerActive) { - /* Enable and restore the BB hardware */ - PalBbEnable(); - - PalBbRestore(); + /* Enable and restore the BB hardware */ + PalBbEnable(); + PalBbRestore(); + if (schTimerActive) { /* Restore the BB counter */ MXC_WUT_RestoreBBClock(MXC_WUT0, BB_CLK_RATE_HZ); diff --git a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/main.c b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/main.c index 7541704765a..524286bc7ca 100644 --- a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/main.c +++ b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/project.mk b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/project.mk index 44617a9a773..3d2a5b4dcdf 100644 --- a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/project.mk +++ b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/stack_dats.c b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/stack_dats.c index a7231b28891..c38bc6e9f33 100644 --- a/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/stack_dats.c +++ b/Examples/MAX32655/Bluetooth/BLE_FreeRTOS/stack_dats.c @@ -187,22 +187,6 @@ static void mainWsfInit(void) #endif } -/*************************************************************************************************/ -/*! -* \fn WUT_IRQHandler -* -* \brief WUY interrupt handler. -* -* \return None. -*/ -/*************************************************************************************************/ -void WUT_IRQHandler(void) -{ - MXC_WUT_IntClear(MXC_WUT0); - NVIC_ClearPendingIRQ(WUT_IRQn); - MXC_WUT_Handler(MXC_WUT0); -} - /*************************************************************************************************/ /*! * \fn wutTrimCb diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.cproject b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.cproject new file mode 100644 index 00000000000..b6663954474 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.cproject @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.project b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.project new file mode 100644 index 00000000000..23810f6d315 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.project @@ -0,0 +1,26 @@ + + + BLE_otas + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32665/USB/USB_MassStorage/.settings/language.settings.xml b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32665/USB/USB_MassStorage/.settings/language.settings.xml rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.settings/language.settings.xml diff --git a/Examples/MAX32665/USB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32665/USB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..8e6a163fefb --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=BLE_otas +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32655 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.vscode/README.md b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.vscode/README.md new file mode 100755 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/.vscode/c_cpp_properties.json b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.vscode/c_cpp_properties.json similarity index 100% rename from Examples/MAX32665/USB/USB_HIDKeyboard/.vscode/c_cpp_properties.json rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32665/USB/USB_MassStorage/.vscode/flash.gdb b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.vscode/flash.gdb similarity index 100% rename from Examples/MAX32665/USB/USB_MassStorage/.vscode/flash.gdb rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.vscode/flash.gdb diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/.vscode/launch.json b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.vscode/launch.json similarity index 100% rename from Examples/MAX32665/Bluetooth/BLE_fcc/.vscode/launch.json rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.vscode/launch.json diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.vscode/settings.json b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.vscode/settings.json new file mode 100755 index 00000000000..b3589112110 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.vscode/settings.json @@ -0,0 +1,106 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32655", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32655.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/include", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources/stack/cfg", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-apps/include", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-model/include", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-profile/include", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-profiles/include", + "${config:MAXIM_PATH}/Libraries/Cordio/controller/include/ble", + "${config:MAXIM_PATH}/Libraries/Cordio/controller/include/common", + "${config:MAXIM_PATH}/Libraries/Cordio/platform/include", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources/hci/dual_chip", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources/hci/exactle", + "${config:MAXIM_PATH}/Libraries/Cordio/wsf/include", + "${config:MAXIM_PATH}/Libraries/Cordio/wsf/include/util", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-apps/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-apps/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-model/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-profile/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-profiles/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/controller/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/wsf/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/platform/targets/maxim/max32655/sources", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32665/USB/USB_MassStorage/.vscode/tasks.json b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.vscode/tasks.json similarity index 100% rename from Examples/MAX32665/USB/USB_MassStorage/.vscode/tasks.json rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/.vscode/tasks.json diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/Makefile b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/Makefile new file mode 100644 index 00000000000..b7af104c621 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32655 +TARGET_UC := MAX32655 +TARGET_LC := max32655 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/bl_build.S b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/bl_build.S new file mode 100644 index 00000000000..e3de5fda644 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/bl_build.S @@ -0,0 +1,28 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/* Include the bl_update binary file, plus a reference for addition into linker script */ +.section .text +_binary_bootloader_bin_start: +.incbin "build/buildbl/bootloader.bin" +_binary_bootloader_bin_end: + +.globl _binary_bootloader_bin_start +.globl _binary_bootloader_bin_end \ No newline at end of file diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/main.c b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/main.c new file mode 100644 index 00000000000..97389b08e6d --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/main.c @@ -0,0 +1,297 @@ +/*************************************************************************************************/ +/*! + * @file main.c + * @brief Bluetooth data server that advertises as "OTAS" and accepts connection requests. + * Demonstrates Over-the-Air (OTA) firmware updates. + * + * Copyright (c) 2013-2019 Arm Ltd. All Rights Reserved. + * + * Copyright (c) 2019 Packetcraft, Inc. + * + * Portions Copyright (c) 2022-2023 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/*************************************************************************************************/ +#include +#include +#include +#include +#include "ll_init_api.h" +#include "chci_tr.h" +#include "lhci_api.h" +#include "hci_defs.h" +#include "wsf_assert.h" +#include "wsf_buf.h" +#include "wsf_heap.h" +#include "wsf_timer.h" +#include "wsf_trace.h" +#include "wsf_bufio.h" +#include "wsf_cs.h" +#include "bb_ble_sniffer_api.h" +#include "pal_bb.h" +#include "pal_cfg.h" +#include "mxc_device.h" +#include "uart.h" +#include "nvic_table.h" +#include "board.h" +#include "pal_timer.h" +#include "led.h" +#include "pb.h" +#include "mxc_delay.h" +#include "flc.h" +#include "Ext_Flash.h" + +#define MAX_PRIORITY ((0x1 << __NVIC_PRIO_BITS) - 1) + +/*! \brief UART TX buffer size */ +#define PLATFORM_UART_TERMINAL_BUFFER_SIZE 2048U + +#define DEFAULT_TX_POWER 0 /* dBm */ + +/************************************************************************************************** + Global Variables +**************************************************************************************************/ + +/*! \brief Persistent BB runtime configuration. */ +static BbRtCfg_t mainBbRtCfg; + +/*! \brief Persistent LL runtime configuration. */ +static LlRtCfg_t mainLlRtCfg; + +/************************************************************************************************** + Functions +**************************************************************************************************/ + +/*************************************************************************************************/ +/*! + * \brief Load runtime configuration. + */ +/*************************************************************************************************/ +static void mainLoadConfiguration(void) +{ + PalBbLoadCfg((PalBbCfg_t *)&mainBbRtCfg); + LlGetDefaultRunTimeCfg(&mainLlRtCfg); + PalCfgLoadData(PAL_CFG_ID_LL_PARAM, &mainLlRtCfg.maxAdvSets, sizeof(LlRtCfg_t) - 9); + PalCfgLoadData(PAL_CFG_ID_BLE_PHY, &mainLlRtCfg.phy2mSup, 4); + + /* Set 5.0 requirements. */ + mainLlRtCfg.btVer = BT_VER; + + /* Set the 32k sleep clock accuracy into one of the following bins, default is 20 + HCI_CLOCK_500PPM + HCI_CLOCK_250PPM + HCI_CLOCK_150PPM + HCI_CLOCK_100PPM + HCI_CLOCK_75PPM + HCI_CLOCK_50PPM + HCI_CLOCK_30PPM + HCI_CLOCK_20PPM + */ + mainBbRtCfg.clkPpm = 20; + + /* Set the default connection power level */ + mainLlRtCfg.defTxPwrLvl = DEFAULT_TX_POWER; + + /* Adjust the extended advertising and ISO settings */ + mainLlRtCfg.maxAdvSets = 2; + mainLlRtCfg.maxAdvReports = 4; + mainLlRtCfg.numIsoTxBuf = 8; + mainLlRtCfg.maxCis = 2; + mainLlRtCfg.maxBis = 2; +} + +/*************************************************************************************************/ +/*! + * \brief Initialize WSF. + */ +/*************************************************************************************************/ +static void mainWsfInit(void) +{ + /* +12 for message headroom, + 2 event header, +255 maximum parameter length. */ + const uint16_t maxRptBufSize = 12 + 2 + 255; + + /* +12 for message headroom, +ISO Data Load, +4 for header. */ + const uint16_t dataBufSize = + 12 + HCI_ISO_DL_MAX_LEN + mainLlRtCfg.maxAclLen + 4 + BB_DATA_PDU_TAILROOM; + + /* Use single pool for data buffers. */ +#if (BT_VER > 9) + WSF_ASSERT(mainLlRtCfg.maxAclLen == mainLlRtCfg.maxIsoSduLen); +#endif + + /* Ensure pool buffers are ordered correctly. */ + WSF_ASSERT(maxRptBufSize < dataBufSize); + + wsfBufPoolDesc_t poolDesc[] = { + { 16, 8 }, + { 32, 4 }, + { 128, mainLlRtCfg.maxAdvReports }, + { maxRptBufSize, mainLlRtCfg.maxAdvReports }, /* Extended reports. */ + { dataBufSize, mainLlRtCfg.numTxBufs + mainLlRtCfg.numRxBufs + mainLlRtCfg.numIsoTxBuf + + mainLlRtCfg.numIsoRxBuf } + }; + + const uint8_t numPools = sizeof(poolDesc) / sizeof(poolDesc[0]); + + /* Initial buffer configuration. */ + uint16_t memUsed; + WsfCsEnter(); + memUsed = WsfBufInit(numPools, poolDesc); + WsfHeapAlloc(memUsed); + WsfCsExit(); + + WsfOsInit(); + WsfTimerInit(); +#if (WSF_TRACE_ENABLED == TRUE) + WsfCsEnter(); + memUsed = WsfBufIoUartInit(WsfHeapGetFreeStartAddress(), PLATFORM_UART_TERMINAL_BUFFER_SIZE); + WsfHeapAlloc(memUsed); + WsfCsExit(); + + WsfTraceRegisterHandler(WsfBufIoWrite); + WsfTraceEnable(TRUE); +#endif +} + +/*************************************************************************************************/ +/*! + * \brief Check and service tokens (Trace and sniffer). + * + * \return TRUE if there is token pending. + */ +/*************************************************************************************************/ +static bool_t mainCheckServiceTokens(void) +{ + bool_t eventPending = FALSE; + +#if (WSF_TOKEN_ENABLED == TRUE) || (BB_SNIFFER_ENABLED == TRUE) + eventPending = LhciIsEventPending(); +#endif + +#if WSF_TOKEN_ENABLED == TRUE + /* Allow only a single token to be processed at a time. */ + if (!eventPending) { + eventPending = WsfTokenService(); + } +#endif + +#if (BB_SNIFFER_ENABLED == TRUE) + /* Service one sniffer packet, if in the buffer. */ + if (!eventPending) { + eventPending = LhciSnifferHandler(); + } +#endif + + return eventPending; +} + +/*************************************************************************************************/ +/*! + * \brief Adjust interrupt priorities to let HCI UART interrupt have second highest after PAL timer + * + * \return None + */ +/*************************************************************************************************/ +void setInterruptPriority(void) +{ + /* Interrupts using FreeRTOS functions must have priorities between MAX_PRIORITY and + configMAX_SYSCALL_INTERRUPT_PRIORITY, lower priority number is higher priority */ + + /* Setup BLE hardware interrupt priorities */ + NVIC_SetPriority(BTLE_TX_DONE_IRQn, (MAX_PRIORITY - 2)); + NVIC_SetPriority(BTLE_RX_RCVD_IRQn, (MAX_PRIORITY - 2)); + NVIC_SetPriority(BTLE_RX_ENG_DET_IRQn, (MAX_PRIORITY - 2)); + NVIC_SetPriority(BTLE_SFD_DET_IRQn, (MAX_PRIORITY - 2)); + NVIC_SetPriority(BTLE_SFD_TO_IRQn, (MAX_PRIORITY - 2)); + NVIC_SetPriority(BTLE_GP_EVENT_IRQn, (MAX_PRIORITY - 2)); + NVIC_SetPriority(BTLE_CFO_IRQn, (MAX_PRIORITY - 2)); + NVIC_SetPriority(BTLE_SIG_DET_IRQn, (MAX_PRIORITY - 2)); + NVIC_SetPriority(BTLE_AGC_EVENT_IRQn, (MAX_PRIORITY - 2)); + NVIC_SetPriority(BTLE_RFFE_SPIM_IRQn, (MAX_PRIORITY - 2)); + NVIC_SetPriority(BTLE_TX_AES_IRQn, (MAX_PRIORITY - 2)); + NVIC_SetPriority(BTLE_RX_AES_IRQn, (MAX_PRIORITY - 2)); + NVIC_SetPriority(BTLE_INV_APB_ADDR_IRQn, (MAX_PRIORITY - 2)); + NVIC_SetPriority(BTLE_IQ_DATA_VALID_IRQn, (MAX_PRIORITY - 2)); + + /* Setup scheduler timer priorities */ + NVIC_SetPriority(TMR0_IRQn, (MAX_PRIORITY - 1)); + NVIC_SetPriority(TMR1_IRQn, (MAX_PRIORITY - 1)); + + NVIC_SetPriority(WUT_IRQn, (MAX_PRIORITY - 1)); + + /* Setup additional peripheral timer priorities */ + NVIC_SetPriority(UART1_IRQn, (MAX_PRIORITY - 0)); + NVIC_SetPriority(UART2_IRQn, (MAX_PRIORITY - 0)); + + NVIC_SetPriority(DMA0_IRQn, (MAX_PRIORITY - 0)); + NVIC_SetPriority(DMA1_IRQn, (MAX_PRIORITY - 0)); + NVIC_SetPriority(DMA2_IRQn, (MAX_PRIORITY - 0)); + NVIC_SetPriority(DMA3_IRQn, (MAX_PRIORITY - 0)); + + NVIC_SetPriority(GPIO0_IRQn, (MAX_PRIORITY - 0)); + NVIC_SetPriority(GPIO1_IRQn, (MAX_PRIORITY - 0)); + + /* Trace UART */ + NVIC_SetPriority(UART0_IRQn, 3); + /* HCI UART highest priority */ + NVIC_SetPriority(MXC_UART_GET_IRQ(MXC_UART_GET_UART(HCI_UART)), 0); + /* PAL Timer */ + PalTimerSetIRQPriority(2); +} +/*************************************************************************************************/ +/*! + * \brief Main entry point. + */ +/*************************************************************************************************/ +int main(void) +{ + uint32_t memUsed; + + mainLoadConfiguration(); + mainWsfInit(); + +#if (WSF_TRACE_ENABLED == TRUE) + WsfCsEnter(); + memUsed = WsfBufIoUartInit(WsfHeapGetFreeStartAddress(), PLATFORM_UART_TERMINAL_BUFFER_SIZE); + WsfHeapAlloc(memUsed); + WsfCsExit(); +#endif + + WsfCsEnter(); + LlInitRtCfg_t llCfg = { .pBbRtCfg = &mainBbRtCfg, + .wlSizeCfg = 4, + .rlSizeCfg = 4, + .plSizeCfg = 4, + .pLlRtCfg = &mainLlRtCfg, + .pFreeMem = WsfHeapGetFreeStartAddress(), + .freeMemAvail = WsfHeapCountAvailable() }; + + memUsed = LlInitControllerInit(&llCfg); + WsfHeapAlloc(memUsed); + WsfCsExit(); + + bdAddr_t bdAddr; + PalCfgLoadData(PAL_CFG_ID_BD_ADDR, bdAddr, sizeof(bdAddr_t)); + /* Coverity[uninit_use_in_call] */ + LlSetBdAddr((uint8_t *)&bdAddr); + LlSetAdvTxPower(DEFAULT_TX_POWER); + + WsfOsRegisterSleepCheckFunc(mainCheckServiceTokens); + WsfOsRegisterSleepCheckFunc(ChciTrService); + setInterruptPriority(); + WsfOsEnterMainLoop(); + + /* Does not return. */ + return 0; +} diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/ota_internal_mem.ld b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/ota_internal_mem.ld new file mode 100644 index 00000000000..7e54abeccf8 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/ota_internal_mem.ld @@ -0,0 +1,146 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +BOOTLOADER_LEN = 0x4000; +FLASH_SECTION_LEN = 0x40000 - BOOTLOADER_LEN; +FLASH_MAIN_ORIGIN = 0x10000000 + BOOTLOADER_LEN; +FLASH_MAIN_LEN = FLASH_SECTION_LEN - _PAL_NVM_SIZE; +PAL_NVM_ORIGIN = FLASH_MAIN_ORIGIN + FLASH_SECTION_LEN - _PAL_NVM_SIZE; + +MEMORY { + BOOT (rx) : ORIGIN = 0x10000000, LENGTH = BOOTLOADER_LEN + FLASH (rx) : ORIGIN = FLASH_MAIN_ORIGIN, LENGTH = FLASH_MAIN_LEN + PAL_NVM_DB (r) : ORIGIN = PAL_NVM_ORIGIN, LENGTH = _PAL_NVM_SIZE + FLASH_UP (rx) : ORIGIN = 0x10040000, LENGTH = FLASH_SECTION_LEN + SRAM (rwx) : ORIGIN = 0x20000000, LENGTH = 0x20000 +} + +SECTIONS { + .bootloader : + { + KEEP(*bootloader.o) + } > BOOT + + .text : + { + _text = .; + KEEP(*(.isr_vector)) + EXCLUDE_FILE (*riscv.o) *(.text*) /* program code, exclude RISCV code */ + EXCLUDE_FILE (*bootloader.o) *(.text*) /* program code, exclude bootloader code */ + *(.rodata*) /* read-only data: "const" */ + + KEEP(*(.init)) + KEEP(*(.fini)) + + /* C++ Exception handling */ + KEEP(*(.eh_frame*)) + _etext = .; + } > FLASH + + .flash_update (NOLOAD) : + { + _flash_update = ALIGN(., 4); + . = . + FLASH_SECTION_LEN; + _eflash_update = ALIGN(., 4); + } > FLASH_UP + + /* it's used for C++ exception handling */ + /* we need to keep this to avoid overlapping */ + .ARM.exidx : + { + __exidx_start = .; + *(.ARM.exidx*) + __exidx_end = .; + } > FLASH + + .data : + { + _data = ALIGN(., 4); + *(.data*) /*read-write initialized data: initialized global variable*/ + *(.flashprog*) /* Flash program */ + + /* These array sections are used by __libc_init_array to call static C++ constructors */ + . = ALIGN(4); + /* preinit data */ + PROVIDE_HIDDEN (__preinit_array_start = .); + KEEP(*(.preinit_array)) + PROVIDE_HIDDEN (__preinit_array_end = .); + + . = ALIGN(4); + /* init data */ + PROVIDE_HIDDEN (__init_array_start = .); + KEEP(*(SORT(.init_array.*))) + KEEP(*(.init_array)) + PROVIDE_HIDDEN (__init_array_end = .); + + . = ALIGN(4); + /* finit data */ + PROVIDE_HIDDEN (__fini_array_start = .); + KEEP(*(SORT(.fini_array.*))) + KEEP(*(.fini_array)) + PROVIDE_HIDDEN (__fini_array_end = .); + + _edata = ALIGN(., 4); + } > SRAM AT>FLASH + __load_data = LOADADDR(.data); + + .bss : + { + . = ALIGN(4); + _bss = .; + *(.bss*) /*read-write zero initialized data: uninitialzed global variable*/ + *(COMMON) + _ebss = ALIGN(., 4); + } > SRAM + + .pal_nvm_db : + { + /* Align to the sector size */ + . = ALIGN(0x2000); + __pal_nvm_db_start__ = .; + . = . + _PAL_NVM_SIZE; + __pal_nvm_db_end__ = .; + } > PAL_NVM_DB + + /* Set stack top to end of RAM, and stack limit move down by + * size of stack_dummy section */ + __StackTop = ORIGIN(SRAM) + LENGTH(SRAM); + __StackLimit = __StackTop - SIZEOF(.stack_dummy); + + /* .stack_dummy section doesn't contains any symbols. It is only + * used for linker to calculate size of stack sections, and assign + * values to stack symbols later */ + .stack_dummy (COPY): + { + *(.stack*) + } > SRAM + + .heap (COPY): + { + . = ALIGN(4); + *(.heap*) + __HeapLimit = ABSOLUTE(__StackLimit); + } > SRAM + + PROVIDE(__stack = __StackTop); + + /* Check if data + heap + stack exceeds RAM limit */ + ASSERT(__StackLimit >= _ebss, "region RAM overflowed with stack") +} diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/project.mk b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/project.mk new file mode 100644 index 00000000000..d20bd24230d --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/BLT/project.mk @@ -0,0 +1,85 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Enable Cordio library +LIB_CORDIO = 1 + +# Cordio library options +INIT_PERIPHERAL = 1 +INIT_CENTRAL = 0 + +BLE_HOST = 0 +BLE_CONTROLLER = 1 + +# TRACE option +# Set to 0 to disable +# Set to 1 to enable serial port trace messages +# Set to 2 to enable verbose messages +TRACE = 2 + +BUILD_BOOTLOADER?=1 + +AUTOSEARCH=0 +VPATH += . + +SRCS += main.c + +USE_INTERNAL_FLASH ?=1 +ifeq ($(USE_INTERNAL_FLASH), 1) +PROJ_CFLAGS += -DOTA_INTERNAL=1 +LINKERFILE = ota_internal_mem.ld +#SRCS += wdxs_file_int.c +else +LINKERFILE = ota_external_mem.ld +SRCS += wdxs_file_ext.c +endif + +# build bootloader +ifeq ($(BUILD_BOOTLOADER), 1) +BOOTLOADER_DIR=../Bootloader + +BUILD_DIR := $(abspath ./build) +BOOTLOADER_BUILD_DIR := $(BUILD_DIR)/buildbl + +BOOTLOADER_BIN=$(BOOTLOADER_BUILD_DIR)/bootloader.bin +BOOTLOADER_OBJ=$(BOOTLOADER_BUILD_DIR)/bootloader.o + +PROJ_OBJS = ${BOOTLOADER_OBJ} + +.PHONY: bl_bin +bl_bin: $(BOOTLOADER_BIN) + +${BOOTLOADER_BIN}: + $(MAKE) -C ${BOOTLOADER_DIR} BUILD_DIR=$(BOOTLOADER_BUILD_DIR) PROJECT=bootloader + $(MAKE) -C $(BOOTLOADER_DIR) BUILD_DIR=$(BOOTLOADER_BUILD_DIR) $(BOOTLOADER_BIN) + +.PHONY: bl_obj +bl_obj: $(BOOTLOADER_OBJ) + +${BOOTLOADER_OBJ}: bl_build.S ${BOOTLOADER_BIN} + ${CC} ${AFLAGS} -o ${@} -c bl_build.S +endif + +# SET advertising name +ADV_NAME?=DATS +PROJ_CFLAGS += -DADV_NAME=\"$(ADV_NAME)\" + + +### CONFIGURE security +# /*! TRUE to initiate security upon connection*/ +PROJ_CFLAGS += -DINIT_SECURITY=TRUE diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.cproject b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.cproject new file mode 100644 index 00000000000..1f80ea4dfb1 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.cproject @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.project b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.project new file mode 100644 index 00000000000..5ae860c0ac1 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.project @@ -0,0 +1,26 @@ + + + Bootloader + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/.settings/language.settings.xml b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32690/Bluetooth/BLE_fcc/.settings/language.settings.xml rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.settings/language.settings.xml diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32690/Bluetooth/BLE_fcc/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..1a2c9818c62 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=Bootloader +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32655 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.vscode/README.md b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.vscode/README.md new file mode 100755 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/USB_MassStorage/.vscode/c_cpp_properties.json b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.vscode/c_cpp_properties.json similarity index 100% rename from Examples/MAX32665/USB/USB_MassStorage/.vscode/c_cpp_properties.json rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/.vscode/flash.gdb b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.vscode/flash.gdb similarity index 100% rename from Examples/MAX32690/Bluetooth/BLE_fcc/.vscode/flash.gdb rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.vscode/flash.gdb diff --git a/Examples/MAX32665/USB/USB_CDCACM/.vscode/launch.json b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.vscode/launch.json similarity index 100% rename from Examples/MAX32665/USB/USB_CDCACM/.vscode/launch.json rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.vscode/launch.json diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.vscode/settings.json b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.vscode/settings.json new file mode 100755 index 00000000000..4a8f72d173e --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.vscode/settings.json @@ -0,0 +1,84 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32655", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32655.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/.vscode/tasks.json b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.vscode/tasks.json similarity index 100% rename from Examples/MAX32690/Bluetooth/BLE_fcc/.vscode/tasks.json rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/.vscode/tasks.json diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/Bootloader.launch b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/Bootloader.launch new file mode 100644 index 00000000000..6883763d8cd --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/Bootloader.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/Makefile b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/Makefile new file mode 100644 index 00000000000..b7af104c621 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32655 +TARGET_UC := MAX32655 +TARGET_LC := max32655 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/README.md b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/README.md new file mode 100644 index 00000000000..3415d1e6179 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/README.md @@ -0,0 +1,37 @@ +# Description + +Simple Bootloader that reloads the main flash image. Using an external memory device is preferable, +the update speed is limited by the erase/write time of the internal flash. + +A 32 bit CRC and legnth value is appended to the beggning of the update flash image. +CRC32 is used to verify the integrity of the update image. If a valid update image is identified, +the main flash section is erased and replaced with the update image. If no valid update image +is identified, the Bootloader will boot the exiting image in the main flash space. + +__0x10000000__: Bootloader +__0x10004000__: Main flash space + + +## Setup + +This `Bootloader` application needs to be loaded to the first two flash pages. The main application `BLT` +will run on top of this application. The linker file for the main application must coincide +with the memory sections defined in this application. The main application is responsible +for updating the update internal/external flash space. +The `project.mk` in this `Bootloader` application in conjunction with `project.mk` in `BLT` determine +where the expected file is stored and read from. +Default configuration in this example is to use an internal flash to store the transferd file. +Alternatively by changing `USE_INTERNAL_FLASH ?=1` to `USE_INTERNAL_FLASH ?=0` the transfered file +is stored in the external update flash space. Please remember, the `project.mk` file in `BLT` and `Second_App` should have the same configuration. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +* This project comes pre-configured for the MAX32655EVKIT. See [Board Support Packages](https://analogdevicesinc.github.io/msdk/USERGUIDE/#board-support-packages) in the MSDK User Guide for instructions on changing the target board. + diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/boot_lower.S b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/boot_lower.S new file mode 100644 index 00000000000..4323feb9ba4 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/boot_lower.S @@ -0,0 +1,47 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + + .syntax unified + .arch armv7-m + .text + .thumb + .thumb_func + .align 2 + + + .globl Boot_Lower + .type Boot_Lower %function +/* Boot from the lower flash array */ +Boot_Lower: + + ldr r0,=0x10004000 /* Address for main flash image */ + ldr r1,=0xE000ED08 /* Address for SCB_VTOR_REG */ + + /* First 32-bit word in image is initial stack pointer */ + /* Second 32-bit word in image is Address of the Reset Handler */ + + /* Set VTOR with vector table base address */ + str r0,[r1] + /* Load initial SP */ + ldr sp,[r0] + /* Load LR with address of the Reset Handler */ + ldr lr,[r0,#4] + /* Jump to Reset Handler. */ + bx lr diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/bootloader.ld b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/bootloader.ld new file mode 100644 index 00000000000..c2cf7411c84 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/bootloader.ld @@ -0,0 +1,137 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +BOOTLOADER_ORIGIN = 0x10000000; +BOOTLOADER_LEN = 0x4000; +FLASH_SECTION_LEN = 0x40000 - BOOTLOADER_LEN; +FLASH0_ORIGIN = BOOTLOADER_ORIGIN + BOOTLOADER_LEN; +FLASH0_LEN = 0x40000; +MEMORY { + FLASH (rx) : ORIGIN = BOOTLOADER_ORIGIN, LENGTH = BOOTLOADER_LEN + FLASH0 (rx) : ORIGIN = FLASH0_ORIGIN, LENGTH = FLASH0_LEN + FLASH1 (rx) : ORIGIN = 0x10040000, LENGTH = 0x40000 + SRAM (rwx) : ORIGIN = 0x20000000, LENGTH = 0x20000 +} + +SECTIONS { + + .text : + { + _text = .; + KEEP(*(.isr_vector)) + EXCLUDE_FILE (*riscv.o) *(.text*) /* program code, exclude RISCV code */ + *(.rodata*) /* read-only data: "const" */ + + KEEP(*(.init)) + KEEP(*(.fini)) + + /* C++ Exception handling */ + KEEP(*(.eh_frame*)) + _etext = .; + } > FLASH + + .flash0 (NOLOAD) : + { + _flash0 = ALIGN(., 4); + . = . + FLASH_SECTION_LEN; + _eflash0 = ALIGN(., 4); + } > FLASH0 + + .flash1 (NOLOAD) : + { + _flash1 = ALIGN(., 4); + . = . + FLASH_SECTION_LEN; + _eflash1 = ALIGN(., 4); + } > FLASH1 + + /* it's used for C++ exception handling */ + /* we need to keep this to avoid overlapping */ + .ARM.exidx : + { + __exidx_start = .; + *(.ARM.exidx*) + __exidx_end = .; + } > FLASH + + .data : + { + _data = ALIGN(., 4); + *(.data*) /*read-write initialized data: initialized global variable*/ + *(.flashprog*) /* Flash program */ + + /* These array sections are used by __libc_init_array to call static C++ constructors */ + . = ALIGN(4); + /* preinit data */ + PROVIDE_HIDDEN (__preinit_array_start = .); + KEEP(*(.preinit_array)) + PROVIDE_HIDDEN (__preinit_array_end = .); + + . = ALIGN(4); + /* init data */ + PROVIDE_HIDDEN (__init_array_start = .); + KEEP(*(SORT(.init_array.*))) + KEEP(*(.init_array)) + PROVIDE_HIDDEN (__init_array_end = .); + + . = ALIGN(4); + /* finit data */ + PROVIDE_HIDDEN (__fini_array_start = .); + KEEP(*(SORT(.fini_array.*))) + KEEP(*(.fini_array)) + PROVIDE_HIDDEN (__fini_array_end = .); + + _edata = ALIGN(., 4); + } > SRAM AT>FLASH + __load_data = LOADADDR(.data); + + .bss : + { + . = ALIGN(4); + _bss = .; + *(.bss*) /*read-write zero initialized data: uninitialzed global variable*/ + *(COMMON) + _ebss = ALIGN(., 4); + } > SRAM + + /* Set stack top to end of RAM, and stack limit move down by + * size of stack_dummy section */ + __StackTop = ORIGIN(SRAM) + LENGTH(SRAM); + __StackLimit = __StackTop - SIZEOF(.stack_dummy); + + /* .stack_dummy section doesn't contains any symbols. It is only + * used for linker to calculate size of stack sections, and assign + * values to stack symbols later */ + .stack_dummy (COPY): + { + *(.stack*) + } > SRAM + + .heap (COPY): + { + . = ALIGN(4); + *(.heap*) + __HeapLimit = ABSOLUTE(__StackLimit); + } > SRAM + + PROVIDE(__stack = __StackTop); + + /* Check if data + heap + stack exceeds RAM limit */ + ASSERT(__StackLimit >= _ebss, "region RAM overflowed with stack") +} diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/main_int.c b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/main_int.c new file mode 100644 index 00000000000..2121736f93b --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/main_int.c @@ -0,0 +1,214 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Bootloader + * @details Simple bootloader to verify and replace images. + */ + +/***** Includes *****/ +#include +#include +#include +#include "mxc_device.h" +#include "led.h" +#include "pb.h" +#include "board.h" +#include "mxc_delay.h" +#include "flc.h" + +/************************************************************************************************** + Macros +**************************************************************************************************/ + +/* Addresses for the flash sections, defined in the linker file */ +extern uint32_t _flash0; +extern uint32_t _flash1; + +#define FLASH0_START ((uint32_t)&_flash0) +#define FLASH1_START ((uint32_t)&_flash1) + +/* +adjust this FLASH_LEN according to the linker script +in both Bootloader and BLT folder +*/ +#define FLASH_LEN 0x38000 + +#define FLASH_ERASED_WORD 0xFFFFFFFF +#define MXC_GPIO_PORT_IN MXC_GPIO0 +#define MXC_GPIO_PIN_IN MXC_GPIO_PIN_19 +#define DELAY(loopCount) \ + for (i = 0; i < loopCount; i++) {} + +/************************************************************************************************** + Local Variables +**************************************************************************************************/ +typedef struct { + uint32_t fileLen; + uint32_t fileCRC; +} fileHeader_t; +fileHeader_t fileHeader; + +/************************************************************************************************** + Functions +**************************************************************************************************/ + +/* Defined in boot_lower.S */ +extern void Boot_Lower(void); + +// http://home.thep.lu.se/~bjorn/crc/ +/*************************************************************************************************/ +/*! + * \brief Create the CRC32 table. + * + * \param r Index into the table + * + * \return None. + */ +/*************************************************************************************************/ +uint32_t crc32_for_byte(uint32_t r) +{ + for (int j = 0; j < 8; ++j) r = (r & 1 ? 0 : (uint32_t)0xEDB88320L) ^ r >> 1; + return r ^ (uint32_t)0xFF000000L; +} + +/*************************************************************************************************/ +/*! + * \brief Calculate the CRC32 value for the given buffer. + * + * \param data Pointer to the data. + * \param n_bytes Number of bytes in the buffer. + * \param crc Pointer to store the result. + * + * \return None. + */ +/*************************************************************************************************/ +static uint32_t table[0x100] = { 0 }; + +void bootError(void) +{ + /* Flash the failure LED */ + int j; + volatile int i; + for (j = 0; j < 10; j++) { + LED_Toggle(0); + for (i = 0; i < 0xFFFFF; i++) {} + } + NVIC_SystemReset(); +} + +int flashPageErased(uint32_t *addr) +{ + /* Determine if this page is totally erased */ + int i; + for (i = 0; i < (MXC_FLASH_PAGE_SIZE / 4); i++) { + if (*(addr + i) != FLASH_ERASED_WORD) { + return 0; + } + } + + return 1; +} + +static int multiPageErase(uint8_t *address, uint32_t size) +{ + int err; + volatile uint32_t address32 = (uint32_t)address; + address32 &= 0xFFFFF; + + /* Page align the size */ + size += MXC_FLASH_PAGE_SIZE - (size % MXC_FLASH_PAGE_SIZE); + + while (size) { + err = MXC_FLC_PageErase((uint32_t)address); + if (err != E_NO_ERROR) { + return err; + } + + address += MXC_FLASH_PAGE_SIZE; + size -= MXC_FLASH_PAGE_SIZE; + } + + return E_NO_ERROR; +} + +static int flashWrite(uint32_t *address, uint32_t *data, uint32_t len) +{ + int err; + + while ((len / 16) > 0) { + err = MXC_FLC_Write128((uint32_t)address, data); + if (err != E_NO_ERROR) { + return err; + } + len -= 16; + address += 4; + data += 4; + } + while (len) { + err = MXC_FLC_Write32((uint32_t)address, *data); + if (err != E_NO_ERROR) { + return err; + } + len -= 4; + address += 1; + data += 1; + } + return E_NO_ERROR; +} + +int main(void) +{ + volatile int i; + int numLedsBlink; + + /* Limit the number of LED blinks */ + if (num_leds > 2) { + numLedsBlink = 2; + } else { + numLedsBlink = num_leds; + } + + /* Prevent bricks */ + if (numLedsBlink == 0) { + DELAY(0x3FFFFF); + } + + LED_Init(); + for (int led = 0; led < numLedsBlink; led++) { + LED_On(led); + DELAY(0x1FFFFF); + LED_Off(led); + DELAY(0x1FFFFF); + } + + if (((uint32_t)(*(uint32_t *)FLASH1_START)) != 0xFFFFFFFF) { + multiPageErase((uint8_t *)FLASH0_START, FLASH_LEN); + + flashWrite((uint32_t *)FLASH0_START, (uint32_t *)FLASH1_START, FLASH_LEN); + + multiPageErase((uint8_t *)FLASH1_START, 0x40000); + } + + Boot_Lower(); + + while (1) {} +} diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/project.mk b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/project.mk new file mode 100644 index 00000000000..73821959222 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Bootloader/project.mk @@ -0,0 +1,27 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Optimize for size +MXC_OPTIMIZE_CFLAGS=-Os + +# Strip debug symbols +DEBUG=0 + +BUILD_DIR:=./build + +SRCS += boot_lower.S +LINKERFILE = bootloader.ld + +AUTOSEARCH=0 +USE_INTERNAL_FLASH ?=1 +ifeq ($(USE_INTERNAL_FLASH), 1) +SRCS += main_int.c +else +SRCS += main_ext.c +endif \ No newline at end of file diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/README.md b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/README.md new file mode 100644 index 00000000000..c141d68d4c0 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/README.md @@ -0,0 +1,66 @@ +# Description + +This is an example to show how to update the firmware through HCI + + + +## Required Connections +- Connect a USB cable between the PC and the (USB/PWR - UART) connector. +- Use an external USB-to-UART adapter to access HCI UART. Connect a USB cable between the PC or BLE Tester + and USB side of the adapter. Connect UART side of the adapter to board TX,RX and GND header pins. +- Optionally you can reconfigure the UART definitions in board.h to use the on-board USB to UART + adapter for the HCI UART. + + +### Project-Specific Build Notes +The `project.mk` in `Bootloader` application in conjunction with `project.mk` in `BLT` and `Second_App` to determine +where the expected file is stored and read from. + +The flag `USE_INTERNAL_FLASH ` is used to determine which memory to store the firmware (internal or external). This example only is implemented using internal flash memory. +So, you should set the `USE_INTERNAL_FLASH ` to 1 to run the example. + + +You should completely clean the bin folder inside the `Bootloader ` by type `make distclean` to make sure that it will link the correct version of Bootloader. Then you compile your first program inside the `BLT` folder and flash it from `BLT` folder. + +### Result: +The original program is BLE_CTR5, if you look at the `main.c` in `BLT`, this is exactly the same as the `main.c` in `BLT_ctr5`. We run this program first so that it can communicate through HCI. + +After flashing the program, the result should look like this: +``` + RAM: 1 x 752 bytes -- connection context + RAM: 4 x 386 bytes -- Tx buffer descriptors + RAM: 2 x 2296 bytes -- advertising set context +LlHandlerInit: LL initialization completed + opModeFlags = 0x005F5C40 +### LlApi ### LlSetBdAddr +Static BDA[5:3]=00:18:80 + BDA[2:0]=03:AE:F6 +### LlApi ### LlSetAdvTxPower, advTxPwr=0 + +``` + +**Attention**: To update the firmware, you have to erase the second memory bank first! The flash memory won't allow you to write until you erase that memory region first. + +you can do it by using HCI through CLI by typing `erase 10:04:00:00`, the result should look like this: +``` +Erase flash memory at address: 10040000 +Done +``` + +**Attention**: `erase 10:04:00:00`: the parameter `10:04:00:00` is the starting address of second memory bank (0x10040000) which is used to store the updated firmware. This command will only erase **one page** of internal memory starting from 10:04:00:00. To upload the second application successfully, you may need to erase mutiple pages according to the size of the second application. + +If you want to erase multipages at once, you can use python script to erase the memory bank. The code is shown in `MAX-BLE-HCI/examples/firmware_update/firmware_update.py` + +Then you can update the program by typing `update 10:04:00:00 hello_world.bin`. `hello_world.bin` is file for new application. This file is in repository `MAX-BLE-HCI/examples/firmware_update`. You can also doing this by writing a script. + +Finally you can reset the program to enable the updated firmware. You can reset the program by pressing the reset button or type `sysreset` through HCI. Then you will get the following result: +``` +Second Application: Hello World! +``` + + +You can also run this example through HCI script. The example is located in `MAX-BLE-HCI/examples/firmware_update/firmware_update.py`. + +### Configuration: +You can change the starting address and size of the memory in linker script in both `BLT` folder and `Bootloader` folder. +The setting starting address and size in this example is for MAX32655. \ No newline at end of file diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.cproject b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.cproject new file mode 100644 index 00000000000..b6663954474 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.cproject @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.project b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.project new file mode 100644 index 00000000000..23810f6d315 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.project @@ -0,0 +1,26 @@ + + + BLE_otas + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32690/USB/USB_CDCACM/.settings/language.settings.xml b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32690/USB/USB_CDCACM/.settings/language.settings.xml rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.settings/language.settings.xml diff --git a/Examples/MAX32690/USB/USB_CDCACM/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32690/USB/USB_CDCACM/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..8e6a163fefb --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=BLE_otas +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32655 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.vscode/README.md b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.vscode/README.md new file mode 100755 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/.vscode/c_cpp_properties.json b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.vscode/c_cpp_properties.json similarity index 100% rename from Examples/MAX32690/Bluetooth/BLE_fcc/.vscode/c_cpp_properties.json rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32690/USB/USB_CDCACM/.vscode/flash.gdb b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.vscode/flash.gdb similarity index 100% rename from Examples/MAX32690/USB/USB_CDCACM/.vscode/flash.gdb rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.vscode/flash.gdb diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.vscode/launch.json b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.vscode/launch.json similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.vscode/launch.json rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.vscode/launch.json diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.vscode/settings.json b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.vscode/settings.json new file mode 100755 index 00000000000..b3589112110 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.vscode/settings.json @@ -0,0 +1,106 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32655", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32655.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/include", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources/stack/cfg", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-apps/include", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-model/include", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-profile/include", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-profiles/include", + "${config:MAXIM_PATH}/Libraries/Cordio/controller/include/ble", + "${config:MAXIM_PATH}/Libraries/Cordio/controller/include/common", + "${config:MAXIM_PATH}/Libraries/Cordio/platform/include", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources/hci/dual_chip", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources/hci/exactle", + "${config:MAXIM_PATH}/Libraries/Cordio/wsf/include", + "${config:MAXIM_PATH}/Libraries/Cordio/wsf/include/util", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-apps/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-apps/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-model/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-profile/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/ble-profiles/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/controller/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/wsf/sources", + "${config:MAXIM_PATH}/Libraries/Cordio/platform/targets/maxim/max32655/sources", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/USB/USB_CDCACM/.vscode/tasks.json b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.vscode/tasks.json similarity index 100% rename from Examples/MAX32690/USB/USB_CDCACM/.vscode/tasks.json rename to Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/.vscode/tasks.json diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/Makefile b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/Makefile new file mode 100644 index 00000000000..b7af104c621 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32655 +TARGET_UC := MAX32655 +TARGET_LC := max32655 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/README.md b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/README.md new file mode 100644 index 00000000000..e9815df62a3 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/README.md @@ -0,0 +1,11 @@ +# Description + +This is an example to create second application. It should use the same linker script in `BLT` folder to make the memory layout consistent. + +The command I used to dump the binary from GDB: +``` +dump binary memory hello_world.bin 0x10004000 0x10040000 +``` + +0x10004000 is the starting address you want to dump. +0x10040000 is the ending address of your program to be dumped. \ No newline at end of file diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/bl_build.S b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/bl_build.S new file mode 100644 index 00000000000..e3de5fda644 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/bl_build.S @@ -0,0 +1,28 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/* Include the bl_update binary file, plus a reference for addition into linker script */ +.section .text +_binary_bootloader_bin_start: +.incbin "build/buildbl/bootloader.bin" +_binary_bootloader_bin_end: + +.globl _binary_bootloader_bin_start +.globl _binary_bootloader_bin_end \ No newline at end of file diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/main.c b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/main.c new file mode 100644 index 00000000000..362077f1b5c --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/main.c @@ -0,0 +1,34 @@ +/*************************************************************************************************/ +/*! + * @file main.c + * @brief Bluetooth data server that advertises as "OTAS" and accepts connection requests. + * Demonstrates Over-the-Air (OTA) firmware updates. + * + * Copyright (c) 2013-2019 Arm Ltd. All Rights Reserved. + * + * Copyright (c) 2019 Packetcraft, Inc. + * + * Portions Copyright (c) 2022-2023 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/*************************************************************************************************/ + +#include + +int main(void) +{ + printf("Second Application: Hello World!\n"); + while (1) {} + return 0; +} diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/ota_internal_mem.ld b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/ota_internal_mem.ld new file mode 100644 index 00000000000..7e54abeccf8 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/ota_internal_mem.ld @@ -0,0 +1,146 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +BOOTLOADER_LEN = 0x4000; +FLASH_SECTION_LEN = 0x40000 - BOOTLOADER_LEN; +FLASH_MAIN_ORIGIN = 0x10000000 + BOOTLOADER_LEN; +FLASH_MAIN_LEN = FLASH_SECTION_LEN - _PAL_NVM_SIZE; +PAL_NVM_ORIGIN = FLASH_MAIN_ORIGIN + FLASH_SECTION_LEN - _PAL_NVM_SIZE; + +MEMORY { + BOOT (rx) : ORIGIN = 0x10000000, LENGTH = BOOTLOADER_LEN + FLASH (rx) : ORIGIN = FLASH_MAIN_ORIGIN, LENGTH = FLASH_MAIN_LEN + PAL_NVM_DB (r) : ORIGIN = PAL_NVM_ORIGIN, LENGTH = _PAL_NVM_SIZE + FLASH_UP (rx) : ORIGIN = 0x10040000, LENGTH = FLASH_SECTION_LEN + SRAM (rwx) : ORIGIN = 0x20000000, LENGTH = 0x20000 +} + +SECTIONS { + .bootloader : + { + KEEP(*bootloader.o) + } > BOOT + + .text : + { + _text = .; + KEEP(*(.isr_vector)) + EXCLUDE_FILE (*riscv.o) *(.text*) /* program code, exclude RISCV code */ + EXCLUDE_FILE (*bootloader.o) *(.text*) /* program code, exclude bootloader code */ + *(.rodata*) /* read-only data: "const" */ + + KEEP(*(.init)) + KEEP(*(.fini)) + + /* C++ Exception handling */ + KEEP(*(.eh_frame*)) + _etext = .; + } > FLASH + + .flash_update (NOLOAD) : + { + _flash_update = ALIGN(., 4); + . = . + FLASH_SECTION_LEN; + _eflash_update = ALIGN(., 4); + } > FLASH_UP + + /* it's used for C++ exception handling */ + /* we need to keep this to avoid overlapping */ + .ARM.exidx : + { + __exidx_start = .; + *(.ARM.exidx*) + __exidx_end = .; + } > FLASH + + .data : + { + _data = ALIGN(., 4); + *(.data*) /*read-write initialized data: initialized global variable*/ + *(.flashprog*) /* Flash program */ + + /* These array sections are used by __libc_init_array to call static C++ constructors */ + . = ALIGN(4); + /* preinit data */ + PROVIDE_HIDDEN (__preinit_array_start = .); + KEEP(*(.preinit_array)) + PROVIDE_HIDDEN (__preinit_array_end = .); + + . = ALIGN(4); + /* init data */ + PROVIDE_HIDDEN (__init_array_start = .); + KEEP(*(SORT(.init_array.*))) + KEEP(*(.init_array)) + PROVIDE_HIDDEN (__init_array_end = .); + + . = ALIGN(4); + /* finit data */ + PROVIDE_HIDDEN (__fini_array_start = .); + KEEP(*(SORT(.fini_array.*))) + KEEP(*(.fini_array)) + PROVIDE_HIDDEN (__fini_array_end = .); + + _edata = ALIGN(., 4); + } > SRAM AT>FLASH + __load_data = LOADADDR(.data); + + .bss : + { + . = ALIGN(4); + _bss = .; + *(.bss*) /*read-write zero initialized data: uninitialzed global variable*/ + *(COMMON) + _ebss = ALIGN(., 4); + } > SRAM + + .pal_nvm_db : + { + /* Align to the sector size */ + . = ALIGN(0x2000); + __pal_nvm_db_start__ = .; + . = . + _PAL_NVM_SIZE; + __pal_nvm_db_end__ = .; + } > PAL_NVM_DB + + /* Set stack top to end of RAM, and stack limit move down by + * size of stack_dummy section */ + __StackTop = ORIGIN(SRAM) + LENGTH(SRAM); + __StackLimit = __StackTop - SIZEOF(.stack_dummy); + + /* .stack_dummy section doesn't contains any symbols. It is only + * used for linker to calculate size of stack sections, and assign + * values to stack symbols later */ + .stack_dummy (COPY): + { + *(.stack*) + } > SRAM + + .heap (COPY): + { + . = ALIGN(4); + *(.heap*) + __HeapLimit = ABSOLUTE(__StackLimit); + } > SRAM + + PROVIDE(__stack = __StackTop); + + /* Check if data + heap + stack exceeds RAM limit */ + ASSERT(__StackLimit >= _ebss, "region RAM overflowed with stack") +} diff --git a/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/project.mk b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/project.mk new file mode 100644 index 00000000000..d20bd24230d --- /dev/null +++ b/Examples/MAX32655/Bluetooth/BLE_HCI_DFU/Second_App/project.mk @@ -0,0 +1,85 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Enable Cordio library +LIB_CORDIO = 1 + +# Cordio library options +INIT_PERIPHERAL = 1 +INIT_CENTRAL = 0 + +BLE_HOST = 0 +BLE_CONTROLLER = 1 + +# TRACE option +# Set to 0 to disable +# Set to 1 to enable serial port trace messages +# Set to 2 to enable verbose messages +TRACE = 2 + +BUILD_BOOTLOADER?=1 + +AUTOSEARCH=0 +VPATH += . + +SRCS += main.c + +USE_INTERNAL_FLASH ?=1 +ifeq ($(USE_INTERNAL_FLASH), 1) +PROJ_CFLAGS += -DOTA_INTERNAL=1 +LINKERFILE = ota_internal_mem.ld +#SRCS += wdxs_file_int.c +else +LINKERFILE = ota_external_mem.ld +SRCS += wdxs_file_ext.c +endif + +# build bootloader +ifeq ($(BUILD_BOOTLOADER), 1) +BOOTLOADER_DIR=../Bootloader + +BUILD_DIR := $(abspath ./build) +BOOTLOADER_BUILD_DIR := $(BUILD_DIR)/buildbl + +BOOTLOADER_BIN=$(BOOTLOADER_BUILD_DIR)/bootloader.bin +BOOTLOADER_OBJ=$(BOOTLOADER_BUILD_DIR)/bootloader.o + +PROJ_OBJS = ${BOOTLOADER_OBJ} + +.PHONY: bl_bin +bl_bin: $(BOOTLOADER_BIN) + +${BOOTLOADER_BIN}: + $(MAKE) -C ${BOOTLOADER_DIR} BUILD_DIR=$(BOOTLOADER_BUILD_DIR) PROJECT=bootloader + $(MAKE) -C $(BOOTLOADER_DIR) BUILD_DIR=$(BOOTLOADER_BUILD_DIR) $(BOOTLOADER_BIN) + +.PHONY: bl_obj +bl_obj: $(BOOTLOADER_OBJ) + +${BOOTLOADER_OBJ}: bl_build.S ${BOOTLOADER_BIN} + ${CC} ${AFLAGS} -o ${@} -c bl_build.S +endif + +# SET advertising name +ADV_NAME?=DATS +PROJ_CFLAGS += -DADV_NAME=\"$(ADV_NAME)\" + + +### CONFIGURE security +# /*! TRUE to initiate security upon connection*/ +PROJ_CFLAGS += -DINIT_SECURITY=TRUE diff --git a/Examples/MAX32655/Bluetooth/BLE_datc/.vscode/README.md b/Examples/MAX32655/Bluetooth/BLE_datc/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Bluetooth/BLE_datc/.vscode/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_datc/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Bluetooth/BLE_datc/.vscode/settings.json b/Examples/MAX32655/Bluetooth/BLE_datc/.vscode/settings.json index 0f708142b14..cca0bc9a442 100755 --- a/Examples/MAX32655/Bluetooth/BLE_datc/.vscode/settings.json +++ b/Examples/MAX32655/Bluetooth/BLE_datc/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Bluetooth/BLE_datc/Makefile b/Examples/MAX32655/Bluetooth/BLE_datc/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/Bluetooth/BLE_datc/Makefile +++ b/Examples/MAX32655/Bluetooth/BLE_datc/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Bluetooth/BLE_datc/README.md b/Examples/MAX32655/Bluetooth/BLE_datc/README.md index 0cc9e582681..1c22ef1b7fa 100644 --- a/Examples/MAX32655/Bluetooth/BLE_datc/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_datc/README.md @@ -1,6 +1,6 @@ # BLE_datc -Refer to the [BLE_datc_dats](../../../Libraries/Cordio/docs/Applications/BLE_datc_dats.md) documentation in the Cordio Library. +Refer to the [BLE_datc_dats](../../../../Libraries/Cordio/docs/Applications/BLE_datc_dats.md) documentation in the Cordio Library. ## Software @@ -26,4 +26,3 @@ An arbitrary pin can be entered in the format `pin (connId) passkey` * The server is expected to enter the same connId and passkey to establish a secure connection and share bonding information * ***Note***: *Either the client or server can enter the passkey first. The peer device must then match.* - diff --git a/Examples/MAX32655/Bluetooth/BLE_datc/datc_main.c b/Examples/MAX32655/Bluetooth/BLE_datc/datc_main.c index 160e8dc8033..c5443651ef1 100644 --- a/Examples/MAX32655/Bluetooth/BLE_datc/datc_main.c +++ b/Examples/MAX32655/Bluetooth/BLE_datc/datc_main.c @@ -147,7 +147,7 @@ static const appSecCfg_t datcSecCfg = { DM_KEY_DIST_IRK, /*! Initiator key distribution flags */ DM_KEY_DIST_LTK | DM_KEY_DIST_IRK, /*! Responder key distribution flags */ FALSE, /*! TRUE if Out-of-band pairing data is present */ - TRUE /*! TRUE to initiate security upon connection */ + INIT_SECURITY /*! TRUE to initiate security upon connection */ }; /* OOB UART parameters */ @@ -569,9 +569,9 @@ static void datcScanReport(dmEvt_t *pMsg) if (!connect && ((pData = DmFindAdType(DM_ADV_TYPE_LOCAL_NAME, pMsg->scanReport.len, pMsg->scanReport.pData)) != NULL)) { /* check length and device name */ - if (pData[DM_AD_LEN_IDX] >= 4 && (pData[DM_AD_DATA_IDX] == 'D') && - (pData[DM_AD_DATA_IDX + 1] == 'A') && (pData[DM_AD_DATA_IDX + 2] == 'T') && - (pData[DM_AD_DATA_IDX + 3] == 'S')) { + char advName[] = ADV_NAME; + if (pData[DM_AD_LEN_IDX] == sizeof(advName) && + !strncmp(advName, (char *)&(pData[DM_AD_DATA_IDX]), sizeof(advName))) { connect = TRUE; } } @@ -1350,7 +1350,7 @@ void DatcHandler(wsfEventMask_t event, wsfMsgHdr_t *pMsg) * \return None. */ /*************************************************************************************************/ -static void datcInitSvcHdlList() +static void datcInitSvcHdlList(void) { uint8_t i; diff --git a/Examples/MAX32655/Bluetooth/BLE_datc/main.c b/Examples/MAX32655/Bluetooth/BLE_datc/main.c index 4c2326dcbf2..79d4df10763 100644 --- a/Examples/MAX32655/Bluetooth/BLE_datc/main.c +++ b/Examples/MAX32655/Bluetooth/BLE_datc/main.c @@ -128,20 +128,6 @@ static void mainWsfInit(void) #endif } -/*************************************************************************************************/ -/*! -* \fn WUT_IRQHandler -* -* \brief WUY interrupt handler. -* -* \return None. -*/ -/*************************************************************************************************/ -void WUT_IRQHandler(void) -{ - MXC_WUT_Handler(MXC_WUT0); -} - /*************************************************************************************************/ /*! * \fn wutTrimCb diff --git a/Examples/MAX32655/Bluetooth/BLE_datc/project.mk b/Examples/MAX32655/Bluetooth/BLE_datc/project.mk index 64f019d693a..d5d3dc093f7 100644 --- a/Examples/MAX32655/Bluetooth/BLE_datc/project.mk +++ b/Examples/MAX32655/Bluetooth/BLE_datc/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -19,3 +36,11 @@ INIT_CENTRAL = 1 # Set to 1 to enable serial port trace messages # Set to 2 to enable verbose messages TRACE = 1 + +# set ADVTISEMENT name you want to connect +ADV_NAME?=DATS +PROJ_CFLAGS += -DADV_NAME=\"$(ADV_NAME)\" + +### CONFIGURE security +# /*! TRUE to initiate security upon connection*/ +PROJ_CFLAGS += -DINIT_SECURITY=TRUE \ No newline at end of file diff --git a/Examples/MAX32655/Bluetooth/BLE_datc/sdsc_api.h b/Examples/MAX32655/Bluetooth/BLE_datc/sdsc_api.h index 3bbc520677e..8fe533d1a48 100644 --- a/Examples/MAX32655/Bluetooth/BLE_datc/sdsc_api.h +++ b/Examples/MAX32655/Bluetooth/BLE_datc/sdsc_api.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/BLE_datc/sdsc_main.c b/Examples/MAX32655/Bluetooth/BLE_datc/sdsc_main.c index 3995fd80ecb..f91ae944de8 100644 --- a/Examples/MAX32655/Bluetooth/BLE_datc/sdsc_main.c +++ b/Examples/MAX32655/Bluetooth/BLE_datc/sdsc_main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/BLE_dats/.vscode/README.md b/Examples/MAX32655/Bluetooth/BLE_dats/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Bluetooth/BLE_dats/.vscode/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_dats/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Bluetooth/BLE_dats/.vscode/settings.json b/Examples/MAX32655/Bluetooth/BLE_dats/.vscode/settings.json index 0f708142b14..cca0bc9a442 100755 --- a/Examples/MAX32655/Bluetooth/BLE_dats/.vscode/settings.json +++ b/Examples/MAX32655/Bluetooth/BLE_dats/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Bluetooth/BLE_dats/Makefile b/Examples/MAX32655/Bluetooth/BLE_dats/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/Bluetooth/BLE_dats/Makefile +++ b/Examples/MAX32655/Bluetooth/BLE_dats/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Bluetooth/BLE_dats/README.md b/Examples/MAX32655/Bluetooth/BLE_dats/README.md index a009eba192d..ad9c67fb50a 100644 --- a/Examples/MAX32655/Bluetooth/BLE_dats/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_dats/README.md @@ -1,6 +1,6 @@ # BLE_dats -Refer to the [BLE_datc_dats](../../../Libraries/Cordio/docs/Applications/BLE_datc_dats.md) documentation in the Cordio Library. +Refer to the [BLE_datc_dats](../../../../Libraries/Cordio/docs/Applications/BLE_datc_dats.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32655/Bluetooth/BLE_dats/dats_main.c b/Examples/MAX32655/Bluetooth/BLE_dats/dats_main.c index 0bab2fd13f0..aca2d6c459c 100644 --- a/Examples/MAX32655/Bluetooth/BLE_dats/dats_main.c +++ b/Examples/MAX32655/Bluetooth/BLE_dats/dats_main.c @@ -121,7 +121,7 @@ static const appSecCfg_t datsSecCfg = { DM_KEY_DIST_IRK, /*! Initiator key distribution flags */ DM_KEY_DIST_LTK | DM_KEY_DIST_IRK, /*! Responder key distribution flags */ FALSE, /*! TRUE if Out-of-band pairing data is present */ - TRUE /*! TRUE to initiate security upon connection */ + INIT_SECURITY /*! TRUE to initiate security upon connection */ }; /* OOB UART parameters */ @@ -214,15 +214,8 @@ static const uint8_t datsAdvDataDisc[] = { }; /*! scan data, discoverable mode */ -static const uint8_t datsScanDataDisc[] = { - /*! device name */ - 5, /*! length */ - DM_ADV_TYPE_LOCAL_NAME, /*! AD type */ - 'D', - 'A', - 'T', - 'S' -}; +static const uint8_t deviceName[] = ADV_NAME; +static uint8_t datsScanDataDisc[sizeof(deviceName) + 2]; /************************************************************************************************** Client Characteristic Configuration Descriptors @@ -538,7 +531,9 @@ static void datsSetup(dmEvt_t *pMsg) { /* Initialize control information */ datsCb.restoringResList = FALSE; - + memcpy(&datsScanDataDisc[2], deviceName, sizeof(deviceName)); + datsScanDataDisc[0] = sizeof(deviceName); + datsScanDataDisc[1] = DM_ADV_TYPE_LOCAL_NAME; /* set advertising and scan response data for discoverable mode */ AppAdvSetData(APP_ADV_DATA_DISCOVERABLE, sizeof(datsAdvDataDisc), (uint8_t *)datsAdvDataDisc); AppAdvSetData(APP_SCAN_DATA_DISCOVERABLE, sizeof(datsScanDataDisc), @@ -760,7 +755,7 @@ void DatsHandlerInit(wsfHandlerId_t handlerId) AppGetBdAddr(addr); APP_TRACE_INFO6("MAC Addr: %02x:%02x:%02x:%02x:%02x:%02x", addr[5], addr[4], addr[3], addr[2], addr[1], addr[0]); - APP_TRACE_INFO1("Adv local name: %s", &datsScanDataDisc[2]); + APP_TRACE_INFO1("Adv local name: %s", deviceName); /* store handler ID */ datsCb.handlerId = handlerId; diff --git a/Examples/MAX32655/Bluetooth/BLE_dats/main.c b/Examples/MAX32655/Bluetooth/BLE_dats/main.c index 57d45ee6509..7e3cf7c7d05 100644 --- a/Examples/MAX32655/Bluetooth/BLE_dats/main.c +++ b/Examples/MAX32655/Bluetooth/BLE_dats/main.c @@ -128,20 +128,6 @@ static void mainWsfInit(void) #endif } -/*************************************************************************************************/ -/*! -* \fn WUT_IRQHandler -* -* \brief WUY interrupt handler. -* -* \return None. -*/ -/*************************************************************************************************/ -void WUT_IRQHandler(void) -{ - MXC_WUT_Handler(MXC_WUT0); -} - /*************************************************************************************************/ /*! * \fn wutTrimCb diff --git a/Examples/MAX32655/Bluetooth/BLE_dats/project.mk b/Examples/MAX32655/Bluetooth/BLE_dats/project.mk index b29e241ed7e..c1b786d236b 100644 --- a/Examples/MAX32655/Bluetooth/BLE_dats/project.mk +++ b/Examples/MAX32655/Bluetooth/BLE_dats/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -23,3 +40,12 @@ TRACE = 1 # Add services directory to build IPATH += services VPATH += services + +# SET advertising name +ADV_NAME?=DATS +PROJ_CFLAGS += -DADV_NAME=\"$(ADV_NAME)\" + + +### CONFIGURE security +# /*! TRUE to initiate security upon connection*/ +PROJ_CFLAGS += -DINIT_SECURITY=FALSE \ No newline at end of file diff --git a/Examples/MAX32655/Bluetooth/BLE_dats/services/svc_sds.c b/Examples/MAX32655/Bluetooth/BLE_dats/services/svc_sds.c index 5d90f9e2d3b..9206e12b4b8 100644 --- a/Examples/MAX32655/Bluetooth/BLE_dats/services/svc_sds.c +++ b/Examples/MAX32655/Bluetooth/BLE_dats/services/svc_sds.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/BLE_dats/services/svc_sds.h b/Examples/MAX32655/Bluetooth/BLE_dats/services/svc_sds.h index f0e682cd724..644613dfbf6 100644 --- a/Examples/MAX32655/Bluetooth/BLE_dats/services/svc_sds.h +++ b/Examples/MAX32655/Bluetooth/BLE_dats/services/svc_sds.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/.cproject b/Examples/MAX32655/Bluetooth/BLE_fcc/.cproject deleted file mode 100644 index c648cc4106c..00000000000 --- a/Examples/MAX32655/Bluetooth/BLE_fcc/.cproject +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/.project b/Examples/MAX32655/Bluetooth/BLE_fcc/.project deleted file mode 100644 index 2f22644c90e..00000000000 --- a/Examples/MAX32655/Bluetooth/BLE_fcc/.project +++ /dev/null @@ -1,26 +0,0 @@ - - - BLE_fcc - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32655/Bluetooth/BLE_fcc/.settings/org.eclipse.cdt.core.prefs deleted file mode 100644 index 6b6f26cc5da..00000000000 --- a/Examples/MAX32655/Bluetooth/BLE_fcc/.settings/org.eclipse.cdt.core.prefs +++ /dev/null @@ -1,15 +0,0 @@ -eclipse.preferences.version=1 -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=BLE_fcc -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32655 -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/.vscode/README.md b/Examples/MAX32655/Bluetooth/BLE_fcc/.vscode/README.md deleted file mode 100755 index 90fbcefc65d..00000000000 --- a/Examples/MAX32655/Bluetooth/BLE_fcc/.vscode/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# VSCode-Maxim - -_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ - -## Quick Links - -* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) - -## Introduction - -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). - -The following features are supported: - -* Code editing with intellisense down to the register level -* Code compilation with the ability to easily re-target a project for different microcontrollers and boards -* Flashing programs -* GUI and command-line debugging - -## Dependencies - -* [Visual Studio Code](https://code.visualstudio.com/) - * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) -* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) - -## Installation - -Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. - -See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. - -## Usage - -See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. - -## Issue Tracker - -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. - -New issues should contain _at minimum_ the following information: - -* Visual Studio Code version #s (see `Help -> About`) -* C/C++ Extension version # -* Target microcontroller and evaluation platform -* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/.vscode/settings.json b/Examples/MAX32655/Bluetooth/BLE_fcc/.vscode/settings.json deleted file mode 100755 index 0f708142b14..00000000000 --- a/Examples/MAX32655/Bluetooth/BLE_fcc/.vscode/settings.json +++ /dev/null @@ -1,101 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32655", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32655.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/include", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources/stack/cfg", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-apps/include", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-model/include", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-profile/include", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-profiles/include", - "${config:MAXIM_PATH}/Libraries/Cordio/controller/include/ble", - "${config:MAXIM_PATH}/Libraries/Cordio/controller/include/common", - "${config:MAXIM_PATH}/Libraries/Cordio/platform/include", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources/hci/dual_chip", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources/hci/exactle", - "${config:MAXIM_PATH}/Libraries/Cordio/wsf/include", - "${config:MAXIM_PATH}/Libraries/Cordio/wsf/include/util" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-apps/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-apps/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-model/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-profile/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-profiles/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/controller/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/wsf/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/platform/targets/maxim/max32655/sources" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/BLE_fcc.launch b/Examples/MAX32655/Bluetooth/BLE_fcc/BLE_fcc.launch deleted file mode 100644 index 941dff13317..00000000000 --- a/Examples/MAX32655/Bluetooth/BLE_fcc/BLE_fcc.launch +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/Makefile b/Examples/MAX32655/Bluetooth/BLE_fcc/Makefile deleted file mode 100644 index f2bed64b86b..00000000000 --- a/Examples/MAX32655/Bluetooth/BLE_fcc/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32655 -TARGET_UC := MAX32655 -TARGET_LC := max32655 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/README.md b/Examples/MAX32655/Bluetooth/BLE_fcc/README.md deleted file mode 100644 index 54a01b97911..00000000000 --- a/Examples/MAX32655/Bluetooth/BLE_fcc/README.md +++ /dev/null @@ -1,23 +0,0 @@ -# BLE_fcc - -Simple serial port console for FCC testing. -Refer to [BLE_fcc](../../../Libraries/Cordio/docs/Applications/BLE_fcc.md) documentation in the Cordio Library. - -## Software - -### Project Usage - -Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. - -## Required Connections -* Connect a USB cable between the PC and the (USB/PWR - UART) connector. - -### Project-Specific Build Notes -* Setting `TRACE=1` in [**project.mk**](project.mk) initializes the on-board USB-to-UART adapter for -viewing the trace messages and interacting with the application. Port uses settings: - - Baud : 115200 - - Char size : 8 - - Parity : None - - Stop bits : 1 - - HW Flow Control : No - - SW Flow Control : No diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/main.c b/Examples/MAX32655/Bluetooth/BLE_fcc/main.c deleted file mode 100644 index fb7e80e9635..00000000000 --- a/Examples/MAX32655/Bluetooth/BLE_fcc/main.c +++ /dev/null @@ -1,535 +0,0 @@ -/*************************************************************************************************/ -/*! - * @file main.c - * @brief BLE project with simple serial console for FCC testing - * - * Copyright (c) 2013-2019 Arm Ltd. All Rights Reserved. - * - * Copyright (c) 2019-2020 Packetcraft, Inc. - * - * Portions Copyright (c) 2022-2023 Analog Devices, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/*************************************************************************************************/ - -#include -#include -#include "ll_init_api.h" -#include "chci_tr.h" -#include "lhci_api.h" -#include "hci_defs.h" -#include "wsf_assert.h" -#include "wsf_buf.h" -#include "wsf_cs.h" -#include "wsf_heap.h" -#include "wsf_timer.h" -#include "wsf_trace.h" -#include "wsf_bufio.h" -#include "bb_ble_sniffer_api.h" -#include "pal_bb.h" -#include "pal_cfg.h" -#include "tmr.h" - -/************************************************************************************************** - Definitions -**************************************************************************************************/ - -/*! \brief UART TX buffer size */ -#define PLATFORM_UART_TERMINAL_BUFFER_SIZE 2048U - -#define FREQ_HOP_PERIOD_US 20000 - -/************************************************************************************************** - Global Variables -**************************************************************************************************/ - -/*! \brief Persistent BB runtime configuration. */ -static BbRtCfg_t mainBbRtCfg; - -/*! \brief Persistent LL runtime configuration. */ -static LlRtCfg_t mainLlRtCfg; - -static uint8_t phy = LL_PHY_LE_1M; -static uint8_t phy_str[16]; -static uint8_t txFreqHopCh; - -/************************************************************************************************** - Functions -**************************************************************************************************/ - -/*! \brief Physical layer functions. */ -extern void llc_api_set_txpower(int8_t power); -extern void dbb_seq_select_rf_channel(uint32_t rf_channel); -extern void llc_api_tx_ldo_setup(void); -extern void dbb_seq_tx_enable(void); -extern void dbb_seq_tx_disable(void); - -/*************************************************************************************************/ -/*! - * \fn Get PHY String. - * - * \brief Convert the PHY definition to a string. - * - * \param phy PHY definition. - * - * \return Pointer to string describing the PHY. - */ -/*************************************************************************************************/ -static uint8_t *getPhyStr(uint8_t phy) -{ - switch (phy) { - case LL_TEST_PHY_LE_1M: - default: - memcpy(phy_str, "1M PHY", 7); - break; - case LL_TEST_PHY_LE_2M: - memcpy(phy_str, "2M PHY", 7); - break; - case LL_TEST_PHY_LE_CODED_S8: - memcpy(phy_str, "S8 PHY", 7); - break; - case LL_TEST_PHY_LE_CODED_S2: - memcpy(phy_str, "S2 PHY", 7); - break; - } - return phy_str; -} - -/*************************************************************************************************/ -/*! - * \fn Timer 2 interrupts handler. - * - * \brief Controls the frequency hopping. - * - * \param None. - * - * \return None. - */ -/*************************************************************************************************/ -void TMR2_IRQHandler(void) -{ - int res; - - MXC_TMR_TO_Clear(MXC_TMR2); - - /* Start the next channel */ - res = LlEnhancedTxTest(txFreqHopCh++, 255, LL_TEST_PKT_TYPE_AA, phy, 0); - if (res != LL_SUCCESS) - APP_TRACE_INFO2("res = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); - - /* Wrap the channels */ - if (txFreqHopCh == 40) - txFreqHopCh = 0; - - /* Restart the timeout */ - MXC_TMR_TO_Start(MXC_TMR2, FREQ_HOP_PERIOD_US); - MXC_TMR_EnableInt(MXC_TMR2); -} - -/*************************************************************************************************/ -/*! - * \fn Usage statement - * - * \brief Prints the usage statement. - * - * \param None. - * - * \return None. - */ -/*************************************************************************************************/ -void printUsage(void) -{ - APP_TRACE_INFO0("Usage: "); - APP_TRACE_INFO0(" (0) Transmit Continuous Modulated on RF channel 0 (2402 MHz)"); - APP_TRACE_INFO0(" (1) Transmit Continuous Modulated on RF channel 19 (2440 MHz)"); - APP_TRACE_INFO0(" (2) Transmit Continuous Modulated RF channel 39 (2480 MHz)"); - APP_TRACE_INFO0(" (3) Receive on RF channel 39 (2480 MHz)"); - APP_TRACE_INFO0(" (4) Set Transmit power"); - APP_TRACE_INFO0(" (5) Enable Constant Unmodulated TX"); - APP_TRACE_INFO0(" (6) Disable constant TX -- MUST be called after (5)"); - /* APP_TRACE_INFO0(" (7) Set PA value"); */ - APP_TRACE_INFO0(" (8) Set PHY"); - APP_TRACE_INFO0(" (9) TX Frequency Hop"); - APP_TRACE_INFO0(" (e) End transmission -- MUST be used after each (0-3, 9)"); - APP_TRACE_INFO0(" (u) Print usage"); -} - -/*************************************************************************************************/ -/*! - * \fn Process the Console RX - * - * \brief State machine for the console inputs. - * - * \param rxByte Character received from the console. - * - * \return None. - */ -/*************************************************************************************************/ -static void processConsoleRX(uint8_t rxByte) -{ - int res; - - /* Holds the state of the command and the parameter */ - static uint8_t cmd = 0; - static uint8_t param = 0; - - /* Determines if the incoming character is a command or a parameter */ - if (cmd == 0) - cmd = rxByte; - else - param = rxByte; - - switch (cmd) { - case '0': - - APP_TRACE_INFO1("Transmit RF channel 0, 255 bytes/pkt, PRBS15, %s, forever ..", - getPhyStr(phy)); - res = LlEnhancedTxTest(0, 255, LL_TEST_PKT_TYPE_PRBS15, phy, 0); - APP_TRACE_INFO2("res = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); - cmd = 0; - break; - - case '1': - - APP_TRACE_INFO1("Transmit RF channel 19, 255 bytes/pkt, PRBS15, %s, forever ..", - getPhyStr(phy)); - res = LlEnhancedTxTest(19, 255, LL_TEST_PKT_TYPE_PRBS15, phy, 0); - APP_TRACE_INFO2("res = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); - cmd = 0; - break; - - case '2': - - APP_TRACE_INFO1("Transmit RF channel 39, 255 bytes/pkt, PRBS15, %s, forever ..", - getPhyStr(phy)); - res = LlEnhancedTxTest(39, 255, LL_TEST_PKT_TYPE_PRBS15, phy, 0); - APP_TRACE_INFO2("res = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); - cmd = 0; - break; - - case '3': - - APP_TRACE_INFO1("Receive RF channel 39, %s, forever ..", getPhyStr(phy)); - res = LlEnhancedRxTest(39, phy, 0, 0); - APP_TRACE_INFO2("res = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); - cmd = 0; - break; - - case '4': - - if (param == 0) { - APP_TRACE_INFO0("Select transmit power"); - APP_TRACE_INFO0(" 0: -10 dBm"); - APP_TRACE_INFO0(" 1: 0 dBm"); - APP_TRACE_INFO0(" 2: 4.5 dBm"); - break; - } - - switch (param) { - case '0': - llc_api_set_txpower(-10); - LlSetAdvTxPower(-10); - APP_TRACE_INFO0("Power set to -10 dBm"); - break; - case '1': - llc_api_set_txpower(0); - LlSetAdvTxPower(0); - APP_TRACE_INFO0("Power set to 0 dBm"); - break; - case '2': - llc_api_set_txpower(4); - LlSetAdvTxPower(4); - APP_TRACE_INFO0("Power set to 4.5 dBm"); - break; - default: - APP_TRACE_INFO0("Invalid selection"); - break; - } - cmd = 0; - param = 0; - break; - - case '5': - if (param == 0) { - APP_TRACE_INFO0("Select transmit channel"); - APP_TRACE_INFO0(" 0: 0"); - APP_TRACE_INFO0(" 1: 19"); - APP_TRACE_INFO0(" 2: 39"); - break; - } - - switch (param) { - case '0': - dbb_seq_select_rf_channel(0); - APP_TRACE_INFO0("Channel set to 0"); - break; - case '1': - dbb_seq_select_rf_channel(19); - APP_TRACE_INFO0("Channel set to 19"); - break; - case '2': - dbb_seq_select_rf_channel(39); - APP_TRACE_INFO0("Channel set to 39"); - break; - default: - APP_TRACE_INFO0("Invalid selection"); - break; - } - - APP_TRACE_INFO0("Starting TX"); - - PalBbEnable(); - - llc_api_tx_ldo_setup(); - - /* Enable constant TX */ - dbb_seq_tx_enable(); - - cmd = 0; - param = 0; - break; - - case '6': - APP_TRACE_INFO0("Disabling TX"); - - /* Disable constant TX */ - dbb_seq_tx_disable(); - - PalBbDisable(); - - cmd = 0; - break; - - case '8': - if (param == 0) { - /* Set the PHY */ - APP_TRACE_INFO0("Select PHY"); - APP_TRACE_INFO0("1: 1M"); - APP_TRACE_INFO0("2: 2M"); - APP_TRACE_INFO0("3: S8"); - APP_TRACE_INFO0("4: S2"); - break; - } - - switch (param) { - case '1': - phy = LL_TEST_PHY_LE_1M; - APP_TRACE_INFO0("PHY set to 1M"); - break; - case '2': - phy = LL_TEST_PHY_LE_2M; - APP_TRACE_INFO0("PHY set to 2M"); - break; - case '3': - phy = LL_TEST_PHY_LE_CODED_S8; - APP_TRACE_INFO0("PHY set to S8"); - break; - case '4': - phy = LL_TEST_PHY_LE_CODED_S2; - APP_TRACE_INFO0("PHY set to S2"); - break; - default: - APP_TRACE_INFO0("Invalid selection"); - break; - } - - cmd = 0; - param = 0; - break; - case '9': - /* Frequency hopping TX */ - APP_TRACE_INFO0("Starting frequency hopping"); - NVIC_EnableIRQ(TMR2_IRQn); - MXC_TMR_TO_Start(MXC_TMR2, FREQ_HOP_PERIOD_US); - MXC_TMR_EnableInt(MXC_TMR2); - cmd = 0; - break; - - case 'E': - case 'e': - - APP_TRACE_INFO0("End test"); - MXC_TMR_Stop(MXC_TMR2); - LlEndTest(NULL); - cmd = 0; - break; - - case 'U': - case 'u': - printUsage(); - cmd = 0; - break; - - default: - APP_TRACE_INFO0("Invalid selection"); - cmd = 0; - param = 0; - break; - } -} - -/*************************************************************************************************/ -/*! - * \brief Load runtime configuration. - */ -/*************************************************************************************************/ -static void mainLoadConfiguration(void) -{ - PalBbLoadCfg((PalBbCfg_t *)&mainBbRtCfg); - LlGetDefaultRunTimeCfg(&mainLlRtCfg); - PalCfgLoadData(PAL_CFG_ID_LL_PARAM, &mainLlRtCfg.maxAdvSets, sizeof(LlRtCfg_t) - 9); - PalCfgLoadData(PAL_CFG_ID_BLE_PHY, &mainLlRtCfg.phy2mSup, 4); - - /* Set 5.1 requirements. */ - mainLlRtCfg.btVer = LL_VER_BT_CORE_SPEC_5_0; - - /* Set the 32k sleep clock accuracy into one of the following bins, default is 20 - HCI_CLOCK_500PPM - HCI_CLOCK_250PPM - HCI_CLOCK_150PPM - HCI_CLOCK_100PPM - HCI_CLOCK_75PPM - HCI_CLOCK_50PPM - HCI_CLOCK_30PPM - HCI_CLOCK_20PPM - */ - mainBbRtCfg.clkPpm = 20; -} - -/*************************************************************************************************/ -/*! - * \brief Initialize WSF. - */ -/*************************************************************************************************/ -static void mainWsfInit(void) -{ - /* +12 for message headroom, + 2 event header, +255 maximum parameter length. */ - const uint16_t maxRptBufSize = 12 + 2 + 255; - - /* +12 for message headroom, +ISO Data Load, +4 for header. */ - const uint16_t dataBufSize = - 12 + HCI_ISO_DL_MAX_LEN + mainLlRtCfg.maxAclLen + 4 + BB_DATA_PDU_TAILROOM; -#if (BT_VER > 9) - /* Use single pool for data buffers. */ - WSF_ASSERT(mainLlRtCfg.maxAclLen == mainLlRtCfg.maxIsoSduLen); -#endif - /* Ensure pool buffers are ordered correctly. */ - WSF_ASSERT(maxRptBufSize < dataBufSize); - - wsfBufPoolDesc_t poolDesc[] = { - { 16, 8 }, - { 32, 4 }, - { 128, mainLlRtCfg.maxAdvReports }, - { maxRptBufSize, mainLlRtCfg.maxAdvReports }, /* Extended reports. */ - { dataBufSize, mainLlRtCfg.numTxBufs + mainLlRtCfg.numRxBufs + mainLlRtCfg.numIsoTxBuf + - mainLlRtCfg.numIsoRxBuf } - }; - - const uint8_t numPools = sizeof(poolDesc) / sizeof(poolDesc[0]); - - /* Initial buffer configuration. */ - uint16_t memUsed; - WsfCsEnter(); - memUsed = WsfBufInit(numPools, poolDesc); - WsfHeapAlloc(memUsed); - WsfCsExit(); - - WsfOsInit(); - WsfTimerInit(); -#if (WSF_TRACE_ENABLED == TRUE) - WsfTraceRegisterHandler(WsfBufIoWrite); - WsfTraceEnable(TRUE); -#endif -} - -/*************************************************************************************************/ -/*! - * \brief Check and service tokens (Trace and sniffer). - * - * \return TRUE if there is token pending. - */ -/*************************************************************************************************/ -static bool_t mainCheckServiceTokens(void) -{ - bool_t eventPending = FALSE; - -#if (WSF_TOKEN_ENABLED == TRUE) || (BB_SNIFFER_ENABLED == TRUE) - eventPending = LhciIsEventPending(); -#endif - -#if WSF_TOKEN_ENABLED == TRUE - /* Allow only a single token to be processed at a time. */ - if (!eventPending) - eventPending = WsfTokenService(); -#endif - -#if (BB_SNIFFER_ENABLED == TRUE) - /* Service one sniffer packet, if in the buffer. */ - if (!eventPending) - eventPending = LhciSnifferHandler(); -#endif - - return eventPending; -} - -/*************************************************************************************************/ -/*! - * \brief Main entry point. - */ -/*************************************************************************************************/ -int main(void) -{ - uint32_t memUsed; - - mainLoadConfiguration(); - mainWsfInit(); - -#if (WSF_TRACE_ENABLED == TRUE) - WsfCsEnter(); - memUsed = WsfBufIoUartInit(WsfHeapGetFreeStartAddress(), PLATFORM_UART_TERMINAL_BUFFER_SIZE); - WsfHeapAlloc(memUsed); - WsfCsExit(); -#endif - - WsfCsEnter(); - LlInitRtCfg_t llCfg = { .pBbRtCfg = &mainBbRtCfg, - .wlSizeCfg = 4, - .rlSizeCfg = 4, - .plSizeCfg = 4, - .pLlRtCfg = &mainLlRtCfg, - .pFreeMem = WsfHeapGetFreeStartAddress(), - .freeMemAvail = WsfHeapCountAvailable() }; - - memUsed = LlInitControllerInit(&llCfg); - WsfHeapAlloc(memUsed); - WsfCsExit(); - - bdAddr_t bdAddr; - PalCfgLoadData(PAL_CFG_ID_BD_ADDR, bdAddr, sizeof(bdAddr_t)); - /* Coverity[uninit_use_in_call] */ - LlSetBdAddr((uint8_t *)&bdAddr); - - WsfOsRegisterSleepCheckFunc(mainCheckServiceTokens); - WsfOsRegisterSleepCheckFunc(ChciTrService); - - /* Register the UART RX request */ - WsfBufIoUartRegister(processConsoleRX); - - printUsage(); - - WsfOsEnterMainLoop(); - - /* Does not return. */ - return 0; -} diff --git a/Examples/MAX32655/Bluetooth/BLE_fcc/project.mk b/Examples/MAX32655/Bluetooth/BLE_fcc/project.mk deleted file mode 100644 index 256a1a1131d..00000000000 --- a/Examples/MAX32655/Bluetooth/BLE_fcc/project.mk +++ /dev/null @@ -1,16 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -# ********************************************************** - -# Enable Cordio library -LIB_CORDIO = 1 - -# TRACE option -# Set to 0 to disable -# Set to 2 to enable serial port trace messages -TRACE = 2 diff --git a/Examples/MAX32655/Bluetooth/BLE_fit/.vscode/README.md b/Examples/MAX32655/Bluetooth/BLE_fit/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Bluetooth/BLE_fit/.vscode/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_fit/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Bluetooth/BLE_fit/.vscode/settings.json b/Examples/MAX32655/Bluetooth/BLE_fit/.vscode/settings.json index 0f708142b14..cca0bc9a442 100755 --- a/Examples/MAX32655/Bluetooth/BLE_fit/.vscode/settings.json +++ b/Examples/MAX32655/Bluetooth/BLE_fit/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Bluetooth/BLE_fit/Makefile b/Examples/MAX32655/Bluetooth/BLE_fit/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/Bluetooth/BLE_fit/Makefile +++ b/Examples/MAX32655/Bluetooth/BLE_fit/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Bluetooth/BLE_fit/README.md b/Examples/MAX32655/Bluetooth/BLE_fit/README.md index 16ba538ddb6..da237b22b8f 100644 --- a/Examples/MAX32655/Bluetooth/BLE_fit/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_fit/README.md @@ -1,6 +1,6 @@ # BLE_fit Bluetooth fitness device. Showcases heart rate, battery level, running speed and cadence. -Refer to [BLE_fit](../../../Libraries/Cordio/docs/Applications/BLE_fit.md) documentation in the Cordio Library. +Refer to [BLE_fit](../../../../Libraries/Cordio/docs/Applications/BLE_fit.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32655/Bluetooth/BLE_fit/main.c b/Examples/MAX32655/Bluetooth/BLE_fit/main.c index 5dfc4a55fdf..d583cbf6d79 100644 --- a/Examples/MAX32655/Bluetooth/BLE_fit/main.c +++ b/Examples/MAX32655/Bluetooth/BLE_fit/main.c @@ -128,20 +128,6 @@ static void mainWsfInit(void) #endif } -/*************************************************************************************************/ -/*! -* \fn WUT_IRQHandler -* -* \brief WUY interrupt handler. -* -* \return None. -*/ -/*************************************************************************************************/ -void WUT_IRQHandler(void) -{ - MXC_WUT_Handler(MXC_WUT0); -} - /*************************************************************************************************/ /*! * \fn wutTrimCb diff --git a/Examples/MAX32655/Bluetooth/BLE_fit/project.mk b/Examples/MAX32655/Bluetooth/BLE_fit/project.mk index 4a88645be81..a910c1772d1 100644 --- a/Examples/MAX32655/Bluetooth/BLE_fit/project.mk +++ b/Examples/MAX32655/Bluetooth/BLE_fit/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/.vscode/README.md b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/.vscode/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/.vscode/settings.json b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/.vscode/settings.json index 5eb0c7e6c5c..f5664e2f42d 100755 --- a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/.vscode/settings.json +++ b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/FreeRTOSConfig.h b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/FreeRTOSConfig.h index ff1d76bbec2..ae56b4adaf5 100644 --- a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/FreeRTOSConfig.h +++ b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/Makefile b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/Makefile +++ b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/bt_stack.c b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/bt_stack.c index 3d5086705f2..cd11150b38e 100644 --- a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/bt_stack.c +++ b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/bt_stack.c @@ -187,22 +187,6 @@ static void mainWsfInit(void) #endif } -/*************************************************************************************************/ -/*! -* \fn WUT_IRQHandler -* -* \brief WUY interrupt handler. -* -* \return None. -*/ -/*************************************************************************************************/ -void WUT_IRQHandler(void) -{ - MXC_WUT_IntClear(MXC_WUT0); - NVIC_ClearPendingIRQ(WUT_IRQn); - MXC_WUT_Handler(MXC_WUT0); -} - /*************************************************************************************************/ /*! * \fn wutTrimCb diff --git a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/freertos_tickless.c b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/freertos_tickless.c index dde2ca35f85..6113790adda 100644 --- a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/freertos_tickless.c +++ b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/freertos_tickless.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/main.c b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/main.c index 0fdeac3ed27..e8fb7841f8a 100644 --- a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/main.c +++ b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/project.mk b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/project.mk index 44617a9a773..3d2a5b4dcdf 100644 --- a/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/project.mk +++ b/Examples/MAX32655/Bluetooth/BLE_fit_FreeRTOS/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Bluetooth/BLE_mcs/.vscode/README.md b/Examples/MAX32655/Bluetooth/BLE_mcs/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Bluetooth/BLE_mcs/.vscode/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_mcs/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Bluetooth/BLE_mcs/.vscode/settings.json b/Examples/MAX32655/Bluetooth/BLE_mcs/.vscode/settings.json index 0f708142b14..cca0bc9a442 100755 --- a/Examples/MAX32655/Bluetooth/BLE_mcs/.vscode/settings.json +++ b/Examples/MAX32655/Bluetooth/BLE_mcs/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Bluetooth/BLE_mcs/Makefile b/Examples/MAX32655/Bluetooth/BLE_mcs/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/Bluetooth/BLE_mcs/Makefile +++ b/Examples/MAX32655/Bluetooth/BLE_mcs/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Bluetooth/BLE_mcs/README.md b/Examples/MAX32655/Bluetooth/BLE_mcs/README.md index da73f1056ac..ec79723f081 100644 --- a/Examples/MAX32655/Bluetooth/BLE_mcs/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_mcs/README.md @@ -2,7 +2,7 @@ Maxim custom Bluetooth profile and service that advertises as "MCS" and accepts connection requests. -Refer to the [BLE_mcs](../../../Libraries/Cordio/docs/Applications/BLE_mcs.md) documentation in the Cordio Library. +Refer to the [BLE_mcs](../../../../Libraries/Cordio/docs/Applications/BLE_mcs.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32655/Bluetooth/BLE_mcs/project.mk b/Examples/MAX32655/Bluetooth/BLE_mcs/project.mk index 5be585019d4..44df851de9a 100644 --- a/Examples/MAX32655/Bluetooth/BLE_mcs/project.mk +++ b/Examples/MAX32655/Bluetooth/BLE_mcs/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Bluetooth/BLE_otac/.vscode/README.md b/Examples/MAX32655/Bluetooth/BLE_otac/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Bluetooth/BLE_otac/.vscode/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_otac/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Bluetooth/BLE_otac/.vscode/settings.json b/Examples/MAX32655/Bluetooth/BLE_otac/.vscode/settings.json index 0f708142b14..cca0bc9a442 100755 --- a/Examples/MAX32655/Bluetooth/BLE_otac/.vscode/settings.json +++ b/Examples/MAX32655/Bluetooth/BLE_otac/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Bluetooth/BLE_otac/Makefile b/Examples/MAX32655/Bluetooth/BLE_otac/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/Bluetooth/BLE_otac/Makefile +++ b/Examples/MAX32655/Bluetooth/BLE_otac/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Bluetooth/BLE_otac/README.md b/Examples/MAX32655/Bluetooth/BLE_otac/README.md index 06a0de9f5e6..7934cd6b8f0 100644 --- a/Examples/MAX32655/Bluetooth/BLE_otac/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_otac/README.md @@ -5,7 +5,7 @@ Bluetooth data client that scans for and connects to advertisers with the name o The Wireless Data Exchange profile is used to transfer files from the client to the server. A CRC32 value is used to check the integrity of the transferred file. -Refer to the [BLE_otac_otas](../../../Libraries/Cordio/docs/Applications/BLE_otac_otas.md) documentation in the Cordio Library. +Refer to the [BLE_otac_otas](../../../../Libraries/Cordio/docs/Applications/BLE_otac_otas.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32655/Bluetooth/BLE_otac/datc_main.c b/Examples/MAX32655/Bluetooth/BLE_otac/datc_main.c index 0250242462c..77fd6fe8972 100644 --- a/Examples/MAX32655/Bluetooth/BLE_otac/datc_main.c +++ b/Examples/MAX32655/Bluetooth/BLE_otac/datc_main.c @@ -154,7 +154,7 @@ static const appSecCfg_t datcSecCfg = { DM_KEY_DIST_IRK, /*! Initiator key distribution flags */ DM_KEY_DIST_LTK | DM_KEY_DIST_IRK, /*! Responder key distribution flags */ FALSE, /*! TRUE if Out-of-band pairing data is present */ - TRUE /*! TRUE to initiate security upon connection */ + INIT_SECURITY /*! TRUE to initiate security upon connection */ }; /*! TRUE if Out-of-band pairing data is to be sent */ @@ -494,9 +494,9 @@ static void datcScanReport(dmEvt_t *pMsg) if (!connect && ((pData = DmFindAdType(DM_ADV_TYPE_LOCAL_NAME, pMsg->scanReport.len, pMsg->scanReport.pData)) != NULL)) { /* check length and device name */ - if (pData[DM_AD_LEN_IDX] >= 4 && (pData[DM_AD_DATA_IDX] == 'O') && - (pData[DM_AD_DATA_IDX + 1] == 'T') && (pData[DM_AD_DATA_IDX + 2] == 'A') && - (pData[DM_AD_DATA_IDX + 3] == 'S')) { + char advName[] = ADV_NAME; + if (pData[DM_AD_LEN_IDX] == sizeof(advName) && + !strncmp(advName, (char *)&(pData[DM_AD_DATA_IDX]), sizeof(advName))) { connect = TRUE; } } @@ -1367,7 +1367,7 @@ void DatcHandler(wsfEventMask_t event, wsfMsgHdr_t *pMsg) * \return None. */ /*************************************************************************************************/ -static void datcInitSvcHdlList() +static void datcInitSvcHdlList(void) { uint8_t i; diff --git a/Examples/MAX32655/Bluetooth/BLE_otac/fw_update.S b/Examples/MAX32655/Bluetooth/BLE_otac/fw_update.S index 92eef8736cd..93e79399ec6 100644 --- a/Examples/MAX32655/Bluetooth/BLE_otac/fw_update.S +++ b/Examples/MAX32655/Bluetooth/BLE_otac/fw_update.S @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/BLE_otac/main.c b/Examples/MAX32655/Bluetooth/BLE_otac/main.c index 918140f3535..49d7d9f6202 100644 --- a/Examples/MAX32655/Bluetooth/BLE_otac/main.c +++ b/Examples/MAX32655/Bluetooth/BLE_otac/main.c @@ -129,20 +129,6 @@ static void mainWsfInit(void) #endif } -/*************************************************************************************************/ -/*! -* \fn WUT_IRQHandler -* -* \brief WUY interrupt handler. -* -* \return None. -*/ -/*************************************************************************************************/ -void WUT_IRQHandler(void) -{ - MXC_WUT_Handler(MXC_WUT0); -} - /*************************************************************************************************/ /*! * \fn wutTrimCb diff --git a/Examples/MAX32655/Bluetooth/BLE_otac/project.mk b/Examples/MAX32655/Bluetooth/BLE_otac/project.mk index 4dc2cedd016..663968ccd1b 100644 --- a/Examples/MAX32655/Bluetooth/BLE_otac/project.mk +++ b/Examples/MAX32655/Bluetooth/BLE_otac/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -54,3 +71,13 @@ fw_obj: $(FW_UPDATE_OBJ) ${FW_UPDATE_OBJ}: fw_update.S ${FW_UPDATE_BIN} ${CC} ${AFLAGS} -o ${@} -c fw_update.S + +# set ADVTISEMENT name you want to connect +ADV_NAME?=DATS +PROJ_CFLAGS += -DADV_NAME=\"$(ADV_NAME)\" + + + +### CONFIGURE security +# /*! TRUE to initiate security upon connection*/ +PROJ_CFLAGS += -DINIT_SECURITY=TRUE \ No newline at end of file diff --git a/Examples/MAX32655/Bluetooth/BLE_otas/.vscode/README.md b/Examples/MAX32655/Bluetooth/BLE_otas/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Bluetooth/BLE_otas/.vscode/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_otas/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Bluetooth/BLE_otas/.vscode/settings.json b/Examples/MAX32655/Bluetooth/BLE_otas/.vscode/settings.json index 5a98cb6a7e1..b3589112110 100755 --- a/Examples/MAX32655/Bluetooth/BLE_otas/.vscode/settings.json +++ b/Examples/MAX32655/Bluetooth/BLE_otas/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Bluetooth/BLE_otas/Makefile b/Examples/MAX32655/Bluetooth/BLE_otas/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/Bluetooth/BLE_otas/Makefile +++ b/Examples/MAX32655/Bluetooth/BLE_otas/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Bluetooth/BLE_otas/README.md b/Examples/MAX32655/Bluetooth/BLE_otas/README.md index 299669aa7ff..be3b34fe52e 100644 --- a/Examples/MAX32655/Bluetooth/BLE_otas/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_otas/README.md @@ -5,7 +5,7 @@ Bluetooth data server that advertises as "OTAS" and accepts connection requests. The Wireless Data Exchange profile is used to transfer files from the client to the server. A CRC32 value is used to check the integrity of the transferred file. -Refer to the [BLE_otac_otas](../../../Libraries/Cordio/docs/Applications/BLE_otac_otas.md) documentation in the Cordio Library. +Refer to the [BLE_otac_otas](../../../../Libraries/Cordio/docs/Applications/BLE_otac_otas.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32655/Bluetooth/BLE_otas/bl_build.S b/Examples/MAX32655/Bluetooth/BLE_otas/bl_build.S index 73c587a0a14..e3de5fda644 100644 --- a/Examples/MAX32655/Bluetooth/BLE_otas/bl_build.S +++ b/Examples/MAX32655/Bluetooth/BLE_otas/bl_build.S @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/BLE_otas/dats_main.c b/Examples/MAX32655/Bluetooth/BLE_otas/dats_main.c index 2d68b8219eb..a4a0b965403 100644 --- a/Examples/MAX32655/Bluetooth/BLE_otas/dats_main.c +++ b/Examples/MAX32655/Bluetooth/BLE_otas/dats_main.c @@ -120,7 +120,7 @@ static const appSecCfg_t datsSecCfg = { DM_KEY_DIST_IRK, /*! Initiator key distribution flags */ DM_KEY_DIST_LTK | DM_KEY_DIST_IRK, /*! Responder key distribution flags */ FALSE, /*! TRUE if Out-of-band pairing data is present */ - TRUE /*! TRUE to initiate security upon connection */ + INIT_SECURITY /*! TRUE to initiate security upon connection */ }; /*! TRUE if Out-of-band pairing data is to be sent */ @@ -200,15 +200,8 @@ static const uint8_t datsAdvDataDisc[] = { }; /*! scan data, discoverable mode */ -static const uint8_t datsScanDataDisc[] = { - /*! device name */ - 5, /*! length */ - DM_ADV_TYPE_LOCAL_NAME, /*! AD type */ - 'O', - 'T', - 'A', - 'S' -}; +static const uint8_t deviceName[] = ADV_NAME; +static uint8_t datsScanDataDisc[sizeof(deviceName) + 2]; /************************************************************************************************** Client Characteristic Configuration Descriptors @@ -462,6 +455,9 @@ static void datsSetup(dmEvt_t *pMsg) { /* Initialize control information */ datsCb.restoringResList = FALSE; + memcpy(&datsScanDataDisc[2], deviceName, sizeof(deviceName)); + datsScanDataDisc[0] = sizeof(deviceName); + datsScanDataDisc[1] = DM_ADV_TYPE_LOCAL_NAME; /* set advertising and scan response data for discoverable mode */ AppAdvSetData(APP_ADV_DATA_DISCOVERABLE, sizeof(datsAdvDataDisc), (uint8_t *)datsAdvDataDisc); @@ -683,7 +679,7 @@ void DatsHandlerInit(wsfHandlerId_t handlerId) AppGetBdAddr(addr); APP_TRACE_INFO6("MAC Addr: %02x:%02x:%02x:%02x:%02x:%02x", addr[5], addr[4], addr[3], addr[2], addr[1], addr[0]); - APP_TRACE_INFO1("Adv local name: %s", &datsScanDataDisc[2]); + APP_TRACE_INFO1("Adv local name: %s", deviceName); /* store handler ID */ datsCb.handlerId = handlerId; diff --git a/Examples/MAX32655/Bluetooth/BLE_otas/main.c b/Examples/MAX32655/Bluetooth/BLE_otas/main.c index 64faf40a83a..c4f2320eaa4 100644 --- a/Examples/MAX32655/Bluetooth/BLE_otas/main.c +++ b/Examples/MAX32655/Bluetooth/BLE_otas/main.c @@ -139,20 +139,6 @@ static void mainWsfInit(void) #endif } -/*************************************************************************************************/ -/*! -* \fn WUT_IRQHandler -* -* \brief WUY interrupt handler. -* -* \return None. -*/ -/*************************************************************************************************/ -void WUT_IRQHandler(void) -{ - MXC_WUT_Handler(MXC_WUT0); -} - /*************************************************************************************************/ /*! * \fn wutTrimCb diff --git a/Examples/MAX32655/Bluetooth/BLE_otas/ota_external_mem.ld b/Examples/MAX32655/Bluetooth/BLE_otas/ota_external_mem.ld index ef1631ec0a5..a82b2a551c4 100644 --- a/Examples/MAX32655/Bluetooth/BLE_otas/ota_external_mem.ld +++ b/Examples/MAX32655/Bluetooth/BLE_otas/ota_external_mem.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/BLE_otas/ota_internal_mem.ld b/Examples/MAX32655/Bluetooth/BLE_otas/ota_internal_mem.ld index d4ce72d9d13..7e54abeccf8 100644 --- a/Examples/MAX32655/Bluetooth/BLE_otas/ota_internal_mem.ld +++ b/Examples/MAX32655/Bluetooth/BLE_otas/ota_internal_mem.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/BLE_otas/project.mk b/Examples/MAX32655/Bluetooth/BLE_otas/project.mk index 931e65f0d2b..946098f7a26 100644 --- a/Examples/MAX32655/Bluetooth/BLE_otas/project.mk +++ b/Examples/MAX32655/Bluetooth/BLE_otas/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -63,3 +80,12 @@ bl_obj: $(BOOTLOADER_OBJ) ${BOOTLOADER_OBJ}: bl_build.S ${BOOTLOADER_BIN} ${CC} ${AFLAGS} -o ${@} -c bl_build.S endif + +# SET advertising name +ADV_NAME?=DATS +PROJ_CFLAGS += -DADV_NAME=\"$(ADV_NAME)\" + + +### CONFIGURE security +# /*! TRUE to initiate security upon connection*/ +PROJ_CFLAGS += -DINIT_SECURITY=TRUE \ No newline at end of file diff --git a/Examples/MAX32655/Bluetooth/BLE_periph/.vscode/README.md b/Examples/MAX32655/Bluetooth/BLE_periph/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Bluetooth/BLE_periph/.vscode/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_periph/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Bluetooth/BLE_periph/.vscode/settings.json b/Examples/MAX32655/Bluetooth/BLE_periph/.vscode/settings.json index 0f708142b14..cca0bc9a442 100755 --- a/Examples/MAX32655/Bluetooth/BLE_periph/.vscode/settings.json +++ b/Examples/MAX32655/Bluetooth/BLE_periph/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Bluetooth/BLE_periph/Makefile b/Examples/MAX32655/Bluetooth/BLE_periph/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/Bluetooth/BLE_periph/Makefile +++ b/Examples/MAX32655/Bluetooth/BLE_periph/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Bluetooth/BLE_periph/README.md b/Examples/MAX32655/Bluetooth/BLE_periph/README.md index ceca4c79059..9a3b48384a8 100644 --- a/Examples/MAX32655/Bluetooth/BLE_periph/README.md +++ b/Examples/MAX32655/Bluetooth/BLE_periph/README.md @@ -1,5 +1,5 @@ # BLE_periph -Refer to the [BLE_periph](../../../Libraries/Cordio/docs/Applications/BLE_periph.md) documentation in the Cordio Library. +Refer to the [BLE_periph](../../../../Libraries/Cordio/docs/Applications/BLE_periph.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32655/Bluetooth/BLE_periph/project.mk b/Examples/MAX32655/Bluetooth/BLE_periph/project.mk index 03ad7a7f7df..5b5000b8b4e 100644 --- a/Examples/MAX32655/Bluetooth/BLE_periph/project.mk +++ b/Examples/MAX32655/Bluetooth/BLE_periph/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Bluetooth/Bootloader/.vscode/README.md b/Examples/MAX32655/Bluetooth/Bootloader/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Bluetooth/Bootloader/.vscode/README.md +++ b/Examples/MAX32655/Bluetooth/Bootloader/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Bluetooth/Bootloader/.vscode/settings.json b/Examples/MAX32655/Bluetooth/Bootloader/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/Bluetooth/Bootloader/.vscode/settings.json +++ b/Examples/MAX32655/Bluetooth/Bootloader/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Bluetooth/Bootloader/Makefile b/Examples/MAX32655/Bluetooth/Bootloader/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/Bluetooth/Bootloader/Makefile +++ b/Examples/MAX32655/Bluetooth/Bootloader/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Bluetooth/Bootloader/boot_lower.S b/Examples/MAX32655/Bluetooth/Bootloader/boot_lower.S index 2c6e47a2bb0..4323feb9ba4 100644 --- a/Examples/MAX32655/Bluetooth/Bootloader/boot_lower.S +++ b/Examples/MAX32655/Bluetooth/Bootloader/boot_lower.S @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/Bootloader/bootloader.ld b/Examples/MAX32655/Bluetooth/Bootloader/bootloader.ld index 6cd74a6cef7..c2cf7411c84 100644 --- a/Examples/MAX32655/Bluetooth/Bootloader/bootloader.ld +++ b/Examples/MAX32655/Bluetooth/Bootloader/bootloader.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/Bootloader/main_ext.c b/Examples/MAX32655/Bluetooth/Bootloader/main_ext.c index e5536e8527f..360796a3f2b 100644 --- a/Examples/MAX32655/Bluetooth/Bootloader/main_ext.c +++ b/Examples/MAX32655/Bluetooth/Bootloader/main_ext.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/Bootloader/main_int.c b/Examples/MAX32655/Bluetooth/Bootloader/main_int.c index 812f55cf809..0279d9829f1 100644 --- a/Examples/MAX32655/Bluetooth/Bootloader/main_int.c +++ b/Examples/MAX32655/Bluetooth/Bootloader/main_int.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/Bootloader/project.mk b/Examples/MAX32655/Bluetooth/Bootloader/project.mk index 55de24ca925..acb9744483b 100644 --- a/Examples/MAX32655/Bluetooth/Bootloader/project.mk +++ b/Examples/MAX32655/Bluetooth/Bootloader/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Bluetooth/Makefile b/Examples/MAX32655/Bluetooth/Makefile new file mode 100644 index 00000000000..a850f1815f5 --- /dev/null +++ b/Examples/MAX32655/Bluetooth/Makefile @@ -0,0 +1,4 @@ +all: + @for DIR in ./* ; do $(MAKE) -C $$DIR; done +clean: + @for DIR in ./* ; do $(MAKE) -C $$DIR distclean; rm -rf $$DIR/build; done diff --git a/Examples/MAX32655/Bluetooth/RF_Test/.vscode/README.md b/Examples/MAX32655/Bluetooth/RF_Test/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Bluetooth/RF_Test/.vscode/README.md +++ b/Examples/MAX32655/Bluetooth/RF_Test/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Bluetooth/RF_Test/.vscode/settings.json b/Examples/MAX32655/Bluetooth/RF_Test/.vscode/settings.json index 30c51592061..ac70d2d4a79 100755 --- a/Examples/MAX32655/Bluetooth/RF_Test/.vscode/settings.json +++ b/Examples/MAX32655/Bluetooth/RF_Test/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Bluetooth/RF_Test/FreeRTOSConfig.h b/Examples/MAX32655/Bluetooth/RF_Test/FreeRTOSConfig.h index b04bd04f323..95de095cea3 100644 --- a/Examples/MAX32655/Bluetooth/RF_Test/FreeRTOSConfig.h +++ b/Examples/MAX32655/Bluetooth/RF_Test/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/RF_Test/Makefile b/Examples/MAX32655/Bluetooth/RF_Test/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/Bluetooth/RF_Test/Makefile +++ b/Examples/MAX32655/Bluetooth/RF_Test/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Bluetooth/RF_Test/freertos_tickless.c b/Examples/MAX32655/Bluetooth/RF_Test/freertos_tickless.c index b78bd80baab..e997be57d10 100644 --- a/Examples/MAX32655/Bluetooth/RF_Test/freertos_tickless.c +++ b/Examples/MAX32655/Bluetooth/RF_Test/freertos_tickless.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Bluetooth/RF_Test/main.c b/Examples/MAX32655/Bluetooth/RF_Test/main.c index d9861254be5..459bfac8cef 100644 --- a/Examples/MAX32655/Bluetooth/RF_Test/main.c +++ b/Examples/MAX32655/Bluetooth/RF_Test/main.c @@ -243,8 +243,8 @@ uint8_t processEscSequence(uint8_t *seq) * * \brief adds latest command to command history buffer * - * \param q pointer to the circular buffer holding command history - * \param cmd pointer to the command string to be added + * \param q pointer to the circular buffer holding command history + * \param cmd pointer to the command string to be added * * \return None. */ @@ -271,9 +271,9 @@ void cmdHistoryAdd(queue_t *q, const uint8_t *cmd) * \fn updateQueuePointer. * * \brief Updates an internal marker pointing to historical command to be printed, based on up/down arrow - * - * \param q pointer to the circular buffer holding command history - * + * + * \param q pointer to the circular buffer holding command history + * * \param upArrow flag used to upated the queuePoniter delimiting which command to print * * \return None. @@ -393,9 +393,9 @@ void prompt(void) * \fn printHint * * \brief Prints the help string of any command matching the current inputbuffer - * + * * \param buff pointer to the inputbuffer - * + * * \return None. */ /*************************************************************************************************/ @@ -694,17 +694,25 @@ void txTestTask(void *pvParameters) snprintf(str, sizeof(str), "%s%s", str, (const char *)getPhyStr(phy)); APP_TRACE_INFO1("%s", str); + //Prevent FreeRTOS from context switching until the LL is finished + vTaskSuspendAll(); + /* stat test */ if (testConfig.testType == BLE_TX_TEST) { res = LlEnhancedTxTest(testConfig.channel, packetLen, packetType, phy, 0); } else { res = LlEnhancedRxTest(testConfig.channel, phy, 0, 0); } + xTaskResumeAll(); //Restore scheduler + APP_TRACE_INFO2("result = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); /* if duration value was given then let the test run that amount of time and end */ if (testConfig.duration_ms) { vTaskDelay(testConfig.duration_ms); + //Prevent FreeRTOS from context switching until the LL is finished + vTaskSuspendAll(); LlEndTest(NULL); + xTaskResumeAll(); //Restore scheduler xSemaphoreGive(rfTestMutex); } pausePrompt = false; diff --git a/Examples/MAX32655/Bluetooth/RF_Test/project.mk b/Examples/MAX32655/Bluetooth/RF_Test/project.mk index f3913aed279..e61f3dbd9e9 100644 --- a/Examples/MAX32655/Bluetooth/RF_Test/project.mk +++ b/Examples/MAX32655/Bluetooth/RF_Test/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/CRC/.vscode/README.md b/Examples/MAX32655/CRC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/CRC/.vscode/README.md +++ b/Examples/MAX32655/CRC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/CRC/.vscode/settings.json b/Examples/MAX32655/CRC/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/CRC/.vscode/settings.json +++ b/Examples/MAX32655/CRC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/CRC/Makefile b/Examples/MAX32655/CRC/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/CRC/Makefile +++ b/Examples/MAX32655/CRC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/CRC/main.c b/Examples/MAX32655/CRC/main.c index 14792022ad6..cb0bd83f368 100644 --- a/Examples/MAX32655/CRC/main.c +++ b/Examples/MAX32655/CRC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/CRC/project.mk b/Examples/MAX32655/CRC/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/CRC/project.mk +++ b/Examples/MAX32655/CRC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Coremark/.vscode/README.md b/Examples/MAX32655/Coremark/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Coremark/.vscode/README.md +++ b/Examples/MAX32655/Coremark/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Coremark/.vscode/settings.json b/Examples/MAX32655/Coremark/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/Coremark/.vscode/settings.json +++ b/Examples/MAX32655/Coremark/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Coremark/Makefile b/Examples/MAX32655/Coremark/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/Coremark/Makefile +++ b/Examples/MAX32655/Coremark/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Coremark/project.mk b/Examples/MAX32655/Coremark/project.mk index 9ded8091069..a6efc624169 100644 --- a/Examples/MAX32655/Coremark/project.mk +++ b/Examples/MAX32655/Coremark/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/DMA/.vscode/README.md b/Examples/MAX32655/DMA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/DMA/.vscode/README.md +++ b/Examples/MAX32655/DMA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/DMA/.vscode/settings.json b/Examples/MAX32655/DMA/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/DMA/.vscode/settings.json +++ b/Examples/MAX32655/DMA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/DMA/Makefile b/Examples/MAX32655/DMA/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/DMA/Makefile +++ b/Examples/MAX32655/DMA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/DMA/main.c b/Examples/MAX32655/DMA/main.c index bc7965fb2d2..92ac146f44d 100644 --- a/Examples/MAX32655/DMA/main.c +++ b/Examples/MAX32655/DMA/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -56,7 +55,7 @@ void memCpyComplete(void *dest) flag++; } -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); } diff --git a/Examples/MAX32655/DMA/project.mk b/Examples/MAX32655/DMA/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/DMA/project.mk +++ b/Examples/MAX32655/DMA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Demo_2048/ARM/.cproject b/Examples/MAX32655/Demo_2048/ARM/.cproject new file mode 100644 index 00000000000..b55b8320df6 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32655/Demo_2048/ARM/.project b/Examples/MAX32655/Demo_2048/ARM/.project new file mode 100644 index 00000000000..e0ac7bea7d7 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/.project @@ -0,0 +1,26 @@ + + + ARM + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.settings/language.settings.xml b/Examples/MAX32655/Demo_2048/ARM/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.settings/language.settings.xml rename to Examples/MAX32655/Demo_2048/ARM/.settings/language.settings.xml diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32655/Demo_2048/ARM/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32655/Demo_2048/ARM/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32655/Demo_2048/ARM/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32655/Demo_2048/ARM/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..bd472bd04f2 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=ARM +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32655 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32655/Demo_2048/ARM/.vscode/README.md b/Examples/MAX32655/Demo_2048/ARM/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/USB_CDCACM/.vscode/c_cpp_properties.json b/Examples/MAX32655/Demo_2048/ARM/.vscode/c_cpp_properties.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_CDCACM/.vscode/c_cpp_properties.json rename to Examples/MAX32655/Demo_2048/ARM/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb b/Examples/MAX32655/Demo_2048/ARM/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb rename to Examples/MAX32655/Demo_2048/ARM/.vscode/flash.gdb diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.vscode/launch.json b/Examples/MAX32655/Demo_2048/ARM/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.vscode/launch.json rename to Examples/MAX32655/Demo_2048/ARM/.vscode/launch.json diff --git a/Examples/MAX32655/Demo_2048/ARM/.vscode/settings.json b/Examples/MAX32655/Demo_2048/ARM/.vscode/settings.json new file mode 100644 index 00000000000..8d86424f5da --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/.vscode/settings.json @@ -0,0 +1,82 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32655", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"${config:target}.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ], + "files.associations": { + "graphics.h": "c" + } +} + diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json b/Examples/MAX32655/Demo_2048/ARM/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json rename to Examples/MAX32655/Demo_2048/ARM/.vscode/tasks.json diff --git a/Examples/MAX32655/Demo_2048/ARM/ARM.launch b/Examples/MAX32655/Demo_2048/ARM/ARM.launch new file mode 100644 index 00000000000..b1947ffa006 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/ARM.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32655/Demo_2048/ARM/Makefile b/Examples/MAX32655/Demo_2048/ARM/Makefile new file mode 100644 index 00000000000..717125621b6 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32655 +TARGET_UC := MAX32655 +TARGET_LC := max32655 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32655/Demo_2048/ARM/README.md b/Examples/MAX32655/Demo_2048/ARM/README.md new file mode 100644 index 00000000000..0bc3ab69870 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/README.md @@ -0,0 +1,70 @@ +## Description + +This example demonstrates running the 2048 game on both ARM and RISC-V cores on the MAX32655. + +The RISC-V core, running at 60MHz (ISO), handles the controller (keyboard) user inputs and the main 2048 game logic. + +The ARM core, running at 100MHz (IPO), keeps track of the timer (RTC) and handles the display graphics after the RISC-V core finishes handling the main game logic. + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +This project only supports the MAX32655EVKIT as it has the 320x240 TFT Display. + +## Required Connections + +If using the MAX32655EVKIT (EvKit\_V1): +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. +- Connect pins JP4(RX_SEL) and JP5(TX_SEL) to RX0 and TX0 header. +- Open an terminal application on the PC and connect to the EV kit's console UART at 2000000, 8-N-1. +- Close jumper JP2 (LED0 EN). +- Close jumper JP3 (LED1 EN). + +## Expected Output + +``` +******************************************************************************* +ARM: Starting ARM Initialization. + +ARM: Semaphore is not busy - with previous value: 1 + +ARM: Starting RISC-V core and handing off major UART0 Control to RISC-V. + +RISC-V: Starting RISC-V Initialization. + +RISC-V: Semaphore is not busy - with previous value: 1 + +RISC-V: Finished startup. Main UART0 control is handled by RISC-V now. + +RISC-V: Starting Controller and Game + + + + + + + + + + + | | | + | | | + | | | +----------------------------------- + | | | + | | | + | | | +----------------------------------- + | | | + | | 0002 | + | | | +----------------------------------- + | | | + | | | + | | | +``` diff --git a/Examples/MAX32655/Demo_2048/ARM/inc/cfs_logo.h b/Examples/MAX32655/Demo_2048/ARM/inc/cfs_logo.h new file mode 100644 index 00000000000..1277d89c566 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/inc/cfs_logo.h @@ -0,0 +1,122 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32655_DEMO_2048_ARM_INC_CFS_LOGO_H_ +#define EXAMPLES_MAX32655_DEMO_2048_ARM_INC_CFS_LOGO_H_ + +// clang-format off + +/* **** Includes **** */ + +#include +#include "mxc_device.h" + +/* **** Definitions **** */ + +// NOTE: This definition is used instead of 'const' to place these files into Flash to remove +// the "discard 'const' qualifer from pointer target type" build warning. +#define __flash __attribute__((section(".flash_code_section"))) + +/* **** Function Prototypes **** */ + +#define CFS_LOGO_WIDTH (80) +#define CFS_LOGO_HEIGHT (80) +__flash uint16_t cfs_logo[] = { + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x9db6, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x7944, 0x7602, 0x1c96, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x3faf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x593c, 0xf602, 0x5703, 0xb602, 0xfc95, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0xff9e, 0x7fcf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x593c, 0xf602, 0x5703, 0x5703, 0x5703, 0xb602, 0xfc95, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0xff9e, 0xff9e, 0xbfdf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x3934, 0xf602, 0x5703, 0x5703, 0x5703, 0x5703, 0x5703, 0xb602, 0xfc8d, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0x1faf, 0xdff7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x593c, 0xf602, 0x5703, 0x5703, 0x1703, 0x1703, 0x3703, 0x5703, 0x5703, 0xb602, 0xdc8d, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1f9f, 0xff96, 0x5fbf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x5934, 0xf602, 0x5703, 0x5703, 0xf602, 0x7944, 0xffff, 0x9813, 0x1703, 0x5703, 0x5703, 0xd602, 0xdc8d, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xff9e, 0x7fcf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x3934, 0xf602, 0x5703, 0x5703, 0xf602, 0x7944, 0xffff, 0xffff, 0xffff, 0x770b, 0x1703, 0x5703, 0x5703, 0xd602, 0xbc8d, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xff9e, 0xbfe7, 0xffff, 0xffff, 0xffff, 0xffff, 0x192c, 0xf702, 0x5703, 0x5703, 0xf602, 0x7944, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x770b, 0x1703, 0x5703, 0x5703, 0xb602, 0xbc85, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0x1faf, 0xfff7, 0xffff, 0x192c, 0xf702, 0x5703, 0x5703, 0xf602, 0x7944, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x9813, 0x1703, 0x5703, 0x5703, 0xb602, 0xbb85, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x3fa7, 0xf923, 0xf702, 0x5703, 0x5703, 0xf602, 0x9a4c, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xb813, 0x1703, 0x5703, 0x5703, 0xd602, 0x9b85, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0xf81b, 0x1703, 0x5703, 0x5703, 0xf602, 0xba54, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xb813, 0x1703, 0x5703, 0x5703, 0xd602, 0x9b7d, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5fb7, 0xd81b, 0x1703, 0x5703, 0x5703, 0xf602, 0x592c, 0xfff7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x9813, 0x1703, 0x5703, 0x5703, 0xd602, 0x9b7d, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x7fb7, 0xb813, 0x1703, 0x5703, 0x5703, 0xf602, 0x5934, 0x7fb7, 0xff9e, 0x3faf, 0xdff7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x9813, 0x1703, 0x5703, 0x5703, 0xb602, 0x7b7d, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0xb813, 0x1703, 0x5703, 0x5703, 0xf602, 0x7a34, 0x9fb7, 0x1fa7, 0x1fa7, 0x1f9f, 0xff96, 0x5fbf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xb81b, 0x1703, 0x5703, 0x5703, 0xb602, 0x7b75, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0xd81b, 0x1703, 0x5703, 0x5703, 0xf602, 0x7a34, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xff9e, 0x9fcf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xd81b, 0x1703, 0x5703, 0x5703, 0xd602, 0x7b75, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0xd81b, 0x1703, 0x5703, 0x5703, 0xf602, 0x9a34, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0x1fa7, 0xbfe7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xd823, 0x1703, 0x5703, 0x5703, 0xd602, 0x5b75, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0xb813, 0x1703, 0x5703, 0x5703, 0xf602, 0x9a34, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0x3faf, 0xfff7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xb81b, 0x1703, 0x5703, 0x5703, 0xd602, 0x5b75, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x9813, 0x1703, 0x5703, 0x5703, 0xf602, 0x9a3c, 0x9fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1f9f, 0xff96, 0x5fbf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xd81b, 0x1703, 0x5703, 0x5703, 0xd602, 0x3b6d, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x9813, 0x1703, 0x5703, 0x5703, 0xf602, 0x9a3c, 0x9fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x3fa7, 0x3faf, 0x3faf, 0x3faf, 0x3faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xff9e, 0x9fd7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf823, 0xf702, 0x5703, 0x5703, 0xd602, 0x3b6d, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x3faf, 0xb813, 0x1703, 0x5703, 0x5703, 0xf602, 0xba3c, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xbc6d, 0xfd75, 0xfd75, 0xfd75, 0xdd6d, 0xbf96, 0x3faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0x1fa7, 0xbfe7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf823, 0xf702, 0x5703, 0x5703, 0xd602, 0x3b6d, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x3faf, 0xb813, 0x1703, 0x5703, 0x5703, 0xf602, 0xba3c, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x3faf, 0xdd6d, 0x9502, 0xf602, 0xf602, 0xf602, 0xf702, 0xbf96, 0x3faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0x3faf, 0xfff7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf82b, 0xf702, 0x5703, 0x5703, 0xd602, 0x3b65, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1f9f, 0x5faf, 0x9813, 0x1703, 0x5703, 0x5703, 0xf602, 0xba3c, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x3d7e, 0xd602, 0x3703, 0x5703, 0x3703, 0x1703, 0xdf96, 0x3faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xff96, 0x5fbf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf823, 0xf702, 0x5703, 0x5703, 0xd602, 0x1a65, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x3fa7, 0x780b, 0x1703, 0x5703, 0x5703, 0xf602, 0xba44, 0x9fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x3d7e, 0xf602, 0x3703, 0x5703, 0x3703, 0xf602, 0xbe96, 0x3faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xff96, 0x9fd7, 0xffff, 0xffff, 0xffff, 0xffff, 0xf82b, 0xf702, 0x5703, 0x5703, 0xd602, 0xfa5c, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x7703, 0x1703, 0x5703, 0x5703, 0xf602, 0xda44, 0x9fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x3d7e, 0xf602, 0x3703, 0x5703, 0x3703, 0x1703, 0x9e8e, 0x3faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0x1fa7, 0xbfe7, 0xffff, 0xffff, 0xffff, 0x192c, 0xf702, 0x5703, 0x5703, 0xd602, 0xfa64, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x9813, 0x1703, 0x5703, 0x5703, 0xf602, 0xda44, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x3d7e, 0xf602, 0x3703, 0x5703, 0x3703, 0x1703, 0x9e8e, 0x3faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0x3faf, 0xfff7, 0xffff, 0xffff, 0x1934, 0xf702, 0x5703, 0x5703, 0xd602, 0xfa5c, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x9813, 0x1703, 0x5703, 0x5703, 0xf602, 0xdb44, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x5e86, 0xd602, 0x3703, 0x5703, 0x3703, 0xf602, 0x9e96, 0x3faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xff96, 0x5fbf, 0xffff, 0xffff, 0x3934, 0xf702, 0x5703, 0x5703, 0xd602, 0xfa5c, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x980b, 0x1703, 0x5703, 0x5703, 0xf602, 0xdb44, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x5e86, 0xd602, 0x3703, 0x5703, 0x3703, 0xf602, 0x9e96, 0x5faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xff9e, 0x9fd7, 0xffff, 0x3934, 0xf702, 0x5703, 0x5703, 0xd602, 0xda5c, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x770b, 0x1703, 0x5703, 0x5703, 0xf602, 0xfb4c, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x5e86, 0xf602, 0x3703, 0x5703, 0x3703, 0xf602, 0x9e8e, 0x5faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0x1fa7, 0xffff, 0x593c, 0xf702, 0x5703, 0x5703, 0xd602, 0xda54, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xdfff, 0x5703, 0x1703, 0x5703, 0x5703, 0x1703, 0x3b55, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x7e86, 0x3703, 0x5703, 0x5703, 0x3703, 0xf602, 0x3d7e, 0x3fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xbfcf, 0x5934, 0x3703, 0x5703, 0x5703, 0xd602, 0xba4c, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xbfef, 0x1703, 0x3703, 0x5703, 0x5703, 0x1703, 0x9c65, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x3faf, 0xbf96, 0x5703, 0x3703, 0x5703, 0x5703, 0xd602, 0xbc6d, 0x3faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xbfc7, 0xba44, 0x1703, 0x5703, 0x5703, 0xf702, 0xb81b, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x3703, 0x1703, 0x5703, 0x5703, 0xd602, 0x5b5d, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x3faf, 0x9e8e, 0x1703, 0x3703, 0x5703, 0x5703, 0xd602, 0xfd75, 0x5faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xff9e, 0xfff7, 0xba54, 0xf602, 0x5703, 0x5703, 0xf702, 0xf823, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x5703, 0x1703, 0x5703, 0x5703, 0xd602, 0x3b55, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x9e8e, 0xf602, 0x3703, 0x5703, 0x5703, 0xd602, 0x1d76, 0x5faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xff96, 0x7fc7, 0xffff, 0x994c, 0xf602, 0x5703, 0x5703, 0xf702, 0x192c, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x5703, 0x1703, 0x5703, 0x5703, 0xd602, 0x3b55, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x9e8e, 0xf602, 0x3703, 0x5703, 0x3703, 0xd602, 0x1d76, 0x5faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1f9f, 0xff9e, 0x3fb7, 0xffff, 0xffff, 0x994c, 0xf602, 0x5703, 0x5703, 0xf702, 0x3934, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x5703, 0x3703, 0x5703, 0x5703, 0xd602, 0x3b55, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x7e8e, 0xf602, 0x3703, 0x5703, 0x3703, 0xf602, 0x1d76, 0x5faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0x1fa7, 0xdfe7, 0xffff, 0xffff, 0x593c, 0xb602, 0x1703, 0x1703, 0xf602, 0x3934, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x3703, 0x3703, 0x5703, 0x5703, 0xd602, 0x1b55, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x7e8e, 0xf702, 0x3703, 0x5703, 0x3703, 0xd602, 0x1d76, 0x5faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xff9e, 0x9fd7, 0xffff, 0xffff, 0xffff, 0xdc8d, 0x3934, 0x994c, 0x994c, 0x9944, 0xda54, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff9e, 0x5703, 0x3703, 0x5703, 0x5703, 0xd602, 0x1b55, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x7e8e, 0xf602, 0x3703, 0x5703, 0x3703, 0xd602, 0x1d7e, 0x5faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xff96, 0x5fc7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1f9f, 0x3fa7, 0x5703, 0x3703, 0x5703, 0x5703, 0xd602, 0x1b4d, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x7e8e, 0xd602, 0x3703, 0x5703, 0x3703, 0xd602, 0x3d7e, 0x5faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0x3fb7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x3fa7, 0x1fa7, 0x770b, 0x1703, 0x5703, 0x5703, 0xd602, 0x1b4d, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x3fa7, 0x3d7e, 0x9602, 0xf602, 0x1703, 0xf602, 0xd602, 0x3d7e, 0x5faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x7fbf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x3fa7, 0x1fa7, 0x770b, 0x3703, 0x5703, 0x5703, 0xf602, 0xfb4c, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5c5d, 0x7c65, 0x9c65, 0x9c65, 0x7c5d, 0x5e86, 0x5faf, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x1fa7, 0xba44, 0xba54, 0xba54, 0xba4c, 0xba4c, 0xba4c, 0xba4c, 0xba4c, 0xba4c, 0xba4c, 0xba4c, 0xba4c, 0xba4c, 0xba4c, 0xba4c, 0xba4c, 0xda5c, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x3fa7, 0x3fa7, 0x5703, 0x3703, 0x5703, 0x5703, 0xf602, 0xfb4c, 0x9fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x3faf, 0x3faf, 0x3faf, 0x3faf, 0x3faf, 0x3fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x3faf, 0x5fb7, 0x3b55, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xf702, 0x5703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x3fa7, 0x3faf, 0x5703, 0x1703, 0x5703, 0x5703, 0xf602, 0xfb4c, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x3fa7, 0x7fb7, 0xfd75, 0x5703, 0xf602, 0x3703, 0x5703, 0x5703, 0x5703, 0x5703, 0x5703, 0x5703, 0x5703, 0x5703, 0x5703, 0x5703, 0x5703, 0x5703, 0x5703, 0x5703, 0x5703, 0x3703, 0x770b, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x3fa7, 0x3faf, 0x780b, 0x1703, 0x5703, 0x5703, 0xf602, 0xdb44, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1f9f, 0x5e7e, 0x7703, 0x7602, 0xd602, 0xf602, 0xf602, 0xf602, 0xf602, 0xf602, 0xf602, 0xf602, 0xf602, 0xf602, 0xf602, 0xf602, 0xf602, 0xf602, 0xf602, 0xf602, 0xf602, 0xf602, 0xd602, 0x3703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x3fa7, 0x3fa7, 0x980b, 0x1703, 0x5703, 0x5703, 0xf602, 0xdb44, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xff9e, 0x9fd7, 0x5edf, 0x7fe7, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0x9fef, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x3fa7, 0x3faf, 0x980b, 0x1703, 0x5703, 0x5703, 0xf602, 0xda44, 0x7fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xff96, 0x5fc7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x3fa7, 0x3faf, 0x780b, 0x1703, 0x5703, 0x5703, 0xf602, 0xba44, 0x9fb7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff96, 0x3faf, 0xfff7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x780b, 0x1703, 0x5703, 0x5703, 0xf602, 0xba44, 0x9fb7, 0xff9e, 0x1fa7, 0xbfe7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x7fe7, 0x7fe7, 0x7fe7, 0x7fe7, 0x3ed7, 0xdfff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x5faf, 0x9813, 0x1703, 0x5703, 0x5703, 0xf602, 0xba3c, 0xffef, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf823, 0xb602, 0xd602, 0xd602, 0x7502, 0x3934, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x3faf, 0xb813, 0x1703, 0x5703, 0x5703, 0xd602, 0x1a6d, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf82b, 0xf702, 0x5703, 0x5703, 0xd602, 0xba54, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x3fa7, 0x9813, 0x1703, 0x5703, 0x5703, 0xd602, 0xfa64, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf82b, 0xf702, 0x5703, 0x5703, 0xd602, 0xda54, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0x1f9f, 0xdfef, 0xffff, 0xb81b, 0x1703, 0x5703, 0x5703, 0xd602, 0xfa5c, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xd823, 0xf702, 0x5703, 0x5703, 0xd602, 0xba54, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0xff9e, 0x9fd7, 0xffff, 0xffff, 0xffff, 0xffff, 0xb81b, 0x1703, 0x5703, 0x5703, 0xd602, 0xda54, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xb81b, 0x1703, 0x5703, 0x5703, 0xd602, 0xda54, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1f9f, 0xff9e, 0x5fbf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xd823, 0x1703, 0x5703, 0x5703, 0xd602, 0xda5c, 0xffff, 0xffff, 0xffff, 0xd81b, 0x1703, 0x5703, 0x5703, 0xd602, 0xda54, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0x3faf, 0xdff7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf823, 0xf702, 0x5703, 0x5703, 0xd602, 0xfa5c, 0xffff, 0xd823, 0x1703, 0x5703, 0x5703, 0xd602, 0xfa5c, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0x1fa7, 0x1fa7, 0xff9e, 0x1f9f, 0xbfe7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf823, 0x1703, 0x5703, 0x5703, 0x1703, 0x5703, 0x1703, 0x5703, 0x5703, 0xd602, 0xfa5c, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0x1fa7, 0xff9e, 0xff96, 0x7fcf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xd823, 0xf702, 0x5703, 0x5703, 0x3703, 0x5703, 0x5703, 0xd602, 0xfa5c, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xff96, 0xff96, 0x5fbf, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf823, 0xf702, 0x5703, 0x5703, 0x5703, 0xd602, 0x1a65, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1fa7, 0xdff7, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xf82b, 0xf702, 0x5703, 0xd602, 0x1a65, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x192c, 0x9602, 0x3b65, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xdc8d, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff +}; + +#endif // EXAMPLES_MAX32655_DEMO_2048_ARM_INC_CFS_LOGO_H_ diff --git a/Examples/MAX32655/Demo_2048/ARM/inc/clear_sans_bold_game_text.h b/Examples/MAX32655/Demo_2048/ARM/inc/clear_sans_bold_game_text.h new file mode 100644 index 00000000000..d4a5f0f6922 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/inc/clear_sans_bold_game_text.h @@ -0,0 +1,318 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32655_DEMO_2048_ARM_INC_CLEAR_SANS_BOLD_GAME_TEXT_H_ +#define EXAMPLES_MAX32655_DEMO_2048_ARM_INC_CLEAR_SANS_BOLD_GAME_TEXT_H_ + +// clang-format off + +/* **** Includes **** */ + +#include +#include "mxc_device.h" + +/* **** Definitions **** */ + +// NOTE: This definition is used instead of 'const' to place these files into Flash to remove +// the "discard 'const' qualifer from pointer target type" build warning. +#define __flash __attribute__((section(".flash_code_section"))) + +/* **** Function Prototypes **** */ + +// 199x15 +#define GAME_TEXT_DIGITS_WIDTH (131) +#define GAME_TEXT_DIGITS_HEIGHT (15) + +// These digits were edited in Microsoft Paint. Dimensions taken from there. + +// 11x15 +#define GAME_TEXT_DIGIT_0_WIDTH (11) +#define GAME_TEXT_DIGIT_0_HEIGHT (15) +__flash uint16_t game_text_digit_0[] = { + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000 +}; + +// 7x15 +#define GAME_TEXT_DIGIT_1_WIDTH (7) +#define GAME_TEXT_DIGIT_1_HEIGHT (15) +__flash uint16_t game_text_digit_1[] = { + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff +}; + +// 10x15 +#define GAME_TEXT_DIGIT_2_WIDTH (10) +#define GAME_TEXT_DIGIT_2_HEIGHT (15) +__flash uint16_t game_text_digit_2[] = { + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff +}; + +// 10x15 +#define GAME_TEXT_DIGIT_3_WIDTH (10) +#define GAME_TEXT_DIGIT_3_HEIGHT (15) +__flash uint16_t game_text_digit_3[] = { + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000 +}; + +// 13x15 +#define GAME_TEXT_DIGIT_4_WIDTH (13) +#define GAME_TEXT_DIGIT_4_HEIGHT (15) +__flash uint16_t game_text_digit_4[] = { + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000 +}; + +// 12x15 +#define GAME_TEXT_DIGIT_5_WIDTH (12) +#define GAME_TEXT_DIGIT_5_HEIGHT (15) +__flash uint16_t game_text_digit_5[] = { + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000 +}; + +// 12x15 +#define GAME_TEXT_DIGIT_6_WIDTH (12) +#define GAME_TEXT_DIGIT_6_HEIGHT (15) +__flash uint16_t game_text_digit_6[] = { + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000 +}; + +// 11x15 +#define GAME_TEXT_DIGIT_7_WIDTH (11) +#define GAME_TEXT_DIGIT_7_HEIGHT (15) +__flash uint16_t game_text_digit_7[] = { + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 +}; + +// 10x15 +#define GAME_TEXT_DIGIT_8_WIDTH (10) +#define GAME_TEXT_DIGIT_8_HEIGHT (15) +__flash uint16_t game_text_digit_8[] = { + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000 +}; + +// 12x15 +#define GAME_TEXT_DIGIT_9_WIDTH (12) +#define GAME_TEXT_DIGIT_9_HEIGHT (15) +__flash uint16_t game_text_digit_9[] = { + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000 +}; + +#define GAME_TEXT_DIGIT_PTR(digit) ((digit) == 0 ? game_text_digit_0 \ + : (digit) == 1 ? game_text_digit_1 \ + : (digit) == 2 ? game_text_digit_2 \ + : (digit) == 3 ? game_text_digit_3 \ + : (digit) == 4 ? game_text_digit_4 \ + : (digit) == 5 ? game_text_digit_5 \ + : (digit) == 6 ? game_text_digit_6 \ + : (digit) == 7 ? game_text_digit_7 \ + : (digit) == 8 ? game_text_digit_8 \ + : (digit) == 9 ? game_text_digit_9 \ + : NULL) + +#define GAME_TEXT_DIGIT_WIDTH(digit) ((digit) == 0 ? GAME_TEXT_DIGIT_0_WIDTH \ + : (digit) == 1 ? GAME_TEXT_DIGIT_1_WIDTH \ + : (digit) == 2 ? GAME_TEXT_DIGIT_2_WIDTH \ + : (digit) == 3 ? GAME_TEXT_DIGIT_3_WIDTH \ + : (digit) == 4 ? GAME_TEXT_DIGIT_4_WIDTH \ + : (digit) == 5 ? GAME_TEXT_DIGIT_5_WIDTH \ + : (digit) == 6 ? GAME_TEXT_DIGIT_6_WIDTH \ + : (digit) == 7 ? GAME_TEXT_DIGIT_7_WIDTH \ + : (digit) == 8 ? GAME_TEXT_DIGIT_8_WIDTH \ + : (digit) == 9 ? GAME_TEXT_DIGIT_9_WIDTH \ + : GAME_TEXT_DIGIT_0_WIDTH) + +// All the same. +#define GAME_TEXT_DIGITS_HEIGHT (15) + +// 4x15 +#define GAME_TEXT_DIGIT_COLON_WIDTH (4) +#define GAME_TEXT_DIGIT_COLON_HEIGHT (15) +__flash uint16_t game_text_colon[] = { + 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000 +}; + +// 67x11 +#define GAME_TEXT_MOVES_WIDTH (67) +#define GAME_TEXT_MOVES_HEIGHT (11) +__flash uint16_t game_text_moves[] = { + 0xffff, 0xffff, 0xffff, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000 +}; + +#endif // EXAMPLES_MAX32655_DEMO_2048_ARM_INC_CLEAR_SANS_BOLD_GAME_TEXT_H_ diff --git a/Examples/MAX32655/Demo_2048/ARM/inc/clear_sans_bold_scaled_block_digits.h b/Examples/MAX32655/Demo_2048/ARM/inc/clear_sans_bold_scaled_block_digits.h new file mode 100644 index 00000000000..e4fb4d691de --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/inc/clear_sans_bold_scaled_block_digits.h @@ -0,0 +1,363 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32655_DEMO_2048_ARM_INC_CLEAR_SANS_BOLD_SCALED_BLOCK_DIGITS_H_ +#define EXAMPLES_MAX32655_DEMO_2048_ARM_INC_CLEAR_SANS_BOLD_SCALED_BLOCK_DIGITS_H_ + +// clang-format off + +/* **** Includes **** */ + +#include +#include "mxc_device.h" + +/* **** Definitions **** */ + +// NOTE: This definition is used instead of 'const' to place these files into Flash to remove +// the "discard 'const' qualifer from pointer target type" build warning. +#define __flash __attribute__((section(".flash_code_section"))) + +/* **** Function Prototypes **** */ + +// These digits were custom made in Microsoft Paint and scaled down to fit the blocks. +// Dimensions are taken from bitmaps. + +// 14x22 +#define BLOCK_2_DIGIT_PX_WIDTH (14) +#define BLOCK_2_DIGIT_PX_HEIGHT (22) +__flash uint16_t block_2[] = { + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff +}; + +// 17x22 +#define BLOCK_4_DIGIT_PX_WIDTH (17) +#define BLOCK_4_DIGIT_PX_HEIGHT (22) +__flash uint16_t block_4[] = { + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000 +}; + +// 14x22 +#define BLOCK_8_DIGIT_PX_WIDTH (14) +#define BLOCK_8_DIGIT_PX_HEIGHT (22) +__flash uint16_t block_8[] = { + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000 +}; + +// 26x22 +#define BLOCK_16_DIGIT_PX_WIDTH (26) +#define BLOCK_16_DIGIT_PX_HEIGHT (22) +__flash uint16_t block_16[] = { + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000 +}; + +// 30x22 +#define BLOCK_32_DIGIT_PX_WIDTH (30) +#define BLOCK_32_DIGIT_PX_HEIGHT (22) +__flash uint16_t block_32[] = { + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff +}; + +// 34x22 +#define BLOCK_64_DIGIT_PX_WIDTH (34) +#define BLOCK_64_DIGIT_PX_HEIGHT (22) +__flash uint16_t block_64[] = { + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000 +}; + +// 40x19 +#define BLOCK_128_DIGIT_PX_WIDTH (40) +#define BLOCK_128_DIGIT_PX_HEIGHT (19) +__flash uint16_t block_128[] = { + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xdfff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xbef7, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xdfff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xdfff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000 +}; + +// 45x19 +#define BLOCK_256_DIGIT_PX_WIDTH (45) +#define BLOCK_256_DIGIT_PX_HEIGHT (19) +__flash uint16_t block_256[] = { + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000 +}; + +// 39x19 +#define BLOCK_512_DIGIT_PX_WIDTH (39) +#define BLOCK_512_DIGIT_PX_HEIGHT (19) +__flash uint16_t block_512[] = { + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff +}; + +// 41x13 +#define BLOCK_1024_DIGIT_PX_WIDTH (41) +#define BLOCK_1024_DIGIT_PX_HEIGHT (13) +__flash uint16_t block_1024[] = { + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000 +}; + +// 44x13 +#define BLOCK_2048_DIGIT_PX_WIDTH (44) +#define BLOCK_2048_DIGIT_PX_HEIGHT (13) +__flash uint16_t block_2048[] = { + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000 +}; + + +// Easier way to get these measurements. +// Default is 2. +#define BLOCK_DIGIT_PX_WIDTH(block) ((block) == 2 ? BLOCK_2_DIGIT_PX_WIDTH \ + : (block) == 4 ? BLOCK_4_DIGIT_PX_WIDTH \ + : (block) == 8 ? BLOCK_8_DIGIT_PX_WIDTH \ + : (block) == 16 ? BLOCK_16_DIGIT_PX_WIDTH \ + : (block) == 32 ? BLOCK_32_DIGIT_PX_WIDTH \ + : (block) == 64 ? BLOCK_64_DIGIT_PX_WIDTH \ + : (block) == 128 ? BLOCK_128_DIGIT_PX_WIDTH \ + : (block) == 256 ? BLOCK_256_DIGIT_PX_WIDTH \ + : (block) == 512 ? BLOCK_512_DIGIT_PX_WIDTH \ + : (block) == 1024 ? BLOCK_1024_DIGIT_PX_WIDTH \ + : (block) == 2048 ? BLOCK_2048_DIGIT_PX_WIDTH \ + : BLOCK_2_DIGIT_PX_WIDTH) + +#define BLOCK_DIGIT_PX_HEIGHT(block) ((block) == 2 ? BLOCK_2_DIGIT_PX_HEIGHT \ + : (block) == 4 ? BLOCK_4_DIGIT_PX_HEIGHT \ + : (block) == 8 ? BLOCK_8_DIGIT_PX_HEIGHT \ + : (block) == 16 ? BLOCK_16_DIGIT_PX_HEIGHT \ + : (block) == 32 ? BLOCK_32_DIGIT_PX_HEIGHT \ + : (block) == 64 ? BLOCK_64_DIGIT_PX_HEIGHT \ + : (block) == 128 ? BLOCK_128_DIGIT_PX_HEIGHT \ + : (block) == 256 ? BLOCK_256_DIGIT_PX_HEIGHT \ + : (block) == 512 ? BLOCK_512_DIGIT_PX_HEIGHT \ + : (block) == 1024 ? BLOCK_1024_DIGIT_PX_HEIGHT \ + : (block) == 2048 ? BLOCK_2048_DIGIT_PX_HEIGHT \ + : BLOCK_2_DIGIT_PX_HEIGHT) + +#define BLOCK_DIGIT_PTR(block) ((block) == 2 ? block_2 \ + : (block) == 4 ? block_4 \ + : (block) == 8 ? block_8 \ + : (block) == 16 ? block_16 \ + : (block) == 32 ? block_32 \ + : (block) == 64 ? block_64 \ + : (block) == 128 ? block_128 \ + : (block) == 256 ? block_256 \ + : (block) == 512 ? block_512 \ + : (block) == 1024 ? block_1024 \ + : (block) == 2048 ? block_2048 \ + : NULL) + +#endif // EXAMPLES_MAX32655_DEMO_2048_ARM_INC_CLEAR_SANS_BOLD_SCALED_BLOCK_DIGITS_H_ diff --git a/Examples/MAX32655/Demo_2048/ARM/inc/end_game_text.h b/Examples/MAX32655/Demo_2048/ARM/inc/end_game_text.h new file mode 100644 index 00000000000..577fc34df1f --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/inc/end_game_text.h @@ -0,0 +1,300 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32655_DEMO_2048_ARM_INC_END_GAME_TEXT_H_ +#define EXAMPLES_MAX32655_DEMO_2048_ARM_INC_END_GAME_TEXT_H_ + +// clang-format off + +/* **** Includes **** */ + +#include +#include "mxc_device.h" + +/* **** Definitions **** */ + +// NOTE: This definition is used instead of 'const' to place these files into Flash to remove +// the "discard 'const' qualifer from pointer target type" build warning. +#define __flash __attribute__((section(".flash_code_section"))) + +/* **** Function Prototypes **** */ + +// These digits were custom made in Microsoft Paint and scaled down to fit the blocks. +// Dimensions are taken from bitmaps. + +// 206x124 +#define YOU_WIN_BOX_WIDTH (206) +#define YOU_WIN_BOX_HEIGHT (124) +__flash uint16_t you_win[] = { + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0xffff, 0xffff, 0x18c6, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x18c6, 0x18c6, 0x18c6, 0x0000, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x18c6, 0x18c6, 0x18c6, 0x0000, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x18c6, 0x18c6, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18c6, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18c6, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x18c6, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x18c6, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0842, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0842, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703 +}; + +// 206x124 +#define GAME_OVER_BOX_WIDTH (206) +#define GAME_OVER_BOX_HEIGHT (124) +__flash uint16_t game_over[] = { + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0842, 0x0000, 0x0842, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0x1084, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0842, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0842, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x1084, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x1084, 0x0842, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x1084, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0842, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0x0000, 0x0000, 0x0842, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0842, 0x0000, 0x0000, 0x0842, 0xffff, 0x1084, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0842, 0x0842, 0x1084, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, + 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703, 0x1703 +}; + +#endif // EXAMPLES_MAX32655_DEMO_2048_ARM_INC_END_GAME_TEXT_H_ diff --git a/Examples/MAX32655/Demo_2048/ARM/inc/graphics.h b/Examples/MAX32655/Demo_2048/ARM/inc/graphics.h new file mode 100644 index 00000000000..c53bb87bf89 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/inc/graphics.h @@ -0,0 +1,279 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32655_DEMO_2048_ARM_INC_GRAPHICS_H_ +#define EXAMPLES_MAX32655_DEMO_2048_ARM_INC_GRAPHICS_H_ + +/* **** Includes **** */ + +#include + +/* **** Definitions **** */ + +#define SCREEN_ORIENTATION (SCREEN_ROTATE) + +// Will be different from actual screen dimensions depending on screen orientation +#define SCREEN_WIDTH (320) +#define SCREEN_HEIGHT (240) + +// TODO(SW): Automatically calculate these sizes based on screen dimensions. +// Set the dimensions of all the models. +#define GRID_OFFSET_X (80) +#define GRID_OFFSET_Y (0) +#define GRID_LENGTH (224) +#define GRID_SPACING (8) // spacing between edge of "screen to grid". + +#define BLOCK_LENGTH (51) +#define BLOCK_SPACING (4) // spacing between edge of "grid to block" and "block to block". + +#define RADIUS_FOR_CORNERS (3) + +#define CFS_LOGO_OFFSET_X (4) +#define CFS_LOGO_OFFSET_Y (0) + +#define GAME_LOGO_OFFSET_X (CFS_LOGO_OFFSET_X + (GRID_OFFSET_X - BLOCK_LENGTH) / 2) +#define GAME_LOGO_OFFSET_Y (80) + +// Position settings for timer. +#define TIME_OFFSET_Y (215) +#define TIME_COLON_OFFSET_X (CFS_LOGO_OFFSET_X + (GRID_OFFSET_X / 2) - 1) +#define TIME_DIGIT_WIDTH (15) // Max width of digit is 15 pixels +#define TIME_DIGIT3_OFFSET_X(width) \ + ((TIME_COLON_OFFSET_X - (TIME_DIGIT_WIDTH * 2)) + ((TIME_DIGIT_WIDTH / 2) - (width / 2) - 1) - \ + (GAME_TEXT_DIGIT_COLON_WIDTH / 2)) +#define TIME_DIGIT2_OFFSET_X(width) \ + ((TIME_COLON_OFFSET_X - (TIME_DIGIT_WIDTH * 1)) + ((TIME_DIGIT_WIDTH / 2) - (width / 2) - 1) - \ + (GAME_TEXT_DIGIT_COLON_WIDTH / 2)) +#define TIME_DIGIT1_OFFSET_X(width) \ + ((TIME_COLON_OFFSET_X + (GAME_TEXT_DIGIT_COLON_WIDTH * 2)) + \ + ((TIME_DIGIT_WIDTH / 2) - (width / 2)) - 1) +#define TIME_DIGIT0_OFFSET_X(width) \ + ((TIME_COLON_OFFSET_X + (GAME_TEXT_DIGIT_COLON_WIDTH * 2) + TIME_DIGIT_WIDTH) + \ + ((TIME_DIGIT_WIDTH / 2) - (width / 2)) - 1) + +// Position settings for moves counter. +#define MOVES_DIGITS_OFFSET_Y (160) +#define MOVES_TEXT_OFFSET_Y \ + (MOVES_DIGITS_OFFSET_Y + GAME_TEXT_DIGITS_HEIGHT + \ + 4) // 4 seemed to be appropriate number of pxiels for spacing. +#define MOVES_DIGIT_WIDTH (15) // Max width of digit is 15 pixels. +#define MOVES_DIGITS_OFFSET_X ((GRID_OFFSET_X / 2) - MOVES_DIGIT_WIDTH - (MOVES_DIGIT_WIDTH / 2)) +#define MOVES_TEXT_OFFSET_X ((GRID_OFFSET_X / 2) - (GAME_TEXT_MOVES_WIDTH / 2) + 4) +#define MOVES_DIGIT3_OFFSET_X(width) \ + (MOVES_DIGITS_OFFSET_X + (MOVES_DIGIT_WIDTH * 0) + (MOVES_DIGIT_WIDTH / 2) - (width - 2)) +#define MOVES_DIGIT2_OFFSET_X(width) \ + (MOVES_DIGITS_OFFSET_X + (MOVES_DIGIT_WIDTH * 1) + (MOVES_DIGIT_WIDTH / 2) - (width - 2)) +#define MOVES_DIGIT1_OFFSET_X(width) \ + (MOVES_DIGITS_OFFSET_X + (MOVES_DIGIT_WIDTH * 2) + (MOVES_DIGIT_WIDTH / 2) - (width - 2)) +#define MOVES_DIGIT0_OFFSET_X(width) \ + (MOVES_DIGITS_OFFSET_X + (MOVES_DIGIT_WIDTH * 3) + (MOVES_DIGIT_WIDTH / 2) - (width - 2)) + +// Position settings for Game Over and You Win boxes, +#define GAME_OVER_BOX_OFFSET_X \ + (GRID_OFFSET_X + ((SCREEN_WIDTH - GRID_OFFSET_X) / 2) - (GAME_OVER_BOX_WIDTH / 2)) +#define GAME_OVER_BOX_OFFSET_Y \ + (GRID_OFFSET_Y + ((SCREEN_HEIGHT - GRID_OFFSET_Y) / 2) - (GAME_OVER_BOX_HEIGHT / 2)) +#define YOU_WIN_BOX_OFFSET_X \ + (GRID_OFFSET_X + ((SCREEN_WIDTH - GRID_OFFSET_X) / 2) - (YOU_WIN_BOX_WIDTH / 2)) +#define YOU_WIN_BOX_OFFSET_Y \ + (GRID_OFFSET_Y + ((SCREEN_HEIGHT - GRID_OFFSET_Y) / 2) - (YOU_WIN_BOX_HEIGHT / 2)) + +// Colors 16-bit RGB565. +#define RGB565_WHITE (0xFFFF) +#define RGB565_BLACK (0x0000) +#define RGB565_DARK_GRAY (0x3084) +#define RGB565_LIGHT_GRAY (0x5AEB) + +// Block colors (2-2048) are taken from original game: https://github.com/gabrielecirulli/2048?tab=readme-ov-file +// Open-source under MIT License. +#define RGB565_BLOCK_2 (0xEF3B) +#define RGB565_BLOCK_4 (0xEF19) +#define RGB565_BLOCK_8 (0xF58F) +#define RGB565_BLOCK_16 (0xF4AC) +#define RGB565_BLOCK_32 (0xF3EB) +#define RGB565_BLOCK_64 (0xF2E7) +#define RGB565_BLOCK_128 (0xEE6E) +#define RGB565_BLOCK_256 (0xEE6C) +#define RGB565_BLOCK_512 (0xEE4A) +#define RGB565_BLOCK_1024 (0xEE27) +#define RGB565_BLOCK_2048 (0xEE05) + +// Unused, but left here if anyone wants to expand features. +#define RGB565_BLOCK_4096 (0xFDF7) +#define RGB565_BLOCK_8192 (0xF38E) +#define RGB565_BLOCK_16384 (0xFC58) +#define RGB565_BLOCK_32768 (0xB43C) +#define RGB565_BLOCK_65536 (0x8BF9) +#define RGB565_BLOCK_131072 (0x6C3C) + +// For my non-American English Speakers :) +#define RGB565_DARK_GREY RGB565_DARK_GRAY +#define RGB565_LIGHT_GREY RGB565_LIGHT_GRAY + +// Formatted Colors +#define FORMAT_RGB565_TO_PACKET(RGB) (0x01000100 | ((RGB & 0x00FF) << 16) | ((RGB & 0xFF00) >> 8)) + +// 'F_' prefix stands for "formatted into packets". +#define F_BACKGROUND_COLOR FORMAT_RGB565_TO_PACKET(RGB565_WHITE) +#define F_GRID_COLOR FORMAT_RGB565_TO_PACKET(RGB565_DARK_GRAY) +#define F_EMPTY_BLOCK_COLOR FORMAT_RGB565_TO_PACKET(RGB565_LIGHT_GRAY) + +#define RGB_BLOCK_COLOR(block) \ + ((block) == 2 ? RGB565_BLOCK_2 : \ + (block) == 4 ? RGB565_BLOCK_4 : \ + (block) == 8 ? RGB565_BLOCK_8 : \ + (block) == 16 ? RGB565_BLOCK_16 : \ + (block) == 32 ? RGB565_BLOCK_32 : \ + (block) == 64 ? RGB565_BLOCK_64 : \ + (block) == 128 ? RGB565_BLOCK_128 : \ + (block) == 256 ? RGB565_BLOCK_256 : \ + (block) == 512 ? RGB565_BLOCK_512 : \ + (block) == 1024 ? RGB565_BLOCK_1024 : \ + (block) == 2048 ? RGB565_BLOCK_2048 : \ + BLOCK_2_DIGIT_PX_HEIGHT) + +#define FORMATTED_RGB_BLOCK_COLOR(block) FORMAT_RGB565_TO_PACKET(RGB_BLOCK_COLOR(block)) + +/** + * These enums help keep track of what blocks were erased, + * combined, or didn't move to help optimize and select + * the animation of for the display. + * IMPORTANT: Sync these commands with the RISCV core. + */ +typedef enum { EMPTY = 0, ERASE = 1, COMBINE = 2, UNMOVED = 3 } block_state_t; + +/** + * These enums help keep track of the game state. + * IMPORTANT: Sync these commands with the RISCV core. + */ +typedef enum { + IN_PROGRESS = 0, + GAME_OVER = 1, + WINNER = 2, +} game_state_t; + +/* **** Function Prototypes **** */ + +/** + * This enum is used to keep track of which direction the blocks will slide to + * for the graphics. + * IMPORTANT: Sync these directions with the RISCV core. + */ +typedef enum { + GRAPHICS_SLIDE_DIR_UP = 0, + GRAPHICS_SLIDE_DIR_DOWN = 1, + GRAPHICS_SLIDE_DIR_LEFT = 2, + GRAPHICS_SLIDE_DIR_RIGHT = 3, +} graphics_slide_direction_t; + +/* **** Function Prototypes **** */ + +/** + * @brief Initializes the Graphics of the 2048 Game Demo. + * + * @return Success/Fail, see \ref MXC_Error_Codes for a list of return codes. + */ +int Graphics_Init(void); + +/** + * @brief Draw the new block (2 or 4) spawn animation on the grid. This + * function runs when the existing grid has finished updating and + * a new block needs to be drawn. + * + * @param row Row number (indexed 0). + * @param col Column number (indexed 0). + * @param block_2_4 Pass in 2 for Block 2 spawn, 4 for Block 4 spawn. + */ +void Graphics_AddNewBlock(int row, int col, int block_2_4); + +/** + * @brief Draws a block on the grid (no animation). This function is + * is mainly used for re-drawing existing blocks when they're moved. + * + * @param row Row number (indexed 0). + * @param col Column number (indexed 0). + * @param value Value of block to draw on grid. + */ +void Graphics_AddBlock(int row, int col, int value); + +/** + * @brief Draws a new combined block (including blow-up/shrink-down animation). + * + * @param row Row number (indexed 0). + * @param col Column number (indexed 0). + * @param new_value Value of combined block to draw on grid. + */ +void Graphics_CombineSingleBlock(int row, int col, int new_value); + +/** + * @brief Draws all blocks that were combined. This function not only draws the combined blocks, + * but also draws the blow-up/shrink-down animation. This function should be called + * after all the blocks that moved to their final locations (Graphics_AddBlock()) + * have been drawn to display. + * + * @param grid Pointer to main 2048 grid (2-D array) which holds the current positions + * of all valid blocks. + * @param grid_state Pointer to grid state (2-D array) which holds the state of the blocks that + * needs to combined. + */ +void Graphics_CombineBlocks(uint32_t grid[4][4], block_state_t grid_state[4][4]); + +/** + * @brief Erases all moving blocks from the grid. This function is used before + * drawing the blocks that moved to their final location. + * + * @param grid_state Pointer to grid (2-D array) which holds the state of the blocks that + * needs to be erased because they're moving. + * @param direction Direction that the blocks are moving to. + */ +void Graphics_EraseBlocks(block_state_t grid_state[4][4], graphics_slide_direction_t direction); + +/** + * @brief Erases the the block from the grid. This function is mainly used + * when blocks are moving which need to be erased, then redrawned. + * + * @param row Row number (indexed 0). + * @param col Column number (indexed 0). + */ +void Graphics_EraseSingleBlock(int row, int col); + +/** + * @brief Update the timer on the display. + * + * @param total_seconds The current total second value of RTC. + */ +void Graphics_SetTime(uint32_t total_seconds); + +/** + * @brief Update the moves counter on the display. + * + * @param moves_count The number of moves that have been executed. + */ +void Graphics_UpdateMovesCount(uint32_t moves_count); + +/** + * @brief Draws the "game over" box popup when game is finished. + */ +void Graphics_DisplayGameOver(void); + +/** + * @brief Draws the "you win" box popup when game is finished. + */ +void Graphics_DisplayYouWin(void); + +#endif // EXAMPLES_MAX32655_DEMO_2048_ARM_INC_GRAPHICS_H_ diff --git a/Examples/MAX32655/Demo_2048/ARM/inc/ipc_defines.h b/Examples/MAX32655/Demo_2048/ARM/inc/ipc_defines.h new file mode 100644 index 00000000000..b3b3ed1bb93 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/inc/ipc_defines.h @@ -0,0 +1,61 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32655_DEMO_2048_ARM_INC_IPC_DEFINES_H_ +#define EXAMPLES_MAX32655_DEMO_2048_ARM_INC_IPC_DEFINES_H_ + +/* **** Includes **** */ + +#include + +/* **** Definitions **** */ + +// These should match with the RISC-V core's copy of ipc_defines.h + +/// Semaphores +// Should never reach here +#if (MAILBOX_SIZE == 0) +#error "Mailbox size is 0." +#endif + +// Keep track for Semaphore peripheral. +#define SEMA_IDX_ARM (0) +#define SEMA_IDX_RISCV (1) + +#define MAILBOX_OVERHEAD (2 * sizeof(uint16_t)) +#define MAILBOX_PAYLOAD_LEN (MAILBOX_SIZE - MAILBOX_OVERHEAD) +typedef struct { + uint16_t readLocation; + uint16_t writeLocation; +#if (MAILBOX_SIZE == 0) + uint8_t payload[1]; +#else + uint8_t payload[MAILBOX_PAYLOAD_LEN]; +#endif +} mxcSemaBox_t; + +#define MAILBOX_MAIN_GRID_IDX (0) // Main grid indices are from 0 to (16 blocks * 4 bytes) - 1. +#define MAILBOX_MAIN_GRID_STATE_IDX \ + (4 * 16) // Indices are from (4 bytes * 16) to ((4 bytes * 16) + (1 byte * 16))) +#define MAILBOX_KEYPRESS_IDX ((4 * 16) + (1 * 16)) // All indices before are for the main grids. +#define MAILBOX_IF_BLOCK_MOVED_IDX (MAILBOX_KEYPRESS_IDX + 1) +#define MAILBOX_NEW_BLOCK_LOCATION_IDX (MAILBOX_IF_BLOCK_MOVED_IDX + 1) +#define MAILBOX_GAME_STATE_IDX (MAILBOX_NEW_BLOCK_LOCATION_IDX + 1) +#define MAILBOX_MOVES_COUNT_IDX (MAILBOX_GAME_STATE_IDX + 1) + +#endif // EXAMPLES_MAX32655_DEMO_2048_ARM_INC_IPC_DEFINES_H_ diff --git a/Examples/MAX32655/Demo_2048/ARM/main.c b/Examples/MAX32655/Demo_2048/ARM/main.c new file mode 100644 index 00000000000..c2b3d97000f --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/main.c @@ -0,0 +1,355 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief ARM Core portion of the 2048 Game. + * @details + */ + +/* **** Includes **** */ +#include +#include +#include + +// MSDK-provided Drivers +#include "mxc_delay.h" +#include "mxc_device.h" +#include "mxc_sys.h" +#include "sema.h" +#include "led.h" +#include "uart.h" +#include "rtc.h" + +// Application Libraries +#include "graphics.h" +#include "ipc_defines.h" + +/* **** Definitions **** */ + +#if DEV_MODE_TRACE +#define PRINT(...) printf(__VA_ARGS__) +#else +// Don't print anything +#define PRINT(...) +#endif + +// Match the Console's baud rate to what the controller will be set to +// for the RISC-V as they share the same port. +#define RISCV_CONTROLLER_BAUD (115200) + +/* **** Globals **** */ +// Defined in sema_reva.c +extern mxcSemaBox_t *mxcSemaBox0; // ARM writes, RISCV reads +extern mxcSemaBox_t *mxcSemaBox1; // ARM reads, RISCV writes + +// Rename boxes for readability. +// Imagine like real mailboxes, owner (core) sends mail (keypress) in their mailbox. +#define SEMA_RISCV_MAILBOX mxcSemaBox0 +#define SEMA_ARM_MAILBOX mxcSemaBox1 + +uint32_t ARM_GRID_COPY[4][4] = { 0 }; +block_state_t ARM_GRID_COPY_STATE[4][4] = { 0 }; + +uint32_t MOVES_COUNT = 0; + +/* **** Functions **** */ + +void ReceiveGridFromRISCVCore(void) +{ + int i = MAILBOX_MAIN_GRID_IDX; + + // Grid state. + for (int row = 0; row < 4; row++) { + for (int col = 0; col < 4; col++) { + ARM_GRID_COPY[row][col] = SEMA_ARM_MAILBOX->payload[i] << (8 * 0); + ARM_GRID_COPY[row][col] += SEMA_ARM_MAILBOX->payload[i + 1] << (8 * 1); + ARM_GRID_COPY[row][col] += SEMA_ARM_MAILBOX->payload[i + 2] << (8 * 2); + ARM_GRID_COPY[row][col] += SEMA_ARM_MAILBOX->payload[i + 3] << (8 * 3); + + i += 4; + } + } + + // Grid status (unmoved/delete/combine). + i = MAILBOX_MAIN_GRID_STATE_IDX; + for (int row = 0; row < 4; row++) { + for (int col = 0; col < 4; col++) { + ARM_GRID_COPY_STATE[row][col] = SEMA_ARM_MAILBOX->payload[i] << (8 * 0); + + i++; + } + } +} + +graphics_slide_direction_t ReceiveDirectionFromRISCVCore(void) +{ + // Add more direction keys here. + switch (SEMA_ARM_MAILBOX->payload[MAILBOX_KEYPRESS_IDX]) { + // UP + case 'w': + return GRAPHICS_SLIDE_DIR_UP; + + // DOWN + case 's': + return GRAPHICS_SLIDE_DIR_DOWN; + + // LEFT + case 'a': + return GRAPHICS_SLIDE_DIR_LEFT; + + // RIGHT + case 'd': + return GRAPHICS_SLIDE_DIR_RIGHT; + + default: + return -1; + } +} + +bool ReceiveNewBlockLocationFromRISCVCore(uint16_t *row, uint16_t *col) +{ + uint8_t new_block_added = SEMA_ARM_MAILBOX->payload[MAILBOX_IF_BLOCK_MOVED_IDX]; + if (new_block_added) { // true + *row = (uint16_t)(SEMA_ARM_MAILBOX->payload[MAILBOX_NEW_BLOCK_LOCATION_IDX] / 4); + *col = (uint16_t)(SEMA_ARM_MAILBOX->payload[MAILBOX_NEW_BLOCK_LOCATION_IDX] % 4); + } else { + *row = 0xFFFF; + *col = 0xFFFF; + } + + return new_block_added; +} + +game_state_t ReceiveGameStateFromRISCVCore(void) +{ + return SEMA_ARM_MAILBOX->payload[MAILBOX_GAME_STATE_IDX]; +} + +uint32_t ReceiveMovesCountFromRISCVCore(void) +{ + uint32_t moves_count = 0; + moves_count = SEMA_ARM_MAILBOX->payload[MAILBOX_MOVES_COUNT_IDX] << (8 * 0); + moves_count += SEMA_ARM_MAILBOX->payload[MAILBOX_MOVES_COUNT_IDX + 1] << (8 * 1); + moves_count += SEMA_ARM_MAILBOX->payload[MAILBOX_MOVES_COUNT_IDX + 2] << (8 * 2); + moves_count += SEMA_ARM_MAILBOX->payload[MAILBOX_MOVES_COUNT_IDX + 3] << (8 * 3); + return moves_count; +} + +// ***************************************************************************** +int main(void) +{ + int error; + uint16_t new_block_row = 0xFFFF, new_block_col = 0xFFFF; + graphics_slide_direction_t direction; + game_state_t game_state; + + // System Initialization: + // - Use IPO for System Clock for fastest speed. (Done in SystemInit) + // - Enable Internal Cache. (Done in SystemInit) + + // Speed up console UART to match player controller baud rate which have shared ports + // (PC Keyboard via Console UART). + error = MXC_UART_Init(MXC_UART_GET_UART(CONSOLE_UART), RISCV_CONTROLLER_BAUD, MXC_UART_APB_CLK); + if (error != E_NO_ERROR) { + PRINT("ARM: Error speeding up baud rate: %d\n", error); + LED_On(LED_RED); + while (1) {} + } + + PRINT("\n\n*******************************************************************************\n"); + + // ARM Initialization. + PRINT("ARM: Starting ARM Initialization.\n\n"); + + // Enable ISO clock for RISC-V. + MXC_SYS_ClockSourceEnable(MXC_SYS_CLOCK_ISO); + + // Enable RISCV JTAG debugger. + MXC_GPIO_Config(&gpio_cfg_rv_jtag); + + // Prepare ARM semaphore. + MXC_SEMA_Init(); + + // Check status of ARM semaphore. + error = MXC_SEMA_CheckSema(SEMA_IDX_ARM); + if (error != E_NO_ERROR) { + PRINT("ARM: Semaphore for ARM core is busy: %d\n", error); + LED_On(LED_RED); + while (1) {} + } + + error = MXC_SEMA_GetSema(SEMA_IDX_ARM); + if (error != E_NO_ERROR) { + PRINT("ARM: Semaphore is busy - with previous value: %d\n\n", + MXC_SEMA->semaphores[SEMA_IDX_ARM]); + LED_On(LED_RED); + while (1) {} + } else { + PRINT("ARM: Semaphore is not busy - with previous value: %d\n\n", + MXC_SEMA->semaphores[SEMA_IDX_ARM]); + } + + // Backup Delay for 1 second before starting RISCV core. + MXC_Delay(MXC_DELAY_SEC(1)); + + PRINT("ARM: Starting RISC-V core and handing off major UART0 Control to RISC-V.\n\n"); + + // Start the RISCV core. + MXC_SYS_RISCVRun(); + + // Wait the RISC-V core to finish startup (when it frees ARM semaphore). + while (MXC_SEMA_CheckSema(SEMA_IDX_ARM) != E_NO_ERROR) {} + MXC_SEMA_GetSema(SEMA_IDX_ARM); + + // Initialize mailboxes between ARM and RISCV cores. + MXC_SEMA_InitBoxes(); + + // Signal RISCV core to run. + MXC_SEMA_FreeSema(SEMA_IDX_RISCV); + + // Initialize RTC. + if (MXC_RTC_Init(0, 0) != E_NO_ERROR) { + PRINT("ARM: Error initializing RTC: %d\n", error); + LED_On(LED_RED); + while (1) {} + } + + error = Graphics_Init(); + if (error != E_NO_ERROR) { + PRINT("ARM: Error initializing graphics: %d\n", error); + LED_On(LED_RED); + while (1) {} + } + + // Wait for Game logic to finish initializing on RISCV. + while (MXC_SEMA_CheckSema(SEMA_IDX_ARM) != E_NO_ERROR) {} + MXC_SEMA_GetSema(SEMA_IDX_ARM); + + // Get starting grid to keep ARM and RISCV grid copies in sync. + ReceiveGridFromRISCVCore(); + + ReceiveNewBlockLocationFromRISCVCore(&new_block_row, &new_block_col); + + game_state = ReceiveGameStateFromRISCVCore(); + if (game_state != IN_PROGRESS) { + PRINT("ARM: Error starting game.\n"); + LED_On(LED_RED); + while (1) {} + } + + Graphics_AddNewBlock(new_block_row, new_block_col, ARM_GRID_COPY[new_block_row][new_block_col]); + + // Signal RISC-V to start waiting for keypresses. + MXC_SEMA_FreeSema(SEMA_IDX_RISCV); + + // Start timer. + if (MXC_RTC_Start() != E_NO_ERROR) { + PRINT("ARM: Error starting timer: %d\n", error); + LED_On(LED_RED); + while (1) {} + } + + uint32_t prev_seconds = 0; + uint32_t seconds = 0; + int prev_moves_count = MOVES_COUNT; // Should start as 0. + while (1) { + // Update timer. + MXC_RTC_GetSeconds(&seconds); + if (prev_seconds != seconds) { + Graphics_SetTime(seconds); + prev_seconds = seconds; + } + + // Update grid when RISCV signals ARM it's ready. + if (MXC_SEMA_CheckSema(SEMA_IDX_ARM) == E_NO_ERROR) { + MXC_SEMA_GetSema(SEMA_IDX_ARM); + + // Get the updated grid then display. + ReceiveGridFromRISCVCore(); + + direction = ReceiveDirectionFromRISCVCore(); + + // Erase blocks that are moving before drawing theem at their final location. + Graphics_EraseBlocks(ARM_GRID_COPY_STATE, direction); + + // Pre-set these values as invalid locations. + new_block_row = 0xFFFF, new_block_col = 0xFFFF; + bool new_block_added; + // If blocks moved, Add new block after all the grid updated. + new_block_added = ReceiveNewBlockLocationFromRISCVCore(&new_block_row, &new_block_col); + + // Increment moves counter if blocks moved. + MOVES_COUNT = ReceiveMovesCountFromRISCVCore(); + if (prev_moves_count != MOVES_COUNT) { + Graphics_UpdateMovesCount(MOVES_COUNT); + prev_moves_count = MOVES_COUNT; + } + + // Add new blocks. + for (int row = 0; row < 4; row++) { + for (int col = 0; col < 4; col++) { + if ((ARM_GRID_COPY[row][col]) != 0 && + (ARM_GRID_COPY_STATE[row][col] != UNMOVED) && + (ARM_GRID_COPY_STATE[row][col] != COMBINE)) { + // Don't draw newly spawned block. + // new_block_row and new_block_col will be set to 0xFFFF for invalid + // location if new block was not added. + if ((row != new_block_row) || (col != new_block_col)) { + Graphics_AddBlock(row, col, ARM_GRID_COPY[row][col]); + } + } + } + } + + // Add combined blocks. + Graphics_CombineBlocks(ARM_GRID_COPY, ARM_GRID_COPY_STATE); + + // Add new block with spawn animation. + if (new_block_added == true) { + Graphics_AddNewBlock(new_block_row, new_block_col, + ARM_GRID_COPY[new_block_row][new_block_col]); + } + + game_state = ReceiveGameStateFromRISCVCore(); + // Check if game is finished. + if (game_state == WINNER) { + PRINT("ARM: Congratulations, you win!\n"); + PRINT("ARM: Ending game.\n"); + + // Give some time for user to look at grid before drawing the popup. + MXC_Delay(MXC_DELAY_MSEC(750)); + Graphics_DisplayYouWin(); + + while (1) {} + } else if (game_state == GAME_OVER) { + PRINT("ARM: Game Over. Nice try! Better luck next time.\n"); + PRINT("ARM: Ending game.\n"); + + // Give some time for user to look at grid before drawing the popup. + MXC_Delay(MXC_DELAY_MSEC(750)); + Graphics_DisplayGameOver(); + + while (1) {} + } + + // Signal RISC-V Core that it's ready for the next grid state. + MXC_SEMA_FreeSema(SEMA_IDX_RISCV); + } + } +} diff --git a/Examples/MAX32655/Demo_2048/ARM/project.mk b/Examples/MAX32655/Demo_2048/ARM/project.mk new file mode 100644 index 00000000000..0c8806ec85b --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/project.mk @@ -0,0 +1,30 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Add your config here! + +# Load and start the RISCV core +RISCV_LOAD=1 + +# Directory for RISCV code +RISCV_APP=../RISCV + +IPATH += ./inc +VPATH += ./src + +DEV_MODE_TRACE = 1 +ifeq ($(DEV_MODE_TRACE), 1) +PROJ_CFLAGS += -DDEV_MODE_TRACE=1 +endif + +MAILBOX_SIZE = 226 + +ifeq ($(BOARD),FTHR_Apps_P1) +$(error ERR_NOTSUPPORTED: This example requires a TFT display, therefore it's not supported on the MAX32650FTHR) +endif diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/all_imgs.c b/Examples/MAX32655/Demo_2048/ARM/resources/all_imgs.c new file mode 100644 index 00000000000..d054ad552ca --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/resources/all_imgs.c @@ -0,0 +1,115971 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +__attribute__((section(".bin_storage_img"))) __attribute__((__used__)) +const unsigned char imgs_arr[] = { + /** + * Header + */ + 0x18, + 0x00, + 0x00, + 0x00, + 0x1D, + 0x04, + 0x00, + 0x00, + 0x16, + 0x0A, + 0x00, + 0x00, + 0x01, + 0x00, + 0x00, + 0x00, + 0x04, + 0x00, + 0x00, + 0x00, + 0x04, + 0x00, + 0x00, + 0x00, + + /** + * Palette + */ + 0x01, + 0x1D, + 0x00, + 0x00, + 0x00, + 0xFF, + 0xFF, + 0xFF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x9B, + 0xA5, + 0x18, + 0x00, + 0x70, + 0x73, + 0x71, + 0x00, + 0x33, + 0x35, + 0x3B, + 0x00, + 0x20, + 0xE8, + 0xD9, + 0x00, + 0x03, + 0x02, + 0xD5, + 0x00, + 0x00, + 0xA9, + 0x00, + 0x00, + 0x6F, + 0x6E, + 0x7A, + 0x00, + 0xFF, + 0xFD, + 0xFF, + 0x00, + 0x76, + 0x75, + 0x76, + 0x00, + 0x95, + 0x94, + 0x95, + 0x00, + 0x6A, + 0x66, + 0x69, + 0x00, + 0x7A, + 0x76, + 0x78, + 0x00, + 0x76, + 0x72, + 0x74, + 0x00, + 0x75, + 0x71, + 0x73, + 0x00, + 0x71, + 0x6F, + 0x6F, + 0x00, + 0x76, + 0x75, + 0x75, + 0x00, + 0x75, + 0x74, + 0x74, + 0x00, + 0x74, + 0x73, + 0x73, + 0x00, + 0x73, + 0x72, + 0x72, + 0x00, + 0x72, + 0x71, + 0x71, + 0x00, + 0x91, + 0x90, + 0x90, + 0x00, + 0x86, + 0x85, + 0x85, + 0x00, + 0x67, + 0x65, + 0x64, + 0x00, + 0x63, + 0x61, + 0x60, + 0x00, + 0x70, + 0x6E, + 0x6D, + 0x00, + 0x6A, + 0x68, + 0x66, + 0x00, + 0x77, + 0x76, + 0x75, + 0x00, + 0x71, + 0x70, + 0x6F, + 0x00, + 0x6E, + 0x6D, + 0x6C, + 0x00, + 0x6D, + 0x6C, + 0x6B, + 0x00, + 0x6C, + 0x6B, + 0x6A, + 0x00, + 0x90, + 0x8F, + 0x8E, + 0x00, + 0x88, + 0x87, + 0x86, + 0x00, + 0x77, + 0x74, + 0x70, + 0x00, + 0x76, + 0x73, + 0x6F, + 0x00, + 0x75, + 0x72, + 0x6E, + 0x00, + 0x4F, + 0x4D, + 0x4A, + 0x00, + 0x5A, + 0x58, + 0x55, + 0x00, + 0x58, + 0x56, + 0x53, + 0x00, + 0x56, + 0x54, + 0x51, + 0x00, + 0x3F, + 0x3D, + 0x39, + 0x00, + 0x44, + 0x42, + 0x3E, + 0x00, + 0x47, + 0x45, + 0x41, + 0x00, + 0x4C, + 0x4A, + 0x46, + 0x00, + 0x4B, + 0x49, + 0x45, + 0x00, + 0x4A, + 0x48, + 0x44, + 0x00, + 0x4E, + 0x4C, + 0x48, + 0x00, + 0x4D, + 0x4B, + 0x47, + 0x00, + 0x6B, + 0x6A, + 0x68, + 0x00, + 0x68, + 0x67, + 0x65, + 0x00, + 0x66, + 0x65, + 0x63, + 0x00, + 0x64, + 0x63, + 0x61, + 0x00, + 0x74, + 0x73, + 0x71, + 0x00, + 0x73, + 0x72, + 0x70, + 0x00, + 0x42, + 0x40, + 0x3B, + 0x00, + 0x41, + 0x3F, + 0x3A, + 0x00, + 0x43, + 0x41, + 0x3C, + 0x00, + 0x46, + 0x44, + 0x3F, + 0x00, + 0x5D, + 0x5C, + 0x59, + 0x00, + 0x5B, + 0x5A, + 0x57, + 0x00, + 0x61, + 0x60, + 0x5D, + 0x00, + 0x5F, + 0x5E, + 0x5B, + 0x00, + 0x76, + 0x75, + 0x72, + 0x00, + 0x72, + 0x71, + 0x6E, + 0x00, + 0x53, + 0x52, + 0x4E, + 0x00, + 0x51, + 0x50, + 0x4C, + 0x00, + 0x79, + 0x78, + 0x74, + 0x00, + 0x48, + 0x47, + 0x42, + 0x00, + 0xFD, + 0xFC, + 0xF7, + 0x00, + 0x77, + 0x76, + 0x6B, + 0x00, + 0x80, + 0x7F, + 0x71, + 0x00, + 0x9D, + 0xA0, + 0x19, + 0x00, + 0x93, + 0x95, + 0x1E, + 0x00, + 0xA3, + 0xA6, + 0x25, + 0x00, + 0xF9, + 0xF9, + 0xED, + 0x00, + 0x76, + 0x76, + 0x73, + 0x00, + 0x79, + 0x79, + 0x77, + 0x00, + 0x89, + 0x89, + 0x87, + 0x00, + 0x81, + 0x81, + 0x7F, + 0x00, + 0x4C, + 0x4C, + 0x4B, + 0x00, + 0x4A, + 0x4A, + 0x49, + 0x00, + 0xFE, + 0xFE, + 0xFC, + 0x00, + 0xFF, + 0xFF, + 0xFE, + 0x00, + 0xE2, + 0xE2, + 0xE1, + 0x00, + 0xC2, + 0xC2, + 0xC1, + 0x00, + 0xB7, + 0xB7, + 0xB6, + 0x00, + 0xAE, + 0xAE, + 0xAD, + 0x00, + 0xA7, + 0xA7, + 0xA6, + 0x00, + 0xA1, + 0xA1, + 0xA0, + 0x00, + 0x9C, + 0x9C, + 0x9B, + 0x00, + 0x9A, + 0x9A, + 0x99, + 0x00, + 0x97, + 0x97, + 0x96, + 0x00, + 0x8E, + 0x8E, + 0x8D, + 0x00, + 0x8D, + 0x8D, + 0x8C, + 0x00, + 0x8A, + 0x8A, + 0x89, + 0x00, + 0x83, + 0x83, + 0x82, + 0x00, + 0xA6, + 0xAE, + 0x00, + 0x00, + 0xA5, + 0xAB, + 0x00, + 0x00, + 0xA2, + 0xA6, + 0x00, + 0x00, + 0xA0, + 0xA4, + 0x00, + 0x00, + 0x95, + 0x9C, + 0x01, + 0x00, + 0xA6, + 0xAA, + 0x0A, + 0x00, + 0x9F, + 0xA6, + 0x0B, + 0x00, + 0x89, + 0x8F, + 0x0E, + 0x00, + 0xA9, + 0xAD, + 0x13, + 0x00, + 0xAD, + 0xB1, + 0x1D, + 0x00, + 0x9C, + 0xA2, + 0x1F, + 0x00, + 0xB1, + 0xB5, + 0x25, + 0x00, + 0xBD, + 0xC3, + 0x41, + 0x00, + 0xB5, + 0xB9, + 0x44, + 0x00, + 0xC3, + 0xC8, + 0x59, + 0x00, + 0x83, + 0x85, + 0x4B, + 0x00, + 0xCB, + 0xCF, + 0x79, + 0x00, + 0x8B, + 0x8D, + 0x56, + 0x00, + 0x7D, + 0x7E, + 0x59, + 0x00, + 0xDB, + 0xDE, + 0x9D, + 0x00, + 0xE4, + 0xE6, + 0xB7, + 0x00, + 0xA9, + 0xB2, + 0x00, + 0x00, + 0xAF, + 0xB8, + 0x14, + 0x00, + 0x9D, + 0xA6, + 0x13, + 0x00, + 0x9C, + 0xA5, + 0x15, + 0x00, + 0x9B, + 0xA5, + 0x16, + 0x00, + 0x99, + 0xA2, + 0x17, + 0x00, + 0x9A, + 0xA3, + 0x19, + 0x00, + 0x9E, + 0xA7, + 0x1D, + 0x00, + 0xA0, + 0xA9, + 0x20, + 0x00, + 0x74, + 0x7A, + 0x1A, + 0x00, + 0xB5, + 0xBC, + 0x2B, + 0x00, + 0xAE, + 0xB4, + 0x36, + 0x00, + 0x9A, + 0xA0, + 0x31, + 0x00, + 0x93, + 0x97, + 0x46, + 0x00, + 0x97, + 0x9A, + 0x67, + 0x00, + 0xA8, + 0xAB, + 0x77, + 0x00, + 0x84, + 0x86, + 0x65, + 0x00, + 0xEC, + 0xEE, + 0xCC, + 0x00, + 0xF4, + 0xF5, + 0xE0, + 0x00, + 0x9C, + 0xA6, + 0x18, + 0x00, + 0x91, + 0x99, + 0x2C, + 0x00, + 0x60, + 0x65, + 0x24, + 0x00, + 0x6A, + 0x6C, + 0x56, + 0x00, + 0x77, + 0x79, + 0x62, + 0x00, + 0x9C, + 0xAB, + 0x15, + 0x00, + 0xA5, + 0xB5, + 0x2B, + 0x00, + 0x9E, + 0xAD, + 0x2C, + 0x00, + 0x8A, + 0x93, + 0x37, + 0x00, + 0x7C, + 0x84, + 0x3D, + 0x00, + 0x51, + 0x55, + 0x2F, + 0x00, + 0x4C, + 0x4F, + 0x2F, + 0x00, + 0x9C, + 0x9F, + 0x81, + 0x00, + 0x8F, + 0xA2, + 0x15, + 0x00, + 0xAF, + 0xC1, + 0x29, + 0x00, + 0xAA, + 0xBC, + 0x2A, + 0x00, + 0xA7, + 0xB8, + 0x2B, + 0x00, + 0xA4, + 0xB5, + 0x2B, + 0x00, + 0xA3, + 0xB3, + 0x2C, + 0x00, + 0x99, + 0xA9, + 0x35, + 0x00, + 0x45, + 0x48, + 0x32, + 0x00, + 0xA6, + 0xBA, + 0x32, + 0x00, + 0xA2, + 0xB5, + 0x33, + 0x00, + 0x9D, + 0xAF, + 0x34, + 0x00, + 0x6A, + 0x72, + 0x40, + 0x00, + 0x65, + 0x6B, + 0x42, + 0x00, + 0x5F, + 0x65, + 0x40, + 0x00, + 0x48, + 0x4C, + 0x31, + 0x00, + 0x58, + 0x5C, + 0x40, + 0x00, + 0x59, + 0x5C, + 0x47, + 0x00, + 0x53, + 0x56, + 0x44, + 0x00, + 0x4F, + 0x51, + 0x45, + 0x00, + 0x53, + 0x55, + 0x49, + 0x00, + 0x41, + 0x44, + 0x34, + 0x00, + 0x76, + 0x7A, + 0x66, + 0x00, + 0x48, + 0x4D, + 0x38, + 0x00, + 0x73, + 0x76, + 0x6B, + 0x00, + 0x4B, + 0x4D, + 0x46, + 0x00, + 0x41, + 0x45, + 0x39, + 0x00, + 0x73, + 0x76, + 0x6D, + 0x00, + 0x7C, + 0x7D, + 0x7B, + 0x00, + 0xFC, + 0xFD, + 0xFB, + 0x00, + 0x3A, + 0x3D, + 0x39, + 0x00, + 0x6D, + 0x71, + 0x6C, + 0x00, + 0x56, + 0x59, + 0x56, + 0x00, + 0x75, + 0x78, + 0x75, + 0x00, + 0xCC, + 0xCD, + 0xCC, + 0x00, + 0x50, + 0xCD, + 0x59, + 0x00, + 0x32, + 0xC6, + 0x3E, + 0x00, + 0x81, + 0xDC, + 0x89, + 0x00, + 0xA8, + 0xE8, + 0xAE, + 0x00, + 0xC3, + 0xEF, + 0xC7, + 0x00, + 0x02, + 0xC0, + 0x19, + 0x00, + 0xE9, + 0xF9, + 0xEB, + 0x00, + 0x02, + 0xD4, + 0x2E, + 0x00, + 0x6A, + 0x6D, + 0x6B, + 0x00, + 0x74, + 0x77, + 0x75, + 0x00, + 0x73, + 0x76, + 0x74, + 0x00, + 0x71, + 0x74, + 0x72, + 0x00, + 0x6C, + 0x6F, + 0x6D, + 0x00, + 0xFC, + 0xFF, + 0xFE, + 0x00, + 0x26, + 0xE2, + 0xD3, + 0x00, + 0x2E, + 0xD8, + 0xC9, + 0x00, + 0x34, + 0xD0, + 0xC1, + 0x00, + 0x57, + 0xE1, + 0xD5, + 0x00, + 0x88, + 0xE9, + 0xE1, + 0x00, + 0xBC, + 0xF3, + 0xEE, + 0x00, + 0xE0, + 0xF9, + 0xF7, + 0x00, + 0xF1, + 0xFD, + 0xFC, + 0x00, + 0x1F, + 0xE9, + 0xDA, + 0x00, + 0x63, + 0x65, + 0x65, + 0x00, + 0x51, + 0x52, + 0x52, + 0x00, + 0x55, + 0x56, + 0x56, + 0x00, + 0x4B, + 0x4D, + 0x4E, + 0x00, + 0x36, + 0x38, + 0x3A, + 0x00, + 0x42, + 0x44, + 0x47, + 0x00, + 0x6F, + 0x71, + 0x75, + 0x00, + 0x4E, + 0x4F, + 0x51, + 0x00, + 0x37, + 0x39, + 0x3E, + 0x00, + 0x3A, + 0x3C, + 0x41, + 0x00, + 0x34, + 0x36, + 0x3C, + 0x00, + 0x3F, + 0x40, + 0x44, + 0x00, + 0x46, + 0x47, + 0x4B, + 0x00, + 0x44, + 0x45, + 0x49, + 0x00, + 0x5A, + 0x5B, + 0x5F, + 0x00, + 0x79, + 0x7A, + 0x7F, + 0x00, + 0xF9, + 0xFA, + 0xFF, + 0x00, + 0x69, + 0x6A, + 0x70, + 0x00, + 0x12, + 0x25, + 0xF6, + 0x00, + 0x0D, + 0x1A, + 0xEB, + 0x00, + 0xEE, + 0xEF, + 0xFD, + 0x00, + 0x09, + 0x0F, + 0xE1, + 0x00, + 0x27, + 0x2A, + 0xE1, + 0x00, + 0x38, + 0x3A, + 0xE3, + 0x00, + 0x48, + 0x4A, + 0xE4, + 0x00, + 0x72, + 0x73, + 0xEA, + 0x00, + 0x7F, + 0x80, + 0xEC, + 0x00, + 0xA6, + 0xA6, + 0xF1, + 0x00, + 0xBD, + 0xBD, + 0xF5, + 0x00, + 0xD8, + 0xD8, + 0xF9, + 0x00, + 0x79, + 0x79, + 0x84, + 0x00, + 0x75, + 0x75, + 0x7E, + 0x00, + 0x97, + 0x97, + 0x9E, + 0x00, + 0x49, + 0x49, + 0x4C, + 0x00, + 0x58, + 0x58, + 0x59, + 0x00, + 0xFA, + 0xFA, + 0xFA, + 0x00, + 0xF7, + 0xF7, + 0xF7, + 0x00, + 0xF3, + 0xF3, + 0xF3, + 0x00, + 0xEA, + 0xEA, + 0xEA, + 0x00, + 0xD8, + 0xD8, + 0xD8, + 0x00, + 0x98, + 0x98, + 0x98, + 0x00, + 0x92, + 0x92, + 0x92, + 0x00, + 0x91, + 0x91, + 0x91, + 0x00, + 0x76, + 0x76, + 0x76, + 0x00, + 0x4D, + 0x4D, + 0x4D, + 0x00, + 0x4B, + 0x4B, + 0x4B, + 0x00, + 0x4A, + 0x4A, + 0x4A, + 0x00, + 0x49, + 0x49, + 0x49, + 0x00, + + /* + Fonts + */ + 0x04, + 0x2E, + 0x04, + 0x00, + 0x00, + 0xA8, + 0x05, + 0x00, + 0x00, + 0x22, + 0x07, + 0x00, + 0x00, + 0x9C, + 0x08, + 0x00, + 0x00, + 0x5E, + 0x00, + 0x00, + 0x00, + 0x01, + 0x21, + 0x01, + 0x00, + 0x02, + 0x22, + 0x09, + 0x00, + 0x0B, + 0x23, + 0x15, + 0x00, + 0x09, + 0x24, + 0x1F, + 0x00, + 0x10, + 0x25, + 0x30, + 0x00, + 0x0F, + 0x26, + 0x40, + 0x00, + 0x02, + 0x27, + 0x43, + 0x00, + 0x06, + 0x28, + 0x4A, + 0x00, + 0x07, + 0x29, + 0x52, + 0x00, + 0x06, + 0x2A, + 0x59, + 0x00, + 0x0B, + 0x2B, + 0x65, + 0x00, + 0x05, + 0x2C, + 0x6B, + 0x00, + 0x06, + 0x2D, + 0x72, + 0x00, + 0x02, + 0x2E, + 0x75, + 0x00, + 0x09, + 0x2F, + 0x7F, + 0x00, + 0x0B, + 0x30, + 0x8B, + 0x00, + 0x05, + 0x31, + 0x91, + 0x00, + 0x0A, + 0x32, + 0x9C, + 0x00, + 0x0B, + 0x33, + 0xA8, + 0x00, + 0x0B, + 0x34, + 0xB4, + 0x00, + 0x0C, + 0x35, + 0xC1, + 0x00, + 0x0B, + 0x36, + 0xCD, + 0x00, + 0x09, + 0x37, + 0xD7, + 0x00, + 0x0A, + 0x38, + 0xE2, + 0x00, + 0x0B, + 0x39, + 0xEE, + 0x00, + 0x02, + 0x3A, + 0xF1, + 0x00, + 0x04, + 0x3B, + 0xF6, + 0x00, + 0x0B, + 0x3C, + 0x02, + 0x01, + 0x0B, + 0x3D, + 0x0E, + 0x01, + 0x0B, + 0x3E, + 0x1A, + 0x01, + 0x0A, + 0x3F, + 0x25, + 0x01, + 0x10, + 0x40, + 0x36, + 0x01, + 0x10, + 0x41, + 0x47, + 0x01, + 0x0A, + 0x42, + 0x52, + 0x01, + 0x10, + 0x43, + 0x63, + 0x01, + 0x0D, + 0x44, + 0x71, + 0x01, + 0x09, + 0x45, + 0x7B, + 0x01, + 0x09, + 0x46, + 0x85, + 0x01, + 0x11, + 0x47, + 0x97, + 0x01, + 0x0C, + 0x48, + 0xA4, + 0x01, + 0x02, + 0x49, + 0xA7, + 0x01, + 0x09, + 0x4A, + 0xB1, + 0x01, + 0x0B, + 0x4B, + 0xBD, + 0x01, + 0x09, + 0x4C, + 0xC7, + 0x01, + 0x11, + 0x4D, + 0xD9, + 0x01, + 0x0D, + 0x4E, + 0xE7, + 0x01, + 0x11, + 0x4F, + 0xF9, + 0x01, + 0x0B, + 0x50, + 0x05, + 0x02, + 0x11, + 0x51, + 0x17, + 0x02, + 0x0B, + 0x52, + 0x23, + 0x02, + 0x0A, + 0x53, + 0x2E, + 0x02, + 0x09, + 0x54, + 0x38, + 0x02, + 0x0B, + 0x55, + 0x44, + 0x02, + 0x0F, + 0x56, + 0x54, + 0x02, + 0x15, + 0x57, + 0x6A, + 0x02, + 0x0D, + 0x58, + 0x78, + 0x02, + 0x0E, + 0x59, + 0x87, + 0x02, + 0x0A, + 0x5A, + 0x92, + 0x02, + 0x04, + 0x5B, + 0x97, + 0x02, + 0x09, + 0x5C, + 0xA1, + 0x02, + 0x05, + 0x5D, + 0xA7, + 0x02, + 0x0D, + 0x5E, + 0xB5, + 0x02, + 0x0B, + 0x5F, + 0xC1, + 0x02, + 0x06, + 0x60, + 0xC8, + 0x02, + 0x0D, + 0x61, + 0xD6, + 0x02, + 0x0C, + 0x62, + 0xE3, + 0x02, + 0x0D, + 0x63, + 0xF1, + 0x02, + 0x0D, + 0x64, + 0xFF, + 0x02, + 0x0C, + 0x65, + 0x0C, + 0x03, + 0x06, + 0x66, + 0x13, + 0x03, + 0x0C, + 0x67, + 0x20, + 0x03, + 0x0B, + 0x68, + 0x2C, + 0x03, + 0x02, + 0x69, + 0x2F, + 0x03, + 0x05, + 0x6A, + 0x35, + 0x03, + 0x0A, + 0x6B, + 0x40, + 0x03, + 0x02, + 0x6C, + 0x43, + 0x03, + 0x12, + 0x6D, + 0x56, + 0x03, + 0x0A, + 0x6E, + 0x61, + 0x03, + 0x0C, + 0x6F, + 0x6E, + 0x03, + 0x0C, + 0x70, + 0x7B, + 0x03, + 0x0D, + 0x71, + 0x89, + 0x03, + 0x05, + 0x72, + 0x8F, + 0x03, + 0x07, + 0x73, + 0x97, + 0x03, + 0x07, + 0x74, + 0x9F, + 0x03, + 0x0A, + 0x75, + 0xAA, + 0x03, + 0x0C, + 0x76, + 0xB7, + 0x03, + 0x12, + 0x77, + 0xCA, + 0x03, + 0x0B, + 0x78, + 0xD6, + 0x03, + 0x0C, + 0x79, + 0xE3, + 0x03, + 0x09, + 0x7A, + 0xED, + 0x03, + 0x06, + 0x7B, + 0xF4, + 0x03, + 0x02, + 0x7C, + 0xF7, + 0x03, + 0x06, + 0x7D, + 0xFE, + 0x03, + 0x0B, + 0x7E, + 0x5E, + 0x01, + 0x00, + 0x00, + 0x01, + 0x21, + 0x01, + 0x00, + 0x02, + 0x22, + 0x09, + 0x00, + 0x0B, + 0x23, + 0x15, + 0x00, + 0x09, + 0x24, + 0x1F, + 0x00, + 0x10, + 0x25, + 0x30, + 0x00, + 0x0F, + 0x26, + 0x40, + 0x00, + 0x02, + 0x27, + 0x43, + 0x00, + 0x06, + 0x28, + 0x4A, + 0x00, + 0x07, + 0x29, + 0x52, + 0x00, + 0x06, + 0x2A, + 0x59, + 0x00, + 0x0B, + 0x2B, + 0x65, + 0x00, + 0x05, + 0x2C, + 0x6B, + 0x00, + 0x06, + 0x2D, + 0x72, + 0x00, + 0x02, + 0x2E, + 0x75, + 0x00, + 0x09, + 0x2F, + 0x7F, + 0x00, + 0x0B, + 0x30, + 0x8B, + 0x00, + 0x05, + 0x31, + 0x91, + 0x00, + 0x0A, + 0x32, + 0x9C, + 0x00, + 0x0B, + 0x33, + 0xA8, + 0x00, + 0x0B, + 0x34, + 0xB4, + 0x00, + 0x0C, + 0x35, + 0xC1, + 0x00, + 0x0B, + 0x36, + 0xCD, + 0x00, + 0x09, + 0x37, + 0xD7, + 0x00, + 0x0A, + 0x38, + 0xE2, + 0x00, + 0x0B, + 0x39, + 0xEE, + 0x00, + 0x02, + 0x3A, + 0xF1, + 0x00, + 0x04, + 0x3B, + 0xF6, + 0x00, + 0x0B, + 0x3C, + 0x02, + 0x01, + 0x0B, + 0x3D, + 0x0E, + 0x01, + 0x0B, + 0x3E, + 0x1A, + 0x01, + 0x0A, + 0x3F, + 0x25, + 0x01, + 0x10, + 0x40, + 0x36, + 0x01, + 0x10, + 0x41, + 0x47, + 0x01, + 0x0A, + 0x42, + 0x52, + 0x01, + 0x10, + 0x43, + 0x63, + 0x01, + 0x0D, + 0x44, + 0x71, + 0x01, + 0x09, + 0x45, + 0x7B, + 0x01, + 0x09, + 0x46, + 0x85, + 0x01, + 0x11, + 0x47, + 0x97, + 0x01, + 0x0C, + 0x48, + 0xA4, + 0x01, + 0x02, + 0x49, + 0xA7, + 0x01, + 0x09, + 0x4A, + 0xB1, + 0x01, + 0x0B, + 0x4B, + 0xBD, + 0x01, + 0x09, + 0x4C, + 0xC7, + 0x01, + 0x11, + 0x4D, + 0xD9, + 0x01, + 0x0D, + 0x4E, + 0xE7, + 0x01, + 0x11, + 0x4F, + 0xF9, + 0x01, + 0x0B, + 0x50, + 0x05, + 0x02, + 0x11, + 0x51, + 0x17, + 0x02, + 0x0B, + 0x52, + 0x23, + 0x02, + 0x0A, + 0x53, + 0x2E, + 0x02, + 0x09, + 0x54, + 0x38, + 0x02, + 0x0B, + 0x55, + 0x44, + 0x02, + 0x0F, + 0x56, + 0x54, + 0x02, + 0x15, + 0x57, + 0x6A, + 0x02, + 0x0D, + 0x58, + 0x78, + 0x02, + 0x0E, + 0x59, + 0x87, + 0x02, + 0x0A, + 0x5A, + 0x92, + 0x02, + 0x04, + 0x5B, + 0x97, + 0x02, + 0x09, + 0x5C, + 0xA1, + 0x02, + 0x05, + 0x5D, + 0xA7, + 0x02, + 0x0D, + 0x5E, + 0xB5, + 0x02, + 0x0B, + 0x5F, + 0xC1, + 0x02, + 0x06, + 0x60, + 0xC8, + 0x02, + 0x0D, + 0x61, + 0xD6, + 0x02, + 0x0C, + 0x62, + 0xE3, + 0x02, + 0x0D, + 0x63, + 0xF1, + 0x02, + 0x0D, + 0x64, + 0xFF, + 0x02, + 0x0C, + 0x65, + 0x0C, + 0x03, + 0x06, + 0x66, + 0x13, + 0x03, + 0x0C, + 0x67, + 0x20, + 0x03, + 0x0B, + 0x68, + 0x2C, + 0x03, + 0x02, + 0x69, + 0x2F, + 0x03, + 0x05, + 0x6A, + 0x35, + 0x03, + 0x0A, + 0x6B, + 0x40, + 0x03, + 0x02, + 0x6C, + 0x43, + 0x03, + 0x12, + 0x6D, + 0x56, + 0x03, + 0x0A, + 0x6E, + 0x61, + 0x03, + 0x0C, + 0x6F, + 0x6E, + 0x03, + 0x0C, + 0x70, + 0x7B, + 0x03, + 0x0D, + 0x71, + 0x89, + 0x03, + 0x05, + 0x72, + 0x8F, + 0x03, + 0x07, + 0x73, + 0x97, + 0x03, + 0x07, + 0x74, + 0x9F, + 0x03, + 0x0A, + 0x75, + 0xAA, + 0x03, + 0x0C, + 0x76, + 0xB7, + 0x03, + 0x12, + 0x77, + 0xCA, + 0x03, + 0x0B, + 0x78, + 0xD6, + 0x03, + 0x0C, + 0x79, + 0xE3, + 0x03, + 0x09, + 0x7A, + 0xED, + 0x03, + 0x06, + 0x7B, + 0xF4, + 0x03, + 0x02, + 0x7C, + 0xF7, + 0x03, + 0x06, + 0x7D, + 0xFE, + 0x03, + 0x0B, + 0x7E, + 0x5E, + 0x02, + 0x00, + 0x00, + 0x01, + 0x21, + 0x01, + 0x00, + 0x02, + 0x22, + 0x09, + 0x00, + 0x0C, + 0x23, + 0x16, + 0x00, + 0x09, + 0x24, + 0x20, + 0x00, + 0x11, + 0x25, + 0x32, + 0x00, + 0x10, + 0x26, + 0x43, + 0x00, + 0x02, + 0x27, + 0x46, + 0x00, + 0x07, + 0x28, + 0x4E, + 0x00, + 0x07, + 0x29, + 0x56, + 0x00, + 0x07, + 0x2A, + 0x5E, + 0x00, + 0x0C, + 0x2B, + 0x6B, + 0x00, + 0x04, + 0x2C, + 0x70, + 0x00, + 0x06, + 0x2D, + 0x77, + 0x00, + 0x02, + 0x2E, + 0x7A, + 0x00, + 0x0A, + 0x2F, + 0x85, + 0x00, + 0x0C, + 0x30, + 0x92, + 0x00, + 0x05, + 0x31, + 0x98, + 0x00, + 0x0B, + 0x32, + 0xA4, + 0x00, + 0x0B, + 0x33, + 0xB0, + 0x00, + 0x0C, + 0x34, + 0xBD, + 0x00, + 0x0C, + 0x35, + 0xCA, + 0x00, + 0x0C, + 0x36, + 0xD7, + 0x00, + 0x0A, + 0x37, + 0xE2, + 0x00, + 0x0B, + 0x38, + 0xEE, + 0x00, + 0x0C, + 0x39, + 0xFB, + 0x00, + 0x02, + 0x3A, + 0xFE, + 0x00, + 0x04, + 0x3B, + 0x03, + 0x01, + 0x0C, + 0x3C, + 0x10, + 0x01, + 0x0C, + 0x3D, + 0x1D, + 0x01, + 0x0C, + 0x3E, + 0x2A, + 0x01, + 0x0B, + 0x3F, + 0x36, + 0x01, + 0x11, + 0x40, + 0x48, + 0x01, + 0x11, + 0x41, + 0x5A, + 0x01, + 0x0B, + 0x42, + 0x66, + 0x01, + 0x11, + 0x43, + 0x78, + 0x01, + 0x0E, + 0x44, + 0x87, + 0x01, + 0x0A, + 0x45, + 0x92, + 0x01, + 0x09, + 0x46, + 0x9C, + 0x01, + 0x12, + 0x47, + 0xAF, + 0x01, + 0x0C, + 0x48, + 0xBC, + 0x01, + 0x02, + 0x49, + 0xBF, + 0x01, + 0x09, + 0x4A, + 0xC9, + 0x01, + 0x0C, + 0x4B, + 0xD6, + 0x01, + 0x09, + 0x4C, + 0xE0, + 0x01, + 0x12, + 0x4D, + 0xF3, + 0x01, + 0x0E, + 0x4E, + 0x02, + 0x02, + 0x12, + 0x4F, + 0x15, + 0x02, + 0x0B, + 0x50, + 0x21, + 0x02, + 0x12, + 0x51, + 0x34, + 0x02, + 0x0C, + 0x52, + 0x41, + 0x02, + 0x0B, + 0x53, + 0x4D, + 0x02, + 0x0A, + 0x54, + 0x58, + 0x02, + 0x0C, + 0x55, + 0x65, + 0x02, + 0x10, + 0x56, + 0x76, + 0x02, + 0x16, + 0x57, + 0x8D, + 0x02, + 0x0E, + 0x58, + 0x9C, + 0x02, + 0x0E, + 0x59, + 0xAB, + 0x02, + 0x0B, + 0x5A, + 0xB7, + 0x02, + 0x05, + 0x5B, + 0xBD, + 0x02, + 0x0A, + 0x5C, + 0xC8, + 0x02, + 0x05, + 0x5D, + 0xCE, + 0x02, + 0x0E, + 0x5E, + 0xDD, + 0x02, + 0x0C, + 0x5F, + 0xEA, + 0x02, + 0x07, + 0x60, + 0xF2, + 0x02, + 0x0E, + 0x61, + 0x01, + 0x03, + 0x0D, + 0x62, + 0x0F, + 0x03, + 0x0E, + 0x63, + 0x1E, + 0x03, + 0x0E, + 0x64, + 0x2D, + 0x03, + 0x0D, + 0x65, + 0x3B, + 0x03, + 0x07, + 0x66, + 0x43, + 0x03, + 0x0D, + 0x67, + 0x51, + 0x03, + 0x0B, + 0x68, + 0x5D, + 0x03, + 0x02, + 0x69, + 0x60, + 0x03, + 0x05, + 0x6A, + 0x66, + 0x03, + 0x0B, + 0x6B, + 0x72, + 0x03, + 0x02, + 0x6C, + 0x75, + 0x03, + 0x13, + 0x6D, + 0x89, + 0x03, + 0x0B, + 0x6E, + 0x95, + 0x03, + 0x0D, + 0x6F, + 0xA3, + 0x03, + 0x0D, + 0x70, + 0xB1, + 0x03, + 0x0D, + 0x71, + 0xBF, + 0x03, + 0x06, + 0x72, + 0xC6, + 0x03, + 0x08, + 0x73, + 0xCF, + 0x03, + 0x07, + 0x74, + 0xD7, + 0x03, + 0x0B, + 0x75, + 0xE3, + 0x03, + 0x0D, + 0x76, + 0xF1, + 0x03, + 0x14, + 0x77, + 0x06, + 0x04, + 0x0B, + 0x78, + 0x12, + 0x04, + 0x0D, + 0x79, + 0x20, + 0x04, + 0x09, + 0x7A, + 0x2A, + 0x04, + 0x06, + 0x7B, + 0x31, + 0x04, + 0x02, + 0x7C, + 0x34, + 0x04, + 0x06, + 0x7D, + 0x3B, + 0x04, + 0x0C, + 0x7E, + 0x5E, + 0x03, + 0x00, + 0x00, + 0x01, + 0x21, + 0x01, + 0x00, + 0x02, + 0x22, + 0x09, + 0x00, + 0x0C, + 0x23, + 0x16, + 0x00, + 0x09, + 0x24, + 0x20, + 0x00, + 0x11, + 0x25, + 0x32, + 0x00, + 0x10, + 0x26, + 0x43, + 0x00, + 0x02, + 0x27, + 0x46, + 0x00, + 0x07, + 0x28, + 0x4E, + 0x00, + 0x07, + 0x29, + 0x56, + 0x00, + 0x07, + 0x2A, + 0x5E, + 0x00, + 0x0C, + 0x2B, + 0x6B, + 0x00, + 0x04, + 0x2C, + 0x70, + 0x00, + 0x06, + 0x2D, + 0x77, + 0x00, + 0x02, + 0x2E, + 0x7A, + 0x00, + 0x0A, + 0x2F, + 0x85, + 0x00, + 0x0C, + 0x30, + 0x92, + 0x00, + 0x05, + 0x31, + 0x98, + 0x00, + 0x0B, + 0x32, + 0xA4, + 0x00, + 0x0B, + 0x33, + 0xB0, + 0x00, + 0x0C, + 0x34, + 0xBD, + 0x00, + 0x0C, + 0x35, + 0xCA, + 0x00, + 0x0C, + 0x36, + 0xD7, + 0x00, + 0x0A, + 0x37, + 0xE2, + 0x00, + 0x0B, + 0x38, + 0xEE, + 0x00, + 0x0C, + 0x39, + 0xFB, + 0x00, + 0x02, + 0x3A, + 0xFE, + 0x00, + 0x04, + 0x3B, + 0x03, + 0x01, + 0x0C, + 0x3C, + 0x10, + 0x01, + 0x0C, + 0x3D, + 0x1D, + 0x01, + 0x0C, + 0x3E, + 0x2A, + 0x01, + 0x0B, + 0x3F, + 0x36, + 0x01, + 0x11, + 0x40, + 0x48, + 0x01, + 0x11, + 0x41, + 0x5A, + 0x01, + 0x0B, + 0x42, + 0x66, + 0x01, + 0x11, + 0x43, + 0x78, + 0x01, + 0x0E, + 0x44, + 0x87, + 0x01, + 0x0A, + 0x45, + 0x92, + 0x01, + 0x09, + 0x46, + 0x9C, + 0x01, + 0x12, + 0x47, + 0xAF, + 0x01, + 0x0C, + 0x48, + 0xBC, + 0x01, + 0x02, + 0x49, + 0xBF, + 0x01, + 0x09, + 0x4A, + 0xC9, + 0x01, + 0x0C, + 0x4B, + 0xD6, + 0x01, + 0x09, + 0x4C, + 0xE0, + 0x01, + 0x12, + 0x4D, + 0xF3, + 0x01, + 0x0E, + 0x4E, + 0x02, + 0x02, + 0x12, + 0x4F, + 0x15, + 0x02, + 0x0B, + 0x50, + 0x21, + 0x02, + 0x12, + 0x51, + 0x34, + 0x02, + 0x0C, + 0x52, + 0x41, + 0x02, + 0x0B, + 0x53, + 0x4D, + 0x02, + 0x0A, + 0x54, + 0x58, + 0x02, + 0x0C, + 0x55, + 0x65, + 0x02, + 0x10, + 0x56, + 0x76, + 0x02, + 0x16, + 0x57, + 0x8D, + 0x02, + 0x0E, + 0x58, + 0x9C, + 0x02, + 0x0E, + 0x59, + 0xAB, + 0x02, + 0x0B, + 0x5A, + 0xB7, + 0x02, + 0x05, + 0x5B, + 0xBD, + 0x02, + 0x0A, + 0x5C, + 0xC8, + 0x02, + 0x05, + 0x5D, + 0xCE, + 0x02, + 0x0E, + 0x5E, + 0xDD, + 0x02, + 0x0C, + 0x5F, + 0xEA, + 0x02, + 0x07, + 0x60, + 0xF2, + 0x02, + 0x0E, + 0x61, + 0x01, + 0x03, + 0x0D, + 0x62, + 0x0F, + 0x03, + 0x0E, + 0x63, + 0x1E, + 0x03, + 0x0E, + 0x64, + 0x2D, + 0x03, + 0x0D, + 0x65, + 0x3B, + 0x03, + 0x07, + 0x66, + 0x43, + 0x03, + 0x0D, + 0x67, + 0x51, + 0x03, + 0x0B, + 0x68, + 0x5D, + 0x03, + 0x02, + 0x69, + 0x60, + 0x03, + 0x05, + 0x6A, + 0x66, + 0x03, + 0x0B, + 0x6B, + 0x72, + 0x03, + 0x02, + 0x6C, + 0x75, + 0x03, + 0x13, + 0x6D, + 0x89, + 0x03, + 0x0B, + 0x6E, + 0x95, + 0x03, + 0x0D, + 0x6F, + 0xA3, + 0x03, + 0x0D, + 0x70, + 0xB1, + 0x03, + 0x0D, + 0x71, + 0xBF, + 0x03, + 0x06, + 0x72, + 0xC6, + 0x03, + 0x08, + 0x73, + 0xCF, + 0x03, + 0x07, + 0x74, + 0xD7, + 0x03, + 0x0B, + 0x75, + 0xE3, + 0x03, + 0x0D, + 0x76, + 0xF1, + 0x03, + 0x14, + 0x77, + 0x06, + 0x04, + 0x0B, + 0x78, + 0x12, + 0x04, + 0x0D, + 0x79, + 0x20, + 0x04, + 0x09, + 0x7A, + 0x2A, + 0x04, + 0x06, + 0x7B, + 0x31, + 0x04, + 0x02, + 0x7C, + 0x34, + 0x04, + 0x06, + 0x7D, + 0x3B, + 0x04, + 0x0C, + 0x7E, + + /* + Bitmaps + */ + 0x04, + 0x27, + 0x0A, + 0x00, + 0x00, + 0x6F, + 0x73, + 0x00, + 0x00, + 0xB7, + 0xDC, + 0x00, + 0x00, + 0xCB, + 0x50, + 0x01, + 0x00, + 0x0B, + 0x04, + 0x00, + 0x00, + 0x1A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x3A, + 0x69, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xDF, + 0x56, + 0xF7, + 0x56, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x55, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB8, + 0x04, + 0xDF, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5E, + 0x00, + 0x54, + 0xDF, + 0xDA, + 0x04, + 0xDD, + 0xF7, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xF6, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x53, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xF6, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x04, + 0x57, + 0x00, + 0xF4, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFA, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xC6, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xF6, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0xF3, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x53, + 0xD5, + 0x04, + 0x04, + 0x5A, + 0x00, + 0x53, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFA, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x53, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x17, + 0x04, + 0x04, + 0xDD, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF4, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x54, + 0x5B, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xF3, + 0x00, + 0x00, + 0xF3, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x53, + 0x00, + 0x00, + 0x53, + 0x5E, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0xB3, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x54, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xFA, + 0xB3, + 0x00, + 0x54, + 0x00, + 0xF5, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x55, + 0x54, + 0x54, + 0x00, + 0xF6, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xF4, + 0x00, + 0x54, + 0x53, + 0xB8, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xF4, + 0x00, + 0x54, + 0x54, + 0xF7, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x09, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5E, + 0xB3, + 0x00, + 0x00, + 0x53, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0xF4, + 0x00, + 0x00, + 0x54, + 0x54, + 0x55, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0x5E, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0xB3, + 0x56, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xF6, + 0x54, + 0x00, + 0x54, + 0x00, + 0xF3, + 0x59, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x09, + 0xF6, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0xF7, + 0x53, + 0x00, + 0x54, + 0x00, + 0x54, + 0xF6, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xDE, + 0xF3, + 0x00, + 0x54, + 0x53, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xF7, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD5, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x55, + 0x54, + 0x00, + 0x54, + 0x00, + 0xF3, + 0x59, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xB8, + 0xB3, + 0x00, + 0x54, + 0x00, + 0x53, + 0xF7, + 0xDB, + 0xDA, + 0x56, + 0x54, + 0x54, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xF3, + 0x00, + 0x54, + 0x53, + 0xB8, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0xF3, + 0x00, + 0x54, + 0x54, + 0xF7, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xF6, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF4, + 0x04, + 0x04, + 0xDA, + 0x53, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x58, + 0xB3, + 0x00, + 0x54, + 0x00, + 0xF6, + 0xDC, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x57, + 0x53, + 0x00, + 0x00, + 0x53, + 0xB8, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0xB3, + 0x00, + 0x54, + 0x00, + 0xF6, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0xF3, + 0x00, + 0x54, + 0x00, + 0xF6, + 0xDC, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x56, + 0x53, + 0x00, + 0x00, + 0xC6, + 0x56, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB8, + 0xC6, + 0x00, + 0x00, + 0x53, + 0x58, + 0xDA, + 0xF3, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x55, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF1, + 0x00, + 0x54, + 0xDA, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x56, + 0x53, + 0x00, + 0x54, + 0x54, + 0xF7, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x56, + 0xC6, + 0x00, + 0x00, + 0x53, + 0xB8, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0xB3, + 0x00, + 0x54, + 0x00, + 0xF5, + 0xD2, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0xC6, + 0x54, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xB8, + 0x54, + 0x00, + 0x00, + 0xB3, + 0xD2, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x54, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0xC6, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x00, + 0xF7, + 0xF7, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x53, + 0xF7, + 0xF7, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0xDD, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x54, + 0x55, + 0xB8, + 0xF6, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xC6, + 0x00, + 0x00, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x04, + 0x04, + 0xF1, + 0x00, + 0x00, + 0xF5, + 0xB8, + 0xF6, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0x00, + 0x55, + 0xB8, + 0xF3, + 0x00, + 0xC6, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0x00, + 0x55, + 0xB8, + 0xF5, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x54, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xC6, + 0xF7, + 0xF7, + 0x53, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x53, + 0x54, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x57, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xF7, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF7, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x53, + 0x00, + 0x00, + 0xF4, + 0xF7, + 0xB8, + 0x55, + 0x00, + 0x00, + 0x55, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x54, + 0xDA, + 0x04, + 0x00, + 0x53, + 0x56, + 0x56, + 0xB8, + 0x55, + 0x53, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF5, + 0x00, + 0x00, + 0xF4, + 0xF7, + 0xB8, + 0x55, + 0x54, + 0x00, + 0x54, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0x56, + 0x56, + 0xB8, + 0xF7, + 0xF4, + 0x00, + 0x00, + 0xB3, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0xDF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x55, + 0x00, + 0x00, + 0xB3, + 0x55, + 0xB8, + 0xF7, + 0xF4, + 0x00, + 0x00, + 0xF3, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x55, + 0xB8, + 0xB3, + 0x54, + 0xF6, + 0xDA, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x00, + 0xB3, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0xD8, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0xF3, + 0xF7, + 0xB8, + 0x55, + 0x54, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x00, + 0x53, + 0x55, + 0xB8, + 0x55, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xB8, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x54, + 0x00, + 0x55, + 0xB8, + 0xF4, + 0x54, + 0xB3, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x55, + 0xB8, + 0xF5, + 0x00, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xC6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0xF7, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x04, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x53, + 0x00, + 0x54, + 0xF7, + 0xB8, + 0xF6, + 0x00, + 0x00, + 0xEF, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xF7, + 0xF7, + 0xF3, + 0x00, + 0x54, + 0xDC, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xB3, + 0x00, + 0x53, + 0xF7, + 0xB8, + 0xF5, + 0x00, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xB3, + 0x00, + 0x54, + 0x55, + 0xB8, + 0xF6, + 0x00, + 0x00, + 0xD6, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xDB, + 0xC6, + 0x00, + 0xB3, + 0xF7, + 0xF7, + 0xF3, + 0x00, + 0x53, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x54, + 0x00, + 0xF3, + 0xF7, + 0xF7, + 0xF3, + 0x00, + 0xF6, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x54, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0xDD, + 0x54, + 0x00, + 0xB3, + 0xF7, + 0xB8, + 0xF4, + 0x00, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xF7, + 0xF7, + 0xF3, + 0x00, + 0x54, + 0xDD, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xB3, + 0x00, + 0x53, + 0xF7, + 0xB8, + 0xF6, + 0x00, + 0x00, + 0x5D, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xB3, + 0xB8, + 0xF3, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xB3, + 0x00, + 0xB3, + 0xF7, + 0xF7, + 0x54, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xC6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0xB8, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x54, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0xF3, + 0x04, + 0x04, + 0x04, + 0xB3, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0x00, + 0xDF, + 0xDA, + 0xDD, + 0xF3, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xE1, + 0x04, + 0x53, + 0x00, + 0xD9, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x53, + 0x04, + 0x57, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF3, + 0x00, + 0x17, + 0xD3, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF7, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0xF5, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xDB, + 0x54, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0x54, + 0xDA, + 0x04, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x00, + 0xF3, + 0x17, + 0x04, + 0x04, + 0xDE, + 0x00, + 0xF3, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0xF3, + 0x04, + 0x04, + 0xF2, + 0x00, + 0x53, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF7, + 0x04, + 0x04, + 0xD8, + 0x55, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0xF5, + 0x00, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x00, + 0xF6, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF1, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD9, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x55, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x00, + 0xF6, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5C, + 0x00, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x53, + 0x00, + 0xF4, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF7, + 0x00, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0xF3, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0xDC, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x00, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xD4, + 0xF4, + 0x00, + 0xF5, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x54, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x54, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5C, + 0x00, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xF4, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF7, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x54, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF5, + 0x00, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x54, + 0xD8, + 0x04, + 0xDA, + 0x53, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xB3, + 0x00, + 0x21, + 0x04, + 0x04, + 0xDA, + 0x53, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF4, + 0x00, + 0x00, + 0xF6, + 0xDA, + 0xDA, + 0xC6, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x53, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0xD4, + 0x54, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0xD4, + 0x54, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x00, + 0xD9, + 0x04, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x54, + 0xD8, + 0x04, + 0xDA, + 0x53, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF5, + 0x00, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x54, + 0x09, + 0xDA, + 0x04, + 0x04, + 0x54, + 0x54, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x00, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x59, + 0x54, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xC8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFA, + 0x00, + 0xFA, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x54, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xF1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD9, + 0xC6, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0x60, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDE, + 0x04, + 0xF5, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xEF, + 0xF3, + 0x00, + 0x00, + 0xF6, + 0xD3, + 0x04, + 0x04, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x04, + 0x04, + 0xD3, + 0xF6, + 0x00, + 0x00, + 0xF3, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0x53, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x53, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x57, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x54, + 0xDE, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFA, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0xDA, + 0x55, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xC6, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xF3, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0x53, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x54, + 0xDA, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x54, + 0xB8, + 0x04, + 0x57, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF6, + 0x55, + 0x04, + 0x04, + 0x57, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x53, + 0x00, + 0xF6, + 0x04, + 0x56, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFA, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x58, + 0xDA, + 0xF7, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0xB8, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xF7, + 0x04, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x54, + 0xB8, + 0x04, + 0x57, + 0x00, + 0xFA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x16, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5C, + 0x00, + 0xDE, + 0xB8, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0xDB, + 0x00, + 0x57, + 0x04, + 0x04, + 0xB3, + 0xB3, + 0xD7, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD6, + 0xDB, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xDF, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFB, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0xF7, + 0x54, + 0x59, + 0x17, + 0x17, + 0x55, + 0x00, + 0xFA, + 0x17, + 0x17, + 0x04, + 0xF7, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x00, + 0xDC, + 0x54, + 0x54, + 0xDA, + 0x04, + 0x04, + 0xDA, + 0x54, + 0x54, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xEF, + 0x54, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x53, + 0x00, + 0xEF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF7, + 0x04, + 0xB3, + 0x00, + 0xD0, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0x00, + 0xF5, + 0xDD, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x54, + 0xB8, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xD6, + 0xD0, + 0x00, + 0x54, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x59, + 0x54, + 0x00, + 0x00, + 0xF7, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x55, + 0x00, + 0x54, + 0x54, + 0x5B, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xDA, + 0xF7, + 0x00, + 0x00, + 0x04, + 0xDF, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0xD0, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x5D, + 0xDD, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5E, + 0x00, + 0x5E, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x59, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x55, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x50, + 0x00, + 0x58, + 0x04, + 0x53, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x53, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0xD7, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x55, + 0x00, + 0x00, + 0xD2, + 0xD8, + 0xC6, + 0x00, + 0xD3, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD4, + 0x54, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0xF6, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x54, + 0xB8, + 0x04, + 0xF7, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD8, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDB, + 0x55, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x54, + 0x00, + 0xD9, + 0x04, + 0xD9, + 0x00, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x58, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x5E, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xC6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xC6, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xF6, + 0x04, + 0x53, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xC6, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x54, + 0x04, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xC6, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x54, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x53, + 0x04, + 0xDB, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF7, + 0x04, + 0xB3, + 0xF3, + 0x04, + 0xD9, + 0x00, + 0x57, + 0x04, + 0x53, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0x00, + 0x00, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x53, + 0x04, + 0x55, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x54, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xE1, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xD9, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x5A, + 0x59, + 0x53, + 0x00, + 0x17, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x17, + 0x17, + 0x17, + 0xF3, + 0x00, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x53, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xDF, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x55, + 0x04, + 0xDC, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD8, + 0xDF, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x00, + 0x00, + 0x56, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB8, + 0x54, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xC6, + 0xE0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xDB, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDA, + 0x04, + 0xD0, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x5B, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x55, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x04, + 0xF6, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x5E, + 0x00, + 0xB3, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xDF, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xD8, + 0x04, + 0x5B, + 0x54, + 0x17, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0xD7, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x55, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD2, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0xF7, + 0x5C, + 0x5E, + 0x56, + 0xF5, + 0x00, + 0x00, + 0xF6, + 0xD9, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x55, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x55, + 0x00, + 0x5E, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDB, + 0x04, + 0xDD, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xB3, + 0x04, + 0x5C, + 0x54, + 0xDE, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x54, + 0x04, + 0xDF, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xF6, + 0xDA, + 0xF6, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xD8, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xB3, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x56, + 0x00, + 0x00, + 0xFA, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x58, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0xC6, + 0xDD, + 0x04, + 0x57, + 0x00, + 0xD9, + 0x59, + 0x00, + 0xDB, + 0x04, + 0x57, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xB8, + 0x04, + 0xD7, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF1, + 0xF4, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xF7, + 0xDC, + 0x04, + 0xB3, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x54, + 0x00, + 0x00, + 0xF7, + 0xDA, + 0x04, + 0x04, + 0x87, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0xDD, + 0x00, + 0x55, + 0xDD, + 0xDD, + 0xDC, + 0x00, + 0xF7, + 0xDC, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xC6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD9, + 0xDF, + 0x54, + 0x00, + 0x00, + 0x54, + 0x50, + 0x04, + 0x04, + 0x55, + 0x00, + 0xFA, + 0xDA, + 0x04, + 0x04, + 0x5E, + 0x00, + 0x54, + 0x5D, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB3, + 0xC6, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x50, + 0x00, + 0x57, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xFA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF7, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0xC6, + 0x09, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xC6, + 0x53, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xF6, + 0xDE, + 0xF1, + 0x5C, + 0x54, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xDF, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x55, + 0x04, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0x57, + 0x00, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xDC, + 0x00, + 0x55, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0x56, + 0x04, + 0x00, + 0xF3, + 0x17, + 0x17, + 0x17, + 0x50, + 0xD0, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x55, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x54, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xDF, + 0x00, + 0x54, + 0x00, + 0xF3, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xB8, + 0x04, + 0xDB, + 0x00, + 0xB8, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x55, + 0x04, + 0xD8, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x55, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xF7, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x55, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDC, + 0x00, + 0x00, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x00, + 0xF3, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD8, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xB3, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x00, + 0x00, + 0x53, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xDB, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0xD4, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xD6, + 0x00, + 0xF7, + 0x58, + 0x54, + 0x00, + 0x00, + 0xB3, + 0x00, + 0x00, + 0xFA, + 0x04, + 0x04, + 0xFF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x53, + 0x54, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xB8, + 0x04, + 0x04, + 0xD8, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x00, + 0x55, + 0xD8, + 0x59, + 0x00, + 0xC6, + 0xD9, + 0x04, + 0xF3, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xF5, + 0x00, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB3, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x54, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xD6, + 0x04, + 0xF5, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x54, + 0xB8, + 0x04, + 0x5D, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x54, + 0x00, + 0x00, + 0x55, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xF7, + 0x00, + 0x00, + 0x53, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0xC6, + 0x5E, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0xF6, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD3, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0x5C, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF3, + 0x17, + 0x60, + 0x5D, + 0x57, + 0xF6, + 0x00, + 0x53, + 0xD9, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF3, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0xD5, + 0x04, + 0x00, + 0xF3, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0xE1, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xD5, + 0x04, + 0x00, + 0xF3, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x17, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xF1, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x53, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x55, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDB, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0xDB, + 0xDB, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xD2, + 0xEF, + 0x5D, + 0xF7, + 0x00, + 0xC6, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x57, + 0x53, + 0x00, + 0x53, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFA, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x5E, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x54, + 0xB3, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xDF, + 0x04, + 0x04, + 0xF3, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x00, + 0x54, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x00, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x53, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0xF6, + 0x04, + 0x53, + 0x00, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0x00, + 0xC6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xB3, + 0xC6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF7, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x5E, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x55, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xC6, + 0x04, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x53, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xB3, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE0, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0xFA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xC6, + 0x54, + 0xD8, + 0x04, + 0x04, + 0x04, + 0xD2, + 0xF3, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x55, + 0xD3, + 0x04, + 0x04, + 0x58, + 0x00, + 0x00, + 0xC6, + 0x56, + 0xD9, + 0x04, + 0xD8, + 0xB3, + 0xF5, + 0x04, + 0x04, + 0xFF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x54, + 0x04, + 0x04, + 0x04, + 0xF4, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB8, + 0x54, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xDF, + 0xD0, + 0xDA, + 0x04, + 0xF6, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x53, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0xFA, + 0xF7, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xC6, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xF4, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xEF, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xF4, + 0x5A, + 0x5B, + 0xF5, + 0x00, + 0xF5, + 0xDA, + 0x04, + 0xB3, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5C, + 0x00, + 0xD0, + 0x04, + 0x54, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD6, + 0xF3, + 0x00, + 0x00, + 0xF5, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xF6, + 0x00, + 0x00, + 0xF3, + 0xEF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB3, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0xF5, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDA, + 0x04, + 0xD8, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0xDD, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xDA, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x55, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF7, + 0x04, + 0x00, + 0xF5, + 0xDD, + 0xDD, + 0xDD, + 0xD3, + 0xDF, + 0xF6, + 0x54, + 0x54, + 0xDA, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB3, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xF3, + 0x54, + 0x00, + 0x54, + 0x57, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD8, + 0x04, + 0x55, + 0x54, + 0xD8, + 0x04, + 0x04, + 0x56, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0xDB, + 0xB8, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x54, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xEF, + 0x54, + 0xB8, + 0x04, + 0x56, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF3, + 0xF5, + 0x04, + 0x04, + 0x56, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x53, + 0x00, + 0xF6, + 0x04, + 0xB8, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xEF, + 0x00, + 0x00, + 0x04, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x00, + 0x60, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x55, + 0x00, + 0xFA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x57, + 0x04, + 0x00, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x00, + 0x53, + 0x04, + 0xB8, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x54, + 0xB8, + 0x04, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x54, + 0xB8, + 0x04, + 0x56, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0xD9, + 0x04, + 0x04, + 0xDB, + 0xD9, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x58, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x54, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x5C, + 0xDC, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xDA, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xD0, + 0x55, + 0x00, + 0xD0, + 0xD0, + 0xD0, + 0xF5, + 0x00, + 0xD0, + 0xD0, + 0x04, + 0x04, + 0xDB, + 0x54, + 0x00, + 0x00, + 0x55, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0xD2, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD8, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x00, + 0x53, + 0x57, + 0x5D, + 0x55, + 0x54, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xC6, + 0x57, + 0xFA, + 0xF7, + 0x00, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xB8, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xF6, + 0x00, + 0x00, + 0xF3, + 0xE1, + 0x04, + 0x04, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0x04, + 0x04, + 0xE1, + 0xF3, + 0x00, + 0x00, + 0xF5, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x53, + 0x00, + 0xDB, + 0x04, + 0x54, + 0x53, + 0x04, + 0xD6, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x17, + 0x04, + 0xD8, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x54, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0xDD, + 0xDD, + 0xD7, + 0x60, + 0xB3, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x04, + 0x00, + 0xF5, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xD8, + 0x04, + 0x00, + 0xF5, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDB, + 0x04, + 0x04, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0xDD, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x0A, + 0x54, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x57, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD8, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x5D, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x57, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x60, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x54, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x56, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x00, + 0xB8, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF1, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0xD6, + 0x04, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x55, + 0x04, + 0xD8, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x54, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF5, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x54, + 0xD8, + 0x04, + 0xDA, + 0x53, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xB3, + 0x00, + 0x5E, + 0x04, + 0x04, + 0xDA, + 0x53, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF3, + 0x00, + 0x00, + 0xF6, + 0x04, + 0xD8, + 0x54, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x54, + 0x00, + 0x00, + 0x04, + 0x00, + 0x00, + 0xF5, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xDA, + 0xC6, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x53, + 0x00, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xB3, + 0x00, + 0xDD, + 0x04, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xB8, + 0x04, + 0xD8, + 0x54, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x54, + 0xD8, + 0x04, + 0xDA, + 0x54, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF5, + 0x54, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDC, + 0x04, + 0xD8, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0xC6, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x54, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x56, + 0x00, + 0x5E, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x56, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xF6, + 0xD7, + 0xD6, + 0x54, + 0x00, + 0x00, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xF3, + 0xDB, + 0xF7, + 0x00, + 0x54, + 0xD8, + 0x04, + 0xD9, + 0x17, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0xF7, + 0xDC, + 0xDB, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x5A, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xDC, + 0x5E, + 0x54, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0x00, + 0xD8, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0x54, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xF6, + 0xDE, + 0xD7, + 0xF6, + 0x00, + 0x57, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xF7, + 0x00, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0x00, + 0xF7, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF1, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x56, + 0x04, + 0x55, + 0x00, + 0xD5, + 0x04, + 0xF3, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x5C, + 0x00, + 0xF5, + 0x04, + 0xDE, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5E, + 0x00, + 0xD6, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0x53, + 0x04, + 0x04, + 0xF5, + 0x54, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x00, + 0xF4, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xB8, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x54, + 0xE0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x57, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0xDB, + 0x00, + 0x53, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xF6, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD3, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF7, + 0xDA, + 0xF3, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF5, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x53, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x5B, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF7, + 0xDB, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x54, + 0xD9, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x56, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x54, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x54, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x53, + 0x00, + 0x53, + 0xF7, + 0xB8, + 0xF6, + 0x00, + 0x00, + 0xDF, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0x09, + 0xF3, + 0xF7, + 0xF7, + 0xF3, + 0x54, + 0x54, + 0xDD, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x53, + 0x00, + 0x53, + 0xF7, + 0xB8, + 0xF6, + 0x00, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xB3, + 0x54, + 0x53, + 0xF7, + 0xB8, + 0xF6, + 0x00, + 0x00, + 0x59, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xDD, + 0x54, + 0x54, + 0xF4, + 0xF7, + 0xF7, + 0xF3, + 0x54, + 0x54, + 0xD7, + 0x04, + 0x04, + 0x56, + 0x56, + 0x00, + 0x53, + 0x56, + 0x56, + 0x04, + 0x04, + 0xF1, + 0x00, + 0x00, + 0xF3, + 0xF7, + 0xF7, + 0xF3, + 0x00, + 0xF5, + 0xF6, + 0x00, + 0x04, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF7, + 0xB8, + 0xF6, + 0x00, + 0x00, + 0xEF, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xC6, + 0xD4, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xF7, + 0x55, + 0x00, + 0x00, + 0xD6, + 0xF6, + 0x00, + 0xF3, + 0xB8, + 0xF7, + 0x54, + 0x00, + 0x56, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x53, + 0xF7, + 0xF7, + 0x53, + 0x54, + 0xB3, + 0xD8, + 0x04, + 0x04, + 0xDD, + 0x54, + 0x00, + 0xF3, + 0xF7, + 0xF7, + 0xF3, + 0x00, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x09, + 0xF4, + 0xF7, + 0xF7, + 0xB3, + 0x54, + 0x54, + 0xDD, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x53, + 0x00, + 0x53, + 0xF7, + 0xB8, + 0xF6, + 0x00, + 0x00, + 0x5C, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x09, + 0xF4, + 0x58, + 0x04, + 0xD3, + 0x00, + 0x54, + 0xB8, + 0xB3, + 0x00, + 0xD0, + 0x04, + 0x56, + 0x56, + 0x53, + 0x00, + 0x56, + 0x56, + 0x56, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD9, + 0x04, + 0xDF, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x50, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x53, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xDB, + 0x04, + 0x04, + 0xDE, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0xB8, + 0x54, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x00, + 0xF6, + 0x04, + 0xD8, + 0xD8, + 0xD9, + 0x00, + 0x58, + 0xD8, + 0xD8, + 0xD7, + 0x00, + 0x60, + 0xD8, + 0x04, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x5B, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDF, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x55, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0x04, + 0xD8, + 0xDB, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x00, + 0xDB, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0x04, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x56, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x56, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0xF1, + 0x00, + 0xF5, + 0x04, + 0xDB, + 0x54, + 0x54, + 0xB8, + 0x5A, + 0x00, + 0x53, + 0x00, + 0xD8, + 0xF6, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0xF3, + 0x04, + 0xDA, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0xDF, + 0xDB, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x5E, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xF7, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xE1, + 0x09, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x54, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xF4, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xD7, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x5E, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x54, + 0xE1, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x55, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD6, + 0x04, + 0xD6, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xEF, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xDF, + 0x04, + 0xFA, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x58, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xDD, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x57, + 0x53, + 0x00, + 0x00, + 0xC6, + 0xB8, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x58, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xF1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x59, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD7, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB8, + 0x53, + 0x00, + 0x00, + 0xC6, + 0xB8, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF7, + 0x54, + 0x00, + 0x00, + 0xB3, + 0x5C, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xD7, + 0xF5, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0xE1, + 0xB3, + 0x00, + 0x00, + 0xF3, + 0xDE, + 0x04, + 0x04, + 0x57, + 0x54, + 0x00, + 0x00, + 0xB3, + 0x17, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDD, + 0xF5, + 0x00, + 0x00, + 0x53, + 0xB8, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x56, + 0x53, + 0x00, + 0x00, + 0x54, + 0xF7, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x57, + 0x53, + 0x00, + 0x00, + 0xC6, + 0xB8, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x59, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xD2, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x57, + 0x00, + 0x00, + 0x04, + 0x04, + 0xD6, + 0xC6, + 0x00, + 0x54, + 0x5C, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0xF6, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x56, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0x59, + 0x04, + 0xB8, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0xF3, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD9, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x16, + 0xF7, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x55, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x17, + 0x59, + 0x00, + 0x09, + 0x57, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xDF, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xB3, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x54, + 0x04, + 0x04, + 0x5E, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDE, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x56, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x58, + 0x04, + 0xDB, + 0xF4, + 0x00, + 0x00, + 0xF3, + 0xD8, + 0x04, + 0x60, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDC, + 0x5A, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x53, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x54, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xD6, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x5C, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xF7, + 0x54, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x54, + 0x00, + 0xF1, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xF7, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x5B, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0xFA, + 0x04, + 0x04, + 0x04, + 0x53, + 0xC6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFA, + 0x00, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF3, + 0x04, + 0xB3, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x54, + 0x04, + 0x53, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x5B, + 0x00, + 0x5A, + 0x04, + 0x56, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x54, + 0xDA, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x58, + 0x09, + 0xF5, + 0xDA, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x54, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x60, + 0x00, + 0xF6, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x5A, + 0x54, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x57, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x5C, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x55, + 0x04, + 0x04, + 0x53, + 0x00, + 0xD8, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x53, + 0x04, + 0x04, + 0xD3, + 0x00, + 0xB3, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x50, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB3, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x55, + 0xD8, + 0x04, + 0xD8, + 0xD9, + 0x04, + 0xDA, + 0xB8, + 0x54, + 0x54, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x00, + 0x55, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x56, + 0x00, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB3, + 0x00, + 0xF4, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xF6, + 0x00, + 0xF3, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x54, + 0xD8, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0xF6, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x50, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF3, + 0x00, + 0xE1, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x00, + 0xF6, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xF6, + 0x00, + 0x53, + 0xD8, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xB3, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x54, + 0xD8, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x5D, + 0x04, + 0xD5, + 0x00, + 0x54, + 0xD5, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF6, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x5E, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xF3, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF7, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xD9, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFF, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x04, + 0x04, + 0x04, + 0xF6, + 0xC6, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xF7, + 0xD9, + 0xD8, + 0xF7, + 0x00, + 0x58, + 0x04, + 0xD6, + 0x00, + 0x54, + 0xF7, + 0xF6, + 0x00, + 0x53, + 0xDA, + 0x04, + 0xD9, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5E, + 0x00, + 0xC6, + 0xB8, + 0xF6, + 0x00, + 0x54, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x57, + 0x09, + 0x54, + 0x04, + 0x5C, + 0x54, + 0xB3, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xD6, + 0x00, + 0x00, + 0xDF, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDA, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xC6, + 0xF7, + 0xB8, + 0xF5, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x17, + 0x56, + 0x56, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xF5, + 0x54, + 0x53, + 0xF7, + 0xF7, + 0x53, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xF4, + 0xB8, + 0xF6, + 0x00, + 0x54, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0xF5, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x00, + 0x00, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x54, + 0xF7, + 0xF7, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0x00, + 0x55, + 0xB8, + 0xF3, + 0x00, + 0x54, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x54, + 0x00, + 0xF3, + 0xB8, + 0xF7, + 0x00, + 0x54, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0xF4, + 0xF7, + 0xB8, + 0xF6, + 0x00, + 0x00, + 0xF3, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0x56, + 0x56, + 0xF7, + 0xF5, + 0x00, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF4, + 0x00, + 0x00, + 0xF4, + 0xF7, + 0xB8, + 0x55, + 0x54, + 0x53, + 0x54, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0x56, + 0x56, + 0xB8, + 0x55, + 0xF3, + 0x00, + 0x00, + 0xF3, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0xDF, + 0x04, + 0x00, + 0x53, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF5, + 0x00, + 0x00, + 0xB3, + 0x55, + 0xB8, + 0xF7, + 0xF3, + 0x00, + 0x00, + 0xF7, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x50, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x54, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x00, + 0xF3, + 0xF7, + 0xB8, + 0x55, + 0x54, + 0x54, + 0x54, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0x56, + 0x56, + 0xB8, + 0xF7, + 0xF5, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF5, + 0x00, + 0x00, + 0xF3, + 0x55, + 0xB8, + 0xF7, + 0xF3, + 0x00, + 0x00, + 0xF6, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0x56, + 0x56, + 0xB8, + 0x55, + 0xB3, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0x54, + 0xF6, + 0xB8, + 0xB3, + 0x54, + 0xF4, + 0x04, + 0x04, + 0x56, + 0x56, + 0x56, + 0x53, + 0x00, + 0x56, + 0x56, + 0x56, + 0x56, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xD7, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xF1, + 0x04, + 0x5B, + 0x54, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x50, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x60, + 0x04, + 0x04, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0x56, + 0xB8, + 0x54, + 0x00, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0xF4, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x00, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF4, + 0x00, + 0x54, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x53, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xF7, + 0xD5, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xD0, + 0xF3, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x56, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xB3, + 0x00, + 0x00, + 0xF6, + 0xD8, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x53, + 0x00, + 0x00, + 0xF6, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0xF5, + 0x04, + 0x5A, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0x50, + 0x04, + 0x04, + 0x04, + 0xFA, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xDC, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x5A, + 0xB3, + 0x00, + 0x00, + 0x53, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xF3, + 0x00, + 0x00, + 0xB3, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xF4, + 0x00, + 0x00, + 0x54, + 0xF7, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF6, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x55, + 0xC6, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xEF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF6, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xF6, + 0x54, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x59, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0x55, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xF7, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x54, + 0xB8, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0xF7, + 0x53, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x59, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF4, + 0x5E, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xF6, + 0x54, + 0x00, + 0x00, + 0x00, + 0x54, + 0x55, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xF7, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0xF5, + 0x00, + 0x00, + 0x53, + 0xB8, + 0xDA, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x55, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF1, + 0x00, + 0x55, + 0x04, + 0xF5, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD5, + 0x04, + 0xDE, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD2, + 0x04, + 0xF2, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0x54, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0xD3, + 0xF5, + 0x04, + 0xD8, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0xC6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x54, + 0x00, + 0xD6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xF7, + 0x00, + 0xF4, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0xF4, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0xD5, + 0xD9, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xEC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x00, + 0x00, + 0x0B, + 0x04, + 0x00, + 0x00, + 0x1A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x3A, + 0x69, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x59, + 0xF7, + 0xF7, + 0xB8, + 0xF9, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x55, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF7, + 0x04, + 0x59, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xB8, + 0x0D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x09, + 0x54, + 0x59, + 0xDB, + 0x04, + 0xE1, + 0x55, + 0x00, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF9, + 0xF5, + 0x53, + 0xB3, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0D, + 0x53, + 0x54, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xF5, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5E, + 0x00, + 0x00, + 0x04, + 0xB8, + 0x54, + 0xF4, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF9, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xC6, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xF5, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0xF3, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x16, + 0x00, + 0x53, + 0xD0, + 0x04, + 0x04, + 0x56, + 0x00, + 0x53, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x54, + 0xF9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x53, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x58, + 0x04, + 0x04, + 0xE1, + 0x54, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xF3, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x60, + 0xF3, + 0x00, + 0x00, + 0xF3, + 0x60, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB8, + 0x53, + 0x00, + 0x00, + 0xB3, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xB3, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x09, + 0x16, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD6, + 0x53, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xF6, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0xF3, + 0x00, + 0x00, + 0x54, + 0xF7, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0xF4, + 0x00, + 0x00, + 0x54, + 0x55, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xC6, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0xB3, + 0x00, + 0x00, + 0x53, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xD8, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x58, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x0D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x09, + 0x57, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xF7, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0xF6, + 0x54, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x56, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x09, + 0xF6, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF5, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x55, + 0x53, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF5, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x60, + 0xF3, + 0x00, + 0x00, + 0x54, + 0xF7, + 0xD8, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xF7, + 0x04, + 0x00, + 0x00, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x00, + 0xD0, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x55, + 0x54, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x56, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0xF7, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x53, + 0xF7, + 0xDE, + 0xDB, + 0xF7, + 0x54, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x5E, + 0xF3, + 0x00, + 0x00, + 0x54, + 0xF7, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x59, + 0xF3, + 0x00, + 0x00, + 0x54, + 0x55, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xF6, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x04, + 0xDB, + 0x53, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x56, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xD6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0xD9, + 0xB8, + 0x53, + 0x00, + 0x00, + 0x54, + 0xF7, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x56, + 0xB3, + 0x00, + 0x00, + 0x54, + 0xF5, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0xF3, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xD6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xB8, + 0x53, + 0x00, + 0x00, + 0xC6, + 0xF7, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF7, + 0xC6, + 0x00, + 0x00, + 0x53, + 0xB8, + 0x04, + 0xF3, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x54, + 0xDD, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0xD5, + 0xF7, + 0x53, + 0x00, + 0x00, + 0x54, + 0x55, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xD9, + 0xB8, + 0xC6, + 0x00, + 0x00, + 0x53, + 0xF7, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x56, + 0xB3, + 0x00, + 0x00, + 0x54, + 0xF5, + 0xDF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x00, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xF7, + 0x54, + 0x00, + 0x00, + 0xB3, + 0x17, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x54, + 0xF9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xB3, + 0x00, + 0x00, + 0x54, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0xC6, + 0x04, + 0x04, + 0x5D, + 0x00, + 0x00, + 0x55, + 0x55, + 0x00, + 0x00, + 0x5B, + 0x04, + 0xD8, + 0xF3, + 0x00, + 0x53, + 0xF7, + 0x55, + 0x00, + 0x00, + 0x55, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x54, + 0x55, + 0xF7, + 0xF5, + 0x00, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x54, + 0x00, + 0x00, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x00, + 0xF5, + 0xF7, + 0xF6, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x00, + 0x55, + 0xF7, + 0xF3, + 0x00, + 0xC6, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x00, + 0xF6, + 0xF7, + 0xF4, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xC6, + 0x55, + 0x55, + 0x53, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x53, + 0x54, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x0D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x55, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x55, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x53, + 0x00, + 0x00, + 0xF4, + 0x55, + 0xF7, + 0x55, + 0x00, + 0x00, + 0xF6, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0xD9, + 0x04, + 0x00, + 0x53, + 0xF7, + 0xF7, + 0xF7, + 0xF6, + 0x53, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0xD3, + 0xF4, + 0x00, + 0x00, + 0xF3, + 0x55, + 0xF7, + 0xF6, + 0x54, + 0x00, + 0x54, + 0x17, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xF7, + 0xF7, + 0xF7, + 0x55, + 0xF3, + 0x00, + 0x00, + 0xB3, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0x59, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF6, + 0x00, + 0x00, + 0xB3, + 0x55, + 0xF7, + 0x55, + 0xF3, + 0x00, + 0x00, + 0xF3, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x60, + 0x00, + 0x00, + 0xF6, + 0xF7, + 0xB3, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x00, + 0xF3, + 0xD8, + 0x04, + 0x00, + 0xB3, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xDC, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x55, + 0x00, + 0x00, + 0xF3, + 0x55, + 0xF7, + 0xF6, + 0x54, + 0x00, + 0x00, + 0xF9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x00, + 0x53, + 0x55, + 0xF7, + 0x55, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xF7, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x00, + 0xF6, + 0xF7, + 0xF4, + 0x00, + 0xB3, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x00, + 0x55, + 0xF7, + 0xF5, + 0x00, + 0x00, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x00, + 0x11, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x00, + 0x11, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0xC6, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0x04, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x59, + 0x54, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x53, + 0x00, + 0x54, + 0x55, + 0xF7, + 0xF6, + 0x00, + 0x00, + 0x5A, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x55, + 0x55, + 0xF3, + 0x00, + 0x54, + 0xD6, + 0x04, + 0x04, + 0x04, + 0xF2, + 0xB3, + 0x00, + 0x53, + 0x55, + 0xF7, + 0xF5, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0xB3, + 0x00, + 0x54, + 0x55, + 0xF7, + 0xF6, + 0x00, + 0x00, + 0x5B, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xDE, + 0xC6, + 0x00, + 0xB3, + 0xF7, + 0x55, + 0xF3, + 0x00, + 0x53, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x53, + 0x00, + 0xF3, + 0xF7, + 0x55, + 0xF3, + 0x00, + 0xF5, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x54, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0xE1, + 0x53, + 0x00, + 0xB3, + 0x55, + 0xF7, + 0xF3, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xF7, + 0xF7, + 0xF3, + 0x00, + 0x54, + 0xE1, + 0x04, + 0x04, + 0x04, + 0xF2, + 0xB3, + 0x00, + 0x53, + 0x55, + 0xF7, + 0xF5, + 0x00, + 0x00, + 0x57, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xB3, + 0xF7, + 0xF3, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xB3, + 0x00, + 0xB3, + 0x55, + 0x55, + 0x54, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x54, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xC6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0xF3, + 0x04, + 0x04, + 0x04, + 0xB3, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x09, + 0xC6, + 0x59, + 0xDB, + 0xE1, + 0xF3, + 0x00, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5E, + 0x00, + 0x5C, + 0x04, + 0x53, + 0x00, + 0xD2, + 0x04, + 0x04, + 0xF2, + 0x00, + 0x53, + 0x04, + 0xB8, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF3, + 0x00, + 0x58, + 0x0A, + 0x00, + 0x00, + 0x5E, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xF4, + 0xDB, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xDE, + 0x54, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x54, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x54, + 0xDB, + 0x04, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x00, + 0xF3, + 0x58, + 0x04, + 0x04, + 0x60, + 0x00, + 0xF3, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x17, + 0x00, + 0x53, + 0xD7, + 0x04, + 0x04, + 0x04, + 0xF9, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x54, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x55, + 0x04, + 0x04, + 0xD5, + 0xF6, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0xF5, + 0x54, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x00, + 0xF5, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x00, + 0x00, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD7, + 0x54, + 0x00, + 0xF6, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x00, + 0x60, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x57, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x53, + 0x00, + 0xF3, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x55, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0xF3, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD6, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xD9, + 0xF3, + 0x00, + 0xF4, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x54, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x54, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x54, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x53, + 0xF4, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x54, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF4, + 0x00, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0x54, + 0xDC, + 0x04, + 0xD9, + 0x53, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xB3, + 0x00, + 0x57, + 0x04, + 0x04, + 0xD9, + 0x53, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0xF3, + 0x00, + 0x00, + 0xF6, + 0xDA, + 0xDB, + 0xC6, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x00, + 0x53, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0xDC, + 0x54, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x09, + 0xC6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF3, + 0x04, + 0x04, + 0xD8, + 0xF3, + 0x54, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0xDC, + 0x54, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x00, + 0x00, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF9, + 0x00, + 0x54, + 0xDC, + 0x04, + 0xDB, + 0x53, + 0x54, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0xF4, + 0x00, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x54, + 0x54, + 0xD9, + 0x04, + 0xD8, + 0x54, + 0x54, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xF7, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF5, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x04, + 0xB8, + 0x53, + 0x00, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x56, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0x00, + 0x00, + 0xF9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x09, + 0x57, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x54, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x54, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x54, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xF2, + 0xC6, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x58, + 0x04, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x60, + 0x04, + 0xF4, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x5E, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xF9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0xF3, + 0x00, + 0x00, + 0xF5, + 0x0A, + 0x04, + 0x04, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x04, + 0x04, + 0x0A, + 0xF5, + 0x00, + 0x00, + 0xF3, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x00, + 0xD3, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x09, + 0xB3, + 0xDA, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xB3, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x53, + 0x53, + 0xD8, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x54, + 0xB8, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB3, + 0x00, + 0x5E, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x54, + 0x60, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xC6, + 0x00, + 0x0D, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xF3, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5E, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0x53, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x56, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xF9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xDB, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB3, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xF7, + 0x04, + 0xB8, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF5, + 0xF6, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x53, + 0x00, + 0xF6, + 0x04, + 0xB8, + 0x00, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x56, + 0xDA, + 0x55, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0xF7, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5C, + 0x00, + 0x55, + 0x04, + 0x00, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xF7, + 0x04, + 0xB8, + 0x54, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB3, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x57, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x60, + 0xF7, + 0x00, + 0x0D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x54, + 0xDE, + 0x54, + 0xB8, + 0x04, + 0x04, + 0xB3, + 0xB3, + 0x0D, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x5A, + 0xDE, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x59, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFB, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x55, + 0x00, + 0x56, + 0x58, + 0x58, + 0xF6, + 0x09, + 0x57, + 0x58, + 0x58, + 0x04, + 0x55, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xD6, + 0x54, + 0xC6, + 0xDB, + 0x04, + 0x04, + 0xDB, + 0x54, + 0x54, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x0D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x53, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x0D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0x55, + 0x04, + 0xB3, + 0x54, + 0x16, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0x00, + 0xF4, + 0xE1, + 0x04, + 0xDB, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0xF7, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x5B, + 0xF9, + 0x00, + 0x54, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x56, + 0x54, + 0x54, + 0x00, + 0x55, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x55, + 0x00, + 0x00, + 0x54, + 0x57, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0xDB, + 0x55, + 0x00, + 0x00, + 0xD8, + 0x59, + 0x00, + 0xF4, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0xF9, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x57, + 0xE1, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x09, + 0x57, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xC6, + 0x56, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xD9, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x59, + 0x54, + 0xB8, + 0x04, + 0x53, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x53, + 0xD9, + 0x00, + 0xF6, + 0x04, + 0x0D, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x55, + 0x00, + 0x00, + 0xDF, + 0xD5, + 0xE0, + 0x00, + 0x0A, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xDB, + 0xC6, + 0x09, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0xF6, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xF7, + 0x04, + 0x55, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD3, + 0xF5, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDE, + 0xF6, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x54, + 0x00, + 0xD7, + 0x04, + 0xD7, + 0x00, + 0x54, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x56, + 0xC6, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xC6, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xC6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xC6, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xF6, + 0x04, + 0x53, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xC6, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x55, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x54, + 0x04, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xC6, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5C, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xE0, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x53, + 0x04, + 0xDE, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0xF7, + 0x04, + 0xB3, + 0xF3, + 0x04, + 0xF2, + 0x54, + 0xB8, + 0x04, + 0x53, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x54, + 0x00, + 0x00, + 0x54, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x54, + 0x04, + 0xF6, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x09, + 0x54, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x60, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x5D, + 0x0D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x04, + 0xD7, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB3, + 0x56, + 0x56, + 0x53, + 0x00, + 0x58, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x58, + 0x58, + 0x58, + 0xF3, + 0x00, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x53, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x59, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF6, + 0x04, + 0xD6, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD5, + 0x59, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0xDB, + 0xF6, + 0x00, + 0x09, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0xB8, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0xF7, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xC6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xDE, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD8, + 0x04, + 0x5E, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x57, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x55, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x04, + 0xF5, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF4, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x57, + 0x09, + 0xB3, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x59, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xDC, + 0x04, + 0x57, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xF6, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x00, + 0x55, + 0x57, + 0x57, + 0xB8, + 0xF4, + 0x00, + 0x00, + 0xF5, + 0xD7, + 0x04, + 0x04, + 0x16, + 0x09, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDE, + 0x04, + 0xE1, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xB3, + 0x04, + 0x57, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x54, + 0x04, + 0x59, + 0x54, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF9, + 0x00, + 0xF5, + 0xDA, + 0xF5, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xD5, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xB3, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xF7, + 0x00, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xB8, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xE1, + 0x04, + 0xB8, + 0x54, + 0xD7, + 0x56, + 0x00, + 0xDE, + 0x04, + 0xB8, + 0x54, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x54, + 0xF7, + 0x04, + 0x0D, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x16, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0xF4, + 0x00, + 0x5E, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x55, + 0x13, + 0x04, + 0xB3, + 0xF5, + 0xDA, + 0x04, + 0x04, + 0x57, + 0x54, + 0x00, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0xAD, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0xE1, + 0x00, + 0xF6, + 0xE1, + 0xE1, + 0xD6, + 0x00, + 0x55, + 0xE1, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xC6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD2, + 0x59, + 0x53, + 0x00, + 0x00, + 0x54, + 0x59, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x57, + 0x09, + 0x54, + 0x57, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x54, + 0x54, + 0x54, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0x54, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0D, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xB3, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xB8, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x54, + 0x55, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0D, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xC6, + 0x09, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xF5, + 0x16, + 0xD6, + 0x57, + 0x54, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x59, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0x54, + 0x00, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0xB8, + 0x54, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xD6, + 0x00, + 0x55, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0xB8, + 0x04, + 0x00, + 0xF3, + 0x58, + 0x58, + 0x58, + 0x59, + 0xF9, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF6, + 0x0D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x54, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x59, + 0x54, + 0x00, + 0x00, + 0xF3, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xF7, + 0x04, + 0xDE, + 0x00, + 0xF7, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF6, + 0x04, + 0xD5, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x55, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x54, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x53, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x55, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF9, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xE1, + 0x09, + 0xC6, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0xF3, + 0xF9, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xDC, + 0x04, + 0x04, + 0xF9, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xB3, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x53, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xDE, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0x55, + 0x04, + 0x5B, + 0x53, + 0x55, + 0xB8, + 0x53, + 0x54, + 0x00, + 0xB3, + 0x00, + 0x00, + 0x57, + 0x04, + 0x04, + 0xFF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5E, + 0x53, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x54, + 0xF7, + 0x04, + 0x04, + 0xD3, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x54, + 0x00, + 0x55, + 0xDC, + 0x56, + 0x00, + 0xC6, + 0xF2, + 0x04, + 0xF3, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xF4, + 0x00, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xB3, + 0x09, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x54, + 0x00, + 0xF2, + 0x04, + 0x04, + 0xD8, + 0x53, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x5A, + 0x04, + 0xF5, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xF7, + 0x04, + 0x57, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x54, + 0x00, + 0x00, + 0xF6, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x55, + 0x00, + 0x54, + 0x54, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB3, + 0xC6, + 0x57, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0xF5, + 0x04, + 0x04, + 0x60, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x0A, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0x57, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF3, + 0x58, + 0x58, + 0x57, + 0xB8, + 0xF5, + 0x00, + 0x53, + 0xD7, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF3, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0xD0, + 0x04, + 0x00, + 0xF3, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x5D, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xD0, + 0x04, + 0x00, + 0xF3, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x58, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x53, + 0xD9, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0x00, + 0x54, + 0x00, + 0xF3, + 0xDE, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0xD8, + 0xDE, + 0xDE, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x17, + 0x5A, + 0x57, + 0x55, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xB8, + 0x53, + 0x54, + 0x53, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x17, + 0x04, + 0x04, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x59, + 0x00, + 0x59, + 0x04, + 0x04, + 0xF3, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x00, + 0x54, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xC6, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xC6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x53, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0xF6, + 0x04, + 0x54, + 0x00, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0x00, + 0x09, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xC6, + 0xC6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x55, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x57, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x55, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x04, + 0x54, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x09, + 0xC6, + 0x04, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x53, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xB3, + 0x0D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x00, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x58, + 0xC6, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xC6, + 0x54, + 0xD5, + 0x04, + 0x04, + 0x04, + 0xDF, + 0xF3, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xF6, + 0x0A, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x53, + 0xB8, + 0xD7, + 0x04, + 0xD5, + 0xB3, + 0xF5, + 0x04, + 0x04, + 0xFF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x54, + 0x04, + 0x04, + 0x04, + 0xF4, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF7, + 0x54, + 0x00, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x59, + 0x5E, + 0xD9, + 0x04, + 0xF5, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD3, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x53, + 0x54, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x57, + 0xF7, + 0x00, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x55, + 0xD8, + 0x04, + 0x04, + 0xDA, + 0xDF, + 0x00, + 0xC6, + 0x04, + 0x04, + 0x17, + 0x00, + 0xF4, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x54, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xF4, + 0x56, + 0x57, + 0xF5, + 0x00, + 0xF4, + 0xD9, + 0x04, + 0xB3, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x5E, + 0x04, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x5A, + 0xF3, + 0x00, + 0x54, + 0xF5, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0D, + 0xF5, + 0x00, + 0x00, + 0xF3, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xB3, + 0x00, + 0x57, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0xF4, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDB, + 0x04, + 0xDC, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0x00, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x00, + 0x56, + 0x04, + 0x00, + 0x00, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x53, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x54, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0xE1, + 0x00, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xDC, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x55, + 0x04, + 0x00, + 0xF4, + 0xE1, + 0xE1, + 0xE1, + 0x0A, + 0x59, + 0xF6, + 0x00, + 0x54, + 0xD9, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF3, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x16, + 0xF3, + 0x00, + 0x00, + 0x53, + 0xB8, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD5, + 0x04, + 0x55, + 0x00, + 0xDC, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x03, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xDE, + 0xF7, + 0xC6, + 0x16, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB3, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x09, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0xF7, + 0x04, + 0xB8, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF4, + 0xF5, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x53, + 0x00, + 0xF6, + 0x04, + 0xF7, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0x00, + 0x04, + 0x00, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x09, + 0x57, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xF6, + 0x09, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF9, + 0x54, + 0xB8, + 0x04, + 0x00, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x54, + 0x04, + 0xF7, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xF7, + 0x04, + 0x00, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xF7, + 0x04, + 0xF7, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB3, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0xF2, + 0x04, + 0x04, + 0xDE, + 0xD2, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x59, + 0x54, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x57, + 0xD6, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0xDD, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF9, + 0xF9, + 0x55, + 0x00, + 0xF9, + 0xF9, + 0xF9, + 0xF5, + 0x00, + 0xF9, + 0xF9, + 0x04, + 0x04, + 0xDE, + 0x54, + 0x00, + 0x00, + 0x55, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5D, + 0x17, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD3, + 0x04, + 0x04, + 0xF5, + 0x54, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x09, + 0xC6, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x5B, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0x00, + 0x53, + 0xB8, + 0x57, + 0x55, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xC6, + 0xB8, + 0x57, + 0x55, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0xF7, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0xF5, + 0x00, + 0x00, + 0xF3, + 0x5C, + 0x04, + 0x04, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0x04, + 0x04, + 0x5C, + 0xF3, + 0x00, + 0x00, + 0xF5, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x53, + 0x00, + 0xDE, + 0x04, + 0x54, + 0x53, + 0x04, + 0x5A, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0x58, + 0x04, + 0xDC, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0xC6, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0xE1, + 0xE1, + 0x0D, + 0x58, + 0xB3, + 0x00, + 0x59, + 0x04, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x04, + 0x00, + 0xF4, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xDC, + 0x04, + 0x00, + 0xF4, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xDE, + 0x04, + 0x04, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0xE1, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x5A, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xB8, + 0x54, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDC, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x57, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0xB8, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x58, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x54, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x16, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x5D, + 0x00, + 0x00, + 0xF7, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0x5B, + 0x04, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x0D, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0xC6, + 0x00, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x55, + 0x04, + 0xDC, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x54, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF9, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x54, + 0x00, + 0x57, + 0x04, + 0xDA, + 0xDA, + 0x04, + 0xDC, + 0xF4, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x5A, + 0x04, + 0xDA, + 0x04, + 0x04, + 0x5E, + 0x00, + 0x54, + 0xDC, + 0x04, + 0xDB, + 0x53, + 0x00, + 0x58, + 0x04, + 0xDA, + 0x04, + 0x04, + 0xD2, + 0xB3, + 0x54, + 0x57, + 0x04, + 0x04, + 0xDB, + 0x53, + 0x00, + 0x58, + 0x04, + 0xDA, + 0x04, + 0x04, + 0xD2, + 0xF3, + 0x00, + 0x00, + 0xF6, + 0x04, + 0xDC, + 0x54, + 0x00, + 0x0D, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xD4, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x00, + 0x60, + 0x04, + 0xDA, + 0xDA, + 0x04, + 0x5D, + 0x54, + 0x00, + 0x00, + 0x04, + 0x00, + 0x00, + 0xF5, + 0xD9, + 0xDA, + 0xDA, + 0x04, + 0xD0, + 0x00, + 0x00, + 0xDC, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xDB, + 0xC6, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x53, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xB3, + 0x00, + 0xE1, + 0x04, + 0x00, + 0x00, + 0x55, + 0xDA, + 0xDA, + 0xDA, + 0x04, + 0x55, + 0x00, + 0xF7, + 0x04, + 0xDC, + 0x54, + 0x00, + 0xF9, + 0x04, + 0xDA, + 0x04, + 0x04, + 0x60, + 0x00, + 0x00, + 0xD3, + 0x04, + 0x00, + 0x00, + 0x00, + 0x5B, + 0x04, + 0xDA, + 0x04, + 0x04, + 0x5C, + 0x54, + 0x54, + 0xDC, + 0x04, + 0xDB, + 0x54, + 0x00, + 0x58, + 0x04, + 0xDA, + 0xDA, + 0x04, + 0xDC, + 0xF4, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD6, + 0x04, + 0xDC, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0xC6, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF5, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0xF4, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xF9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x09, + 0xC6, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xF7, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xF6, + 0xDF, + 0x5B, + 0x54, + 0x00, + 0x00, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0xF3, + 0xDE, + 0x55, + 0x00, + 0x54, + 0xDC, + 0x04, + 0xF2, + 0x58, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x55, + 0xE1, + 0xDE, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x56, + 0x5E, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xD6, + 0x57, + 0x09, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xC6, + 0x00, + 0xDC, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0x54, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x16, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xF5, + 0x60, + 0xDF, + 0xF6, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x55, + 0x00, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x54, + 0x00, + 0x55, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0xF7, + 0xDA, + 0xF6, + 0x00, + 0xD0, + 0x04, + 0xF3, + 0x00, + 0x60, + 0x04, + 0x04, + 0x57, + 0x00, + 0xF4, + 0x04, + 0x5E, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x09, + 0x5B, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x53, + 0x04, + 0x04, + 0xF5, + 0x54, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF4, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xF7, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5E, + 0x00, + 0xB8, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0xDE, + 0x00, + 0x53, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xF6, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x0A, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0x55, + 0xDA, + 0xF4, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xF5, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x53, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF9, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x55, + 0xDE, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x54, + 0xF2, + 0x00, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xDE, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xC6, + 0x09, + 0xD8, + 0x04, + 0xD9, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x53, + 0x54, + 0x53, + 0x55, + 0xF7, + 0xF6, + 0x00, + 0x00, + 0x59, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB3, + 0x55, + 0xF7, + 0xF3, + 0x00, + 0x54, + 0xE1, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x53, + 0x00, + 0x53, + 0x55, + 0xF7, + 0xF5, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0xB3, + 0xC6, + 0x53, + 0x55, + 0xF7, + 0xF5, + 0x54, + 0x00, + 0x56, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xE1, + 0x54, + 0x00, + 0xF3, + 0xF7, + 0x55, + 0xF3, + 0x00, + 0x54, + 0x0D, + 0x04, + 0x04, + 0xF7, + 0xF7, + 0x00, + 0x53, + 0xF7, + 0xF7, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x00, + 0xF3, + 0x55, + 0x55, + 0xF3, + 0x00, + 0xF5, + 0xF6, + 0x00, + 0x04, + 0x00, + 0x00, + 0x00, + 0x54, + 0x55, + 0xF7, + 0xF6, + 0x00, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0xD6, + 0x00, + 0xC6, + 0xDB, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xF7, + 0x55, + 0x00, + 0x00, + 0x5B, + 0xF6, + 0x54, + 0xF3, + 0xF7, + 0x55, + 0x54, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x53, + 0x55, + 0x55, + 0x53, + 0x00, + 0xB3, + 0xD5, + 0x04, + 0x04, + 0xE1, + 0x54, + 0x00, + 0xF3, + 0x55, + 0xF7, + 0xF3, + 0x00, + 0x00, + 0x0A, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF3, + 0x55, + 0xF7, + 0xB3, + 0x00, + 0x54, + 0xE1, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x53, + 0x00, + 0x53, + 0x55, + 0xF7, + 0xF6, + 0x00, + 0x00, + 0x57, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x54, + 0xF3, + 0x56, + 0x04, + 0x0A, + 0x00, + 0x09, + 0xF7, + 0xB3, + 0x00, + 0xF9, + 0x04, + 0xF7, + 0xF7, + 0x53, + 0x00, + 0xF7, + 0xF7, + 0xF7, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x60, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD7, + 0x04, + 0x59, + 0x54, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDC, + 0x04, + 0xD8, + 0x53, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x16, + 0x09, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x00, + 0xF6, + 0x04, + 0xDC, + 0xDC, + 0xF2, + 0x00, + 0x56, + 0xDC, + 0xDC, + 0xDF, + 0xC6, + 0x57, + 0xDC, + 0x04, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x57, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5E, + 0x00, + 0x55, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x54, + 0x04, + 0xDC, + 0xDE, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x00, + 0xDE, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0x04, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xB8, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xB8, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF6, + 0x04, + 0xD6, + 0x00, + 0xF5, + 0x04, + 0xDE, + 0x54, + 0x00, + 0xF7, + 0x56, + 0x00, + 0x53, + 0x00, + 0xD5, + 0xF5, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF3, + 0x04, + 0xDB, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x5C, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x59, + 0xDE, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x09, + 0x57, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF7, + 0x55, + 0xD8, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x5C, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xC6, + 0x54, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xF3, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x0D, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF6, + 0x04, + 0x57, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x5D, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0x55, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x5E, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x5B, + 0x04, + 0x5B, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x59, + 0xDA, + 0x58, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xB8, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xE1, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0xD8, + 0xB8, + 0x53, + 0x00, + 0x00, + 0xC6, + 0xF7, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x56, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x56, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x0D, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF7, + 0x53, + 0x00, + 0x00, + 0xC6, + 0xF7, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0xD3, + 0xF7, + 0x54, + 0x00, + 0x00, + 0xB3, + 0x57, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x0D, + 0xF4, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x5C, + 0xB3, + 0x00, + 0x00, + 0xF3, + 0x60, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x00, + 0x00, + 0xB3, + 0x58, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xE1, + 0xF4, + 0x00, + 0x00, + 0x54, + 0xF7, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF7, + 0x53, + 0x00, + 0x00, + 0x54, + 0x55, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xD8, + 0xB8, + 0x53, + 0x00, + 0x00, + 0xC6, + 0xF7, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x56, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xDF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0xB8, + 0x00, + 0x09, + 0x04, + 0x04, + 0x5B, + 0xC6, + 0x00, + 0x54, + 0x57, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0xF5, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0D, + 0x54, + 0xB8, + 0x04, + 0xF4, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0x56, + 0x04, + 0xF7, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xF3, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD7, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x55, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x55, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF6, + 0xD8, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x0D, + 0x00, + 0xF3, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x58, + 0x56, + 0x00, + 0x54, + 0xB8, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x59, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xB3, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x53, + 0x04, + 0x04, + 0x57, + 0x00, + 0x0A, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x60, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x55, + 0x54, + 0xB8, + 0x04, + 0xDE, + 0xF4, + 0x00, + 0x00, + 0xF3, + 0xDC, + 0x04, + 0x58, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD6, + 0x56, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xC6, + 0x09, + 0xDC, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0x53, + 0xD8, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0x55, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x54, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x5B, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x57, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x55, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x54, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x55, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x56, + 0x04, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x57, + 0x09, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x54, + 0x57, + 0x04, + 0x04, + 0x04, + 0x53, + 0x09, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xF9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0xF3, + 0x04, + 0xDA, + 0x55, + 0x00, + 0x0D, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x16, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF4, + 0x04, + 0xB3, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x16, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x53, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x54, + 0x04, + 0x53, + 0x00, + 0xD2, + 0xDA, + 0x04, + 0x57, + 0x00, + 0x56, + 0x04, + 0xF7, + 0x00, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE0, + 0x54, + 0xDB, + 0x04, + 0x04, + 0x59, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x56, + 0x54, + 0xF5, + 0xDB, + 0x04, + 0x04, + 0x5D, + 0x00, + 0x54, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x57, + 0x00, + 0xF5, + 0xD9, + 0xDA, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x56, + 0x00, + 0x55, + 0xDA, + 0xDA, + 0xDA, + 0x04, + 0xF7, + 0x00, + 0xB8, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x57, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x55, + 0x04, + 0x04, + 0x53, + 0x00, + 0xD3, + 0xDA, + 0xDA, + 0xD3, + 0x00, + 0x53, + 0x04, + 0x04, + 0x0A, + 0x00, + 0xB3, + 0xDC, + 0xDA, + 0x04, + 0x04, + 0x59, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xB3, + 0x00, + 0xE1, + 0x04, + 0x04, + 0xD8, + 0xF4, + 0x00, + 0x55, + 0xD3, + 0x04, + 0xF1, + 0xF2, + 0x04, + 0xDB, + 0xF7, + 0x00, + 0x54, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0x00, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x00, + 0x55, + 0xD3, + 0x04, + 0xDA, + 0xDA, + 0x04, + 0x04, + 0x5B, + 0x00, + 0x00, + 0x16, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0xF7, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0xB3, + 0x00, + 0xF4, + 0xE1, + 0x04, + 0xDA, + 0xDA, + 0xDA, + 0x04, + 0xDE, + 0xF5, + 0x00, + 0xF3, + 0xD9, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x54, + 0xDC, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x53, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD8, + 0xF5, + 0x00, + 0xF6, + 0xDE, + 0x04, + 0xDA, + 0xDA, + 0x04, + 0x04, + 0x59, + 0x00, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF3, + 0x00, + 0x5C, + 0x04, + 0x04, + 0xF2, + 0x54, + 0x00, + 0xF6, + 0xDE, + 0x04, + 0xDA, + 0xDA, + 0xDA, + 0x04, + 0xDE, + 0xF5, + 0x54, + 0x53, + 0xDC, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0D, + 0x00, + 0x00, + 0xDC, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x17, + 0xDA, + 0x04, + 0x04, + 0x55, + 0x00, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xB3, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xB3, + 0x04, + 0x04, + 0xF2, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0x54, + 0xD5, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xC6, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x57, + 0x04, + 0xD0, + 0x00, + 0x54, + 0xD0, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xF5, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x57, + 0xC6, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x16, + 0xF3, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x54, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x54, + 0x55, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFF, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x09, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x55, + 0xD2, + 0xDC, + 0xF7, + 0x00, + 0x56, + 0x04, + 0x5B, + 0x54, + 0x54, + 0x55, + 0xF6, + 0x00, + 0x53, + 0xDB, + 0x04, + 0xD7, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x09, + 0xC6, + 0xF7, + 0xF6, + 0x00, + 0x54, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x54, + 0x04, + 0x57, + 0x00, + 0xB3, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x5B, + 0x00, + 0x00, + 0x59, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDB, + 0x04, + 0x04, + 0xF6, + 0x54, + 0x53, + 0x55, + 0xF7, + 0xF5, + 0x54, + 0x00, + 0x5B, + 0x04, + 0x04, + 0x58, + 0xF7, + 0xF7, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xF4, + 0x00, + 0x53, + 0x55, + 0x55, + 0x53, + 0x54, + 0xF4, + 0xD8, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xF4, + 0xF7, + 0xF5, + 0x00, + 0x54, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x54, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xF4, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0x00, + 0x00, + 0x04, + 0x04, + 0x5B, + 0x00, + 0x54, + 0x55, + 0x55, + 0x00, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x56, + 0xC6, + 0x09, + 0x55, + 0xF7, + 0xF3, + 0x00, + 0x54, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x54, + 0x00, + 0xF3, + 0xF7, + 0x55, + 0x00, + 0x54, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x55, + 0x00, + 0x00, + 0xF4, + 0x55, + 0xF7, + 0xF5, + 0x00, + 0x00, + 0xF3, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xF7, + 0xF7, + 0x55, + 0xF4, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xF4, + 0x00, + 0x00, + 0xF3, + 0x55, + 0xF7, + 0xF6, + 0x54, + 0x00, + 0xC6, + 0x60, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xF7, + 0xF7, + 0xF7, + 0x55, + 0xF3, + 0x00, + 0x00, + 0xF3, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0x59, + 0x04, + 0x00, + 0x53, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF5, + 0x54, + 0x54, + 0xB3, + 0x55, + 0xF7, + 0x55, + 0xF3, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0xF3, + 0x55, + 0xF7, + 0xF6, + 0x54, + 0x00, + 0xC6, + 0x5E, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xF7, + 0xF7, + 0xF7, + 0x55, + 0xF5, + 0x00, + 0x09, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xF4, + 0x00, + 0x00, + 0xF3, + 0x55, + 0xF7, + 0x55, + 0xF3, + 0x00, + 0x00, + 0xF5, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xF7, + 0xF7, + 0xF7, + 0x55, + 0xB3, + 0x00, + 0x00, + 0xF9, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x00, + 0xF6, + 0xF7, + 0xB3, + 0x00, + 0xF4, + 0x04, + 0x04, + 0xF7, + 0xF7, + 0xF7, + 0x53, + 0x00, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xDF, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD6, + 0x04, + 0x57, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x58, + 0x04, + 0x04, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0xF7, + 0x00, + 0x00, + 0x04, + 0x04, + 0x59, + 0x00, + 0x00, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x54, + 0xF4, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0xF4, + 0x00, + 0x54, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x53, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x55, + 0x0C, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xF9, + 0xF3, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xF2, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD9, + 0x04, + 0x04, + 0xD8, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0xF9, + 0xB3, + 0x00, + 0x00, + 0xF6, + 0xD3, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x53, + 0x00, + 0x00, + 0xF5, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0xF5, + 0x04, + 0x56, + 0x56, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x57, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xD6, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x56, + 0xB3, + 0x00, + 0x00, + 0x53, + 0xB8, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x55, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x5E, + 0xF3, + 0x00, + 0x00, + 0xB3, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x16, + 0xF3, + 0x00, + 0x00, + 0x54, + 0x55, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0xF6, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x55, + 0xC6, + 0x00, + 0x00, + 0x00, + 0xF4, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF6, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5E, + 0xF5, + 0x54, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x56, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xF6, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF9, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xF7, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xF7, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x55, + 0x53, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x56, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF4, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0xF6, + 0x54, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF6, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0x55, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xF5, + 0x00, + 0x00, + 0x54, + 0xF7, + 0xD9, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xF6, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x55, + 0x04, + 0xF5, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD0, + 0x04, + 0x16, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x17, + 0x04, + 0x17, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x54, + 0xD8, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x0A, + 0xF4, + 0x04, + 0xDC, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x54, + 0x00, + 0x56, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0xC6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x54, + 0x00, + 0x5B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xF7, + 0x00, + 0xF4, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xF3, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0xD0, + 0xD7, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xEC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x00, + 0x00, + 0x49, + 0x04, + 0x00, + 0x00, + 0x1B, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x06, + 0x74, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFF, + 0xFF, + 0xFF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0xB8, + 0x5D, + 0x17, + 0x17, + 0x5D, + 0xF7, + 0x54, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFF, + 0xFF, + 0xFF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xB8, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0xDC, + 0xEF, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD8, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFF, + 0xFF, + 0xFF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x60, + 0x5D, + 0x54, + 0x5D, + 0x60, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDC, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF5, + 0xDF, + 0xFA, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xD9, + 0xD9, + 0xDF, + 0xB8, + 0x55, + 0xF7, + 0x5A, + 0xD2, + 0x04, + 0xDE, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0xDE, + 0x04, + 0xF2, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDE, + 0xD9, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDA, + 0xDC, + 0xEF, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFF, + 0xFF, + 0xFF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD2, + 0x04, + 0x5B, + 0x00, + 0x5B, + 0xDA, + 0xD2, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xC1, + 0xD9, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0A, + 0xDB, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFA, + 0x5E, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0xDC, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD8, + 0x04, + 0xD6, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD7, + 0xDB, + 0xB8, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xDE, + 0x04, + 0x59, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x5A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xD3, + 0xD5, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xDE, + 0x57, + 0x54, + 0x00, + 0x00, + 0x00, + 0xD6, + 0xD3, + 0x04, + 0x16, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFF, + 0xFF, + 0xFF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDC, + 0xD9, + 0x58, + 0x00, + 0x00, + 0x00, + 0x59, + 0xD9, + 0xD7, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x09, + 0xC6, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xDC, + 0xDA, + 0x60, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xDE, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0xDD, + 0x5A, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0xF7, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x09, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0x5B, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDB, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFF, + 0xFF, + 0xFF, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD8, + 0x17, + 0x00, + 0x00, + 0x00, + 0xD6, + 0xDB, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0xF2, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xD3, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD0, + 0xDB, + 0xDB, + 0xD0, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0xDE, + 0xDB, + 0xD8, + 0xD7, + 0x60, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0xD0, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDE, + 0xD9, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5A, + 0x04, + 0xD0, + 0x53, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xDD, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x53, + 0xDC, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF7, + 0xD6, + 0xD7, + 0xD8, + 0xD8, + 0xD7, + 0x12, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x53, + 0xB8, + 0xE1, + 0xDD, + 0xD8, + 0xD3, + 0xDF, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x16, + 0xF2, + 0xD9, + 0xD9, + 0xDE, + 0x5D, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF5, + 0xDF, + 0xD2, + 0xD9, + 0xD9, + 0xDE, + 0xFA, + 0xB3, + 0x54, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xDA, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xE1, + 0xDD, + 0xD8, + 0xDC, + 0xD6, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0xDA, + 0xDE, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xF6, + 0xD9, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x5B, + 0xD0, + 0xDC, + 0xD8, + 0xD9, + 0xD7, + 0xD6, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0x03, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xDB, + 0xD2, + 0xD6, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF5, + 0xFA, + 0xD0, + 0xDC, + 0xDA, + 0xD9, + 0xD3, + 0xE1, + 0x59, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xD3, + 0xD0, + 0x5E, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x54, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x59, + 0xE1, + 0xD7, + 0xD9, + 0xDA, + 0xD5, + 0xDE, + 0x60, + 0xF6, + 0x09, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xF7, + 0xE1, + 0xD5, + 0xDA, + 0xDD, + 0xD6, + 0xF6, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDE, + 0x04, + 0x5D, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD8, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x59, + 0xD0, + 0xDC, + 0xD8, + 0xD8, + 0xD3, + 0xE1, + 0x5A, + 0xF3, + 0xC6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x53, + 0x59, + 0xE1, + 0xF1, + 0xD8, + 0xD9, + 0xF1, + 0xE1, + 0x59, + 0x53, + 0xF5, + 0xDF, + 0xD7, + 0xD0, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD5, + 0xDB, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x55, + 0xEF, + 0xD7, + 0xD9, + 0xDB, + 0xDE, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF7, + 0xD6, + 0xD7, + 0xD9, + 0xDB, + 0xDE, + 0x5E, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD5, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xD8, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0xDF, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0x0D, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xDF, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDA, + 0xDF, + 0x00, + 0x00, + 0xF3, + 0xD2, + 0xD8, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xD6, + 0xD3, + 0xD8, + 0xD9, + 0xD7, + 0xDF, + 0xF5, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x09, + 0xB8, + 0xE1, + 0xDC, + 0xD8, + 0xD5, + 0xD0, + 0x58, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0xD6, + 0xF1, + 0xD8, + 0xD9, + 0xF2, + 0x17, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x0A, + 0xD7, + 0xD9, + 0xD8, + 0xD2, + 0x17, + 0xF5, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0xD0, + 0xDD, + 0xDA, + 0xD5, + 0xD0, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0x57, + 0xD0, + 0xDD, + 0xD8, + 0xD5, + 0xE1, + 0xB8, + 0x00, + 0xF1, + 0xD7, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x04, + 0xD0, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0x57, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x54, + 0x58, + 0xD0, + 0xDD, + 0xDA, + 0xDB, + 0xDE, + 0x5A, + 0x00, + 0x54, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x56, + 0xD0, + 0xD5, + 0xDA, + 0xDD, + 0xD0, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x58, + 0xD0, + 0xD5, + 0xDA, + 0xD5, + 0xD0, + 0x56, + 0xC6, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xC6, + 0x56, + 0xD0, + 0xDB, + 0xD9, + 0xDE, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x59, + 0xDE, + 0xDB, + 0x04, + 0xD5, + 0xD6, + 0xF5, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x04, + 0xD9, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5B, + 0x04, + 0xEF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x04, + 0xF2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFF, + 0xFF, + 0xFF, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xD0, + 0x00, + 0x00, + 0x00, + 0xFA, + 0x04, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0xC6, + 0x56, + 0xF2, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x5B, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFA, + 0xD9, + 0x55, + 0x00, + 0x00, + 0xF7, + 0xDB, + 0xD8, + 0xD0, + 0xE1, + 0xD9, + 0xDB, + 0xF7, + 0x00, + 0x00, + 0xEF, + 0x04, + 0xDB, + 0xE1, + 0xD6, + 0xF1, + 0x04, + 0xDE, + 0xF3, + 0x00, + 0x54, + 0x58, + 0xD9, + 0xD5, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5E, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0x5D, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x0A, + 0xDB, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x59, + 0xD9, + 0x04, + 0xDE, + 0xD6, + 0xD6, + 0xD2, + 0x04, + 0xDB, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x00, + 0x53, + 0x59, + 0xD8, + 0xD9, + 0xD0, + 0xD6, + 0xDE, + 0x04, + 0xDC, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xDE, + 0x04, + 0xD7, + 0xD6, + 0xE1, + 0xDC, + 0x04, + 0xDE, + 0xF4, + 0x00, + 0x00, + 0x00, + 0xB8, + 0xDC, + 0x04, + 0xD7, + 0xD6, + 0xD6, + 0xDC, + 0x04, + 0xDE, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5D, + 0xDA, + 0xD9, + 0xD0, + 0xD6, + 0xDE, + 0x04, + 0xDB, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x60, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xD6, + 0xDA, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x60, + 0xDC, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDC, + 0x60, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0xDC, + 0x04, + 0xDC, + 0xD0, + 0xD6, + 0xD6, + 0xD0, + 0xDB, + 0x04, + 0xDE, + 0x55, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDA, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0xB8, + 0x00, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0x0A, + 0xE1, + 0xD2, + 0x04, + 0x04, + 0x17, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5D, + 0xDB, + 0x04, + 0xDB, + 0xD0, + 0xD6, + 0xD6, + 0xDE, + 0xD9, + 0x04, + 0xD2, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0xD6, + 0xD6, + 0xDE, + 0xD5, + 0x04, + 0xD9, + 0x17, + 0x53, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x57, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0xD7, + 0x04, + 0xD9, + 0xDE, + 0xD6, + 0xD6, + 0xD0, + 0xDB, + 0x04, + 0xDB, + 0x16, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xF7, + 0xD5, + 0x04, + 0xDE, + 0xD6, + 0xDE, + 0x04, + 0xD7, + 0xF4, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x04, + 0xDC, + 0xEF, + 0xEF, + 0xEF, + 0xEF, + 0xEF, + 0xEF, + 0xEF, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD5, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xC6, + 0x56, + 0xD7, + 0x04, + 0xD9, + 0xD0, + 0xD6, + 0xD6, + 0xD0, + 0xDB, + 0x04, + 0xD7, + 0x56, + 0x54, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xD2, + 0x04, + 0xD9, + 0xDE, + 0xD6, + 0xD6, + 0xDE, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x16, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xDE, + 0x04, + 0x59, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xD5, + 0x04, + 0xD2, + 0xD6, + 0xE1, + 0xD5, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x59, + 0xD9, + 0x04, + 0xF2, + 0xD6, + 0xD6, + 0xD3, + 0x04, + 0xD7, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x5A, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xF2, + 0xD4, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0xD7, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x00, + 0xD2, + 0xD8, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0xD8, + 0x55, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xEF, + 0x04, + 0x04, + 0xDE, + 0xD6, + 0xD6, + 0xD2, + 0x04, + 0xD3, + 0xF7, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x16, + 0x04, + 0xD9, + 0xD0, + 0xD6, + 0xD0, + 0xDB, + 0x04, + 0xE1, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDF, + 0x04, + 0xDA, + 0xDE, + 0xD6, + 0xE1, + 0xF1, + 0x04, + 0xDC, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0xDA, + 0x04, + 0xDE, + 0xD6, + 0xD6, + 0xD2, + 0x04, + 0xD3, + 0xF7, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x53, + 0xD6, + 0x04, + 0xD9, + 0xD0, + 0xD6, + 0xD0, + 0xDB, + 0x04, + 0xD6, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF3, + 0xE1, + 0x04, + 0xD9, + 0xD0, + 0xD6, + 0xD0, + 0xD9, + 0xD8, + 0x59, + 0xDE, + 0xD9, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xD0, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0xF2, + 0xF3, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x09, + 0x60, + 0x04, + 0x57, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x54, + 0xF3, + 0xE1, + 0x04, + 0xD9, + 0xD0, + 0xD6, + 0xD0, + 0xDB, + 0x04, + 0xDE, + 0xF5, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x60, + 0x04, + 0xDB, + 0xD0, + 0xD6, + 0xD0, + 0xDB, + 0x04, + 0xE1, + 0xF3, + 0x00, + 0x00, + 0x54, + 0xF3, + 0xE1, + 0x04, + 0xDB, + 0xD0, + 0xD6, + 0xD0, + 0xD9, + 0x04, + 0x16, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xC6, + 0x56, + 0xD8, + 0xD9, + 0xE1, + 0xD6, + 0xDB, + 0xD8, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x54, + 0x54, + 0xEF, + 0x04, + 0xD9, + 0xD0, + 0xD6, + 0xDE, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDA, + 0x04, + 0xDC, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xEF, + 0x04, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xF2, + 0xD9, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDB, + 0xD7, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDB, + 0x04, + 0xE1, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x45, + 0x3E, + 0x54, + 0x00, + 0xD5, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0xDC, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0xD9, + 0xF2, + 0xB8, + 0xF3, + 0xB8, + 0xD7, + 0xDA, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xD5, + 0xDF, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x57, + 0x00, + 0x00, + 0x57, + 0x04, + 0xD0, + 0x00, + 0x58, + 0x04, + 0xDE, + 0xF6, + 0x00, + 0x00, + 0xF3, + 0xD6, + 0x04, + 0xD6, + 0x00, + 0x59, + 0xD8, + 0xDC, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xD5, + 0xD7, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD8, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0x17, + 0x5A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD5, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0xD5, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0xD8, + 0xDC, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xF7, + 0xFC, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0xD4, + 0xD3, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x59, + 0xD8, + 0xD7, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x12, + 0x04, + 0xE1, + 0x54, + 0x00, + 0xF6, + 0xDC, + 0xD8, + 0x5B, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDF, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD9, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0xDA, + 0xD2, + 0x55, + 0x00, + 0x00, + 0x00, + 0x56, + 0xD9, + 0xD5, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD2, + 0xD8, + 0xB8, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD5, + 0xD0, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x0A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x0A, + 0xD9, + 0x04, + 0xF1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF1, + 0x04, + 0xDB, + 0xEF, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD5, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0xD0, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x04, + 0x04, + 0xDC, + 0xF7, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xDA, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD7, + 0x04, + 0xB8, + 0x54, + 0x00, + 0x00, + 0xEF, + 0x04, + 0xD5, + 0xFA, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x17, + 0xD9, + 0xDB, + 0x56, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0xD0, + 0x04, + 0xD0, + 0xB3, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x16, + 0x04, + 0xDB, + 0x60, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x5A, + 0xDC, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xD6, + 0x04, + 0x59, + 0x54, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x60, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0xD2, + 0xF3, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDD, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x59, + 0xD8, + 0xDB, + 0x5E, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xFA, + 0xDB, + 0xD8, + 0x59, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x58, + 0xD9, + 0xDA, + 0xDF, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0D, + 0x04, + 0xEF, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD3, + 0xDA, + 0x5D, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xD0, + 0x04, + 0x5B, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD8, + 0xD5, + 0x56, + 0x00, + 0x00, + 0x00, + 0x53, + 0x60, + 0x04, + 0xF2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xDE, + 0x04, + 0x04, + 0xD5, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x04, + 0xD9, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0xD7, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDE, + 0xDA, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD9, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD5, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDA, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x04, + 0xDE, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0xDC, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xF6, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xE1, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x0D, + 0x04, + 0xDE, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5B, + 0xD9, + 0xD9, + 0xF7, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0xDE, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0xDC, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xEF, + 0x04, + 0xD6, + 0xF5, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xD6, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0xE1, + 0xF5, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xDB, + 0xDC, + 0x55, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0x57, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x54, + 0x54, + 0xE1, + 0x04, + 0xE1, + 0xF6, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x0A, + 0x04, + 0xDE, + 0x53, + 0x00, + 0x04, + 0x04, + 0x04, + 0xE1, + 0xF5, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xD6, + 0x04, + 0xD0, + 0x00, + 0x54, + 0x54, + 0xE1, + 0x04, + 0xE1, + 0xF5, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD8, + 0xF7, + 0x00, + 0x00, + 0xB8, + 0xD8, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0xF2, + 0xF6, + 0x00, + 0x00, + 0x00, + 0xB8, + 0xD5, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD5, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0xD8, + 0xDE, + 0x00, + 0x00, + 0x54, + 0xD0, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xEF, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x7D, + 0x3B, + 0x45, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x16, + 0x04, + 0xF6, + 0x54, + 0x00, + 0xF5, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xDA, + 0x55, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0xDB, + 0xF5, + 0x00, + 0xDB, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xDB, + 0x00, + 0xDE, + 0xD9, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDE, + 0x04, + 0xEF, + 0xDA, + 0xD7, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5A, + 0x04, + 0x16, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDD, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x5A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x55, + 0xD2, + 0xD8, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0xB8, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x5A, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x59, + 0x04, + 0xEF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xB8, + 0x54, + 0xDF, + 0x04, + 0x16, + 0x09, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5E, + 0x04, + 0x16, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0xD9, + 0xD2, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x56, + 0xD0, + 0xDA, + 0x04, + 0xD2, + 0x5A, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x59, + 0xD2, + 0x04, + 0xDA, + 0xE1, + 0x56, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5A, + 0xDA, + 0xFA, + 0x00, + 0xF4, + 0xF7, + 0xF5, + 0x54, + 0x54, + 0xF3, + 0xF7, + 0x04, + 0x04, + 0x0A, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0x59, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0xDF, + 0x00, + 0x00, + 0xFA, + 0x04, + 0xD7, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0xDB, + 0xD5, + 0x55, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0xEF, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5C, + 0x04, + 0xD7, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD2, + 0x04, + 0x60, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xDD, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xD9, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDB, + 0xDB, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x57, + 0xDA, + 0xD3, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD7, + 0xD8, + 0x57, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0xD9, + 0xD9, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x56, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0xDE, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xD9, + 0xF2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x59, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD7, + 0xD2, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5A, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0xDE, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xDB, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0xDE, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xD0, + 0x04, + 0x58, + 0x00, + 0x56, + 0x04, + 0xDE, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x56, + 0x04, + 0xDE, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xDB, + 0x04, + 0xDE, + 0x00, + 0x56, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0xD0, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xD0, + 0x04, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0x5B, + 0x53, + 0xF5, + 0xD7, + 0xD9, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0x57, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x57, + 0x04, + 0xD0, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x5A, + 0x54, + 0x04, + 0x04, + 0xD0, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x58, + 0x00, + 0x57, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDB, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD9, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xDD, + 0xDE, + 0xF6, + 0xD9, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0xD5, + 0xB3, + 0x00, + 0x00, + 0xD2, + 0xD2, + 0xB8, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0xFA, + 0x54, + 0x59, + 0x04, + 0xEF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xDB, + 0x04, + 0x04, + 0xD8, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x5B, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x69, + 0xFF, + 0xAD, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0xF1, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD9, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xDD, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD9, + 0x60, + 0x00, + 0xDB, + 0xD2, + 0x00, + 0x00, + 0x00, + 0xC6, + 0xF2, + 0xDB, + 0x00, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x04, + 0x04, + 0xD2, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5A, + 0x04, + 0x16, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xC3, + 0xDB, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0xDB, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x04, + 0x0A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xDE, + 0xDA, + 0xFA, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDC, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0xD6, + 0x00, + 0xDB, + 0x04, + 0xD6, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0xDC, + 0x04, + 0x0A, + 0x0A, + 0x00, + 0xE1, + 0xD4, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0xDF, + 0x00, + 0xD7, + 0xDB, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xD5, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD5, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x60, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x59, + 0xF2, + 0x04, + 0x04, + 0xD0, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0xD0, + 0x04, + 0x04, + 0xDE, + 0x59, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xEF, + 0xFA, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xDB, + 0xFA, + 0x00, + 0x60, + 0xD9, + 0x04, + 0xDA, + 0xD6, + 0xB8, + 0xDD, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xDC, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xF1, + 0xDC, + 0x53, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x04, + 0xD0, + 0x00, + 0xF6, + 0xDB, + 0xDB, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0xD6, + 0x5A, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xDA, + 0xF7, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD9, + 0xDB, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xDC, + 0xD9, + 0x55, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x58, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xDB, + 0x00, + 0x04, + 0xDE, + 0x09, + 0x00, + 0x00, + 0xF3, + 0xD2, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x54, + 0xDE, + 0xD9, + 0xF5, + 0x57, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0xD7, + 0xF4, + 0x04, + 0xDE, + 0x00, + 0xF3, + 0xDC, + 0xDB, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xDB, + 0xDC, + 0xF4, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xD7, + 0x04, + 0x59, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0x0D, + 0x04, + 0xFD, + 0xF7, + 0x57, + 0xDA, + 0xF1, + 0xF3, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xDB, + 0xD5, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFA, + 0xDD, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD9, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0xDB, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0xF7, + 0xB3, + 0xDC, + 0xF2, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x04, + 0xDF, + 0xF7, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5A, + 0x04, + 0x04, + 0xDA, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xF2, + 0xD4, + 0xB8, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0xD7, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x57, + 0xDA, + 0xFA, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF2, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x54, + 0x5A, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x5B, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x16, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xD0, + 0x54, + 0xE1, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0xDE, + 0x54, + 0xE1, + 0xD9, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x5E, + 0x57, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0xD9, + 0xB8, + 0xD0, + 0x04, + 0x5D, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0x57, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0xD0, + 0xDA, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDA, + 0xDE, + 0x00, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0xD0, + 0x00, + 0xD0, + 0x04, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xDC, + 0xD5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xF1, + 0xF1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDB, + 0x04, + 0x00, + 0x00, + 0x00, + 0x54, + 0x59, + 0x04, + 0x5A, + 0x00, + 0xD6, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xD9, + 0xF4, + 0x59, + 0x04, + 0x57, + 0x00, + 0x55, + 0x04, + 0x17, + 0x00, + 0xD2, + 0xD7, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xD2, + 0xD9, + 0xB8, + 0xD5, + 0xD7, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5A, + 0x04, + 0x60, + 0x57, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xD7, + 0xDB, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFF, + 0xFF, + 0x56, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0A, + 0xD6, + 0x04, + 0xDE, + 0x0A, + 0x0A, + 0x0A, + 0xDC, + 0xD5, + 0x0A, + 0x0A, + 0x0A, + 0x54, + 0x59, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0A, + 0xDC, + 0xF3, + 0xD0, + 0x04, + 0x56, + 0x00, + 0x00, + 0x56, + 0xDA, + 0xD0, + 0x00, + 0xDB, + 0xD2, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x04, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD3, + 0xF1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD9, + 0xF2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDE, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x04, + 0xD0, + 0x00, + 0xFA, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x0A, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0x04, + 0xD0, + 0x00, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5B, + 0x04, + 0x16, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD8, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x60, + 0x0D, + 0x5E, + 0x04, + 0xDA, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x60, + 0xF1, + 0x04, + 0xD9, + 0xD6, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xE1, + 0xD8, + 0x04, + 0xD7, + 0xFA, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF1, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0xDE, + 0x00, + 0x58, + 0x04, + 0xF1, + 0x60, + 0x17, + 0xF1, + 0x04, + 0x04, + 0x56, + 0x55, + 0xEF, + 0xDC, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x54, + 0x5B, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x57, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x04, + 0xD0, + 0x00, + 0x17, + 0x04, + 0x5E, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x04, + 0x0D, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0xFA, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x5D, + 0x04, + 0xDF, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0x04, + 0x16, + 0x00, + 0x00, + 0xD6, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x04, + 0xD6, + 0x00, + 0xC6, + 0xD7, + 0xDC, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDE, + 0xDA, + 0x56, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xFA, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0xFA, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0x04, + 0x56, + 0xF5, + 0x53, + 0xF5, + 0x56, + 0xDF, + 0xD5, + 0x04, + 0xD0, + 0xF6, + 0x00, + 0x00, + 0xEF, + 0x04, + 0xFA, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xF3, + 0xD2, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xD5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD9, + 0xF2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x09, + 0xF5, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0xDF, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0x56, + 0x00, + 0xDC, + 0xF2, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0xF6, + 0xF6, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0xD7, + 0xF3, + 0x53, + 0xDE, + 0xDA, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xDB, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x04, + 0x5D, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xF3, + 0xDC, + 0xDC, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xDC, + 0xD5, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDD, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0xD5, + 0x00, + 0xDC, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDC, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0xDE, + 0x00, + 0xDC, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD5, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0x57, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0xDD, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xDB, + 0x00, + 0x04, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0xD5, + 0x00, + 0xDD, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0xDE, + 0x04, + 0x0D, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF2, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD5, + 0xF3, + 0x00, + 0x56, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD8, + 0xD6, + 0x00, + 0xF4, + 0xD9, + 0xEF, + 0x00, + 0x5E, + 0x04, + 0xF7, + 0x00, + 0x60, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xD8, + 0x04, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD8, + 0xF6, + 0x00, + 0xD7, + 0xD5, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xD8, + 0xDE, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5B, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xDB, + 0xF7, + 0xC6, + 0x00, + 0x0A, + 0xE1, + 0x00, + 0x54, + 0x53, + 0x53, + 0x57, + 0xDE, + 0xD9, + 0xDE, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x56, + 0xFF, + 0xFF, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDB, + 0xDC, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xD6, + 0xD6, + 0xD9, + 0xD5, + 0xF7, + 0x00, + 0xD0, + 0xDA, + 0xB8, + 0x53, + 0x00, + 0x00, + 0x53, + 0xD6, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDD, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD0, + 0x04, + 0x0A, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xE1, + 0x00, + 0x00, + 0xDE, + 0xD9, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0x04, + 0xD0, + 0x00, + 0xDB, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xDC, + 0xF1, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0xDC, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0x04, + 0xE1, + 0x00, + 0x00, + 0xF3, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF1, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xEF, + 0x04, + 0x5A, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF2, + 0x58, + 0x00, + 0xE1, + 0x04, + 0xF7, + 0x00, + 0x00, + 0xF5, + 0xD2, + 0x04, + 0x59, + 0x54, + 0x00, + 0xFA, + 0xD7, + 0xE0, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0xDF, + 0x00, + 0xDE, + 0xD8, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDC, + 0xD2, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xD9, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0xD6, + 0x04, + 0xD2, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0x04, + 0xDA, + 0x57, + 0x5B, + 0x04, + 0xD0, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x16, + 0x04, + 0x59, + 0x54, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xD0, + 0xD8, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xD8, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x59, + 0x54, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x04, + 0xDF, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x16, + 0x04, + 0x59, + 0x54, + 0x00, + 0x55, + 0xDA, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xDE, + 0xDB, + 0xB3, + 0x00, + 0x03, + 0xDA, + 0xF6, + 0x00, + 0x00, + 0x54, + 0xDD, + 0xF2, + 0x00, + 0x00, + 0xF2, + 0xD5, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFA, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0xDB, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x17, + 0x04, + 0x59, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDA, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD8, + 0x00, + 0xD8, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDA, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x04, + 0xDE, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDA, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x56, + 0xDA, + 0x04, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0x57, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0xD8, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD8, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD8, + 0x00, + 0xDA, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xFA, + 0xD2, + 0x04, + 0xD8, + 0xEF, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x0D, + 0x00, + 0x00, + 0x00, + 0xF2, + 0xD5, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x16, + 0x04, + 0x57, + 0x00, + 0x00, + 0xD0, + 0xDC, + 0x00, + 0xDE, + 0xD7, + 0x00, + 0x00, + 0x55, + 0xD8, + 0x0A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xE1, + 0x00, + 0x00, + 0xFA, + 0x04, + 0x5B, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDC, + 0xDA, + 0x04, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xDA, + 0xFA, + 0x00, + 0x5A, + 0x04, + 0xFA, + 0xF3, + 0x57, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x55, + 0x00, + 0x00, + 0x4D, + 0xF9, + 0x69, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0xB8, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xD0, + 0x04, + 0x0A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x53, + 0xF7, + 0xD0, + 0xDB, + 0xDB, + 0xD0, + 0xF7, + 0x00, + 0x00, + 0x56, + 0xD4, + 0xDC, + 0xB8, + 0x54, + 0xB3, + 0xE1, + 0x04, + 0xD0, + 0xF3, + 0x17, + 0x04, + 0x5D, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDA, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0A, + 0xDB, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xD6, + 0x04, + 0xE1, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0xFA, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0xDF, + 0x00, + 0xDE, + 0xDB, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0xEF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x16, + 0x04, + 0x5A, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x5D, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x5A, + 0x00, + 0x53, + 0xD0, + 0x04, + 0xD0, + 0xB8, + 0xF3, + 0xF5, + 0x59, + 0xD3, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xDC, + 0xD9, + 0x56, + 0xC6, + 0x00, + 0x00, + 0xDB, + 0xF6, + 0x00, + 0xD0, + 0x04, + 0xF3, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0xD0, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x16, + 0xC6, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0xD0, + 0xEF, + 0xEF, + 0xEF, + 0xEF, + 0xEF, + 0xD0, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0xF7, + 0xF1, + 0xD9, + 0xF7, + 0x00, + 0xDB, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xDB, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD9, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xF6, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDB, + 0xDE, + 0x54, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0xD2, + 0xF3, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xDD, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xD5, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xF2, + 0x17, + 0xF4, + 0x00, + 0x00, + 0xDC, + 0xF1, + 0x55, + 0x5A, + 0x17, + 0xEF, + 0xDF, + 0x5D, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0xD5, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xF7, + 0xD0, + 0xDE, + 0xD7, + 0xD8, + 0x04, + 0xDE, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDF, + 0xD9, + 0xDB, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0xDC, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xD9, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xD8, + 0xD0, + 0x00, + 0x00, + 0x59, + 0x04, + 0x59, + 0x54, + 0x00, + 0xB8, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x17, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xF2, + 0x04, + 0x04, + 0xD2, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDD, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD9, + 0x0D, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x55, + 0xD9, + 0xDE, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD8, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD5, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0xDC, + 0x00, + 0xD5, + 0xD7, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0xD5, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0xDE, + 0x00, + 0xD5, + 0x04, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x04, + 0xDC, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD5, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD9, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x17, + 0x04, + 0xEF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x57, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0xDB, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0xDC, + 0x00, + 0x04, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0xDC, + 0x00, + 0xD5, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD2, + 0x04, + 0xD3, + 0x60, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0xEF, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x5D, + 0x04, + 0x5A, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF2, + 0xDC, + 0x53, + 0x00, + 0x00, + 0x5B, + 0x04, + 0x57, + 0xD4, + 0xDF, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xDB, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD5, + 0x04, + 0xD9, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x04, + 0x57, + 0x00, + 0x00, + 0xF4, + 0xDB, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDE, + 0xD8, + 0xB8, + 0x54, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xDA, + 0x16, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xD6, + 0x56, + 0xF4, + 0x5A, + 0xD8, + 0xD6, + 0x00, + 0x00, + 0xFF, + 0xFF, + 0xD8, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0xDA, + 0xF4, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x5B, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x0A, + 0xDB, + 0x04, + 0xFC, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x54, + 0x53, + 0xB8, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x59, + 0xD9, + 0xD8, + 0xEF, + 0xD0, + 0x04, + 0xD6, + 0x53, + 0x00, + 0xF4, + 0xDC, + 0xDC, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD5, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x5A, + 0xDA, + 0xF1, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x5A, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x56, + 0x00, + 0x5A, + 0x04, + 0x16, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDB, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xD2, + 0xD8, + 0x17, + 0x55, + 0xB3, + 0xF7, + 0xE1, + 0x04, + 0xDE, + 0xB3, + 0x00, + 0x5B, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD3, + 0xD8, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xFA, + 0xD7, + 0x04, + 0xDA, + 0xD0, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0xD6, + 0xD8, + 0x04, + 0xD7, + 0xFA, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xDB, + 0xDB, + 0x56, + 0x00, + 0x00, + 0x04, + 0x53, + 0x00, + 0x0A, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0xDA, + 0x55, + 0x00, + 0x00, + 0x56, + 0xF2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD8, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0xD6, + 0xE1, + 0xF2, + 0xDA, + 0xDB, + 0x57, + 0x00, + 0x00, + 0xDA, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x54, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x56, + 0xD8, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x60, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0xEF, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD2, + 0xD8, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xDA, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xDA, + 0x00, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0x0A, + 0xD6, + 0xD0, + 0xDB, + 0x04, + 0xD2, + 0xF4, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xDA, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x17, + 0xDA, + 0xD7, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x60, + 0xDE, + 0xDA, + 0x04, + 0xB6, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0x16, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0x5C, + 0x00, + 0x00, + 0xF6, + 0xDA, + 0xD6, + 0x00, + 0x00, + 0x60, + 0x04, + 0x56, + 0x00, + 0x00, + 0x56, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0x58, + 0xD6, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDC, + 0xD2, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x03, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFA, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0xD0, + 0x00, + 0xD0, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xF5, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0xDE, + 0x00, + 0xD0, + 0x04, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x04, + 0xD0, + 0x54, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xD4, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0x04, + 0x00, + 0x04, + 0xDC, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDC, + 0xD7, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x53, + 0xD0, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0x04, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0D, + 0x04, + 0xB8, + 0x00, + 0x04, + 0xF1, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD5, + 0xD5, + 0x00, + 0xD0, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xD0, + 0x00, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xD0, + 0x00, + 0xD0, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x00, + 0x04, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0xDF, + 0x53, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0xF4, + 0xDB, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDB, + 0xDE, + 0x54, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD8, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xD8, + 0x5A, + 0xD8, + 0xDE, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDB, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0xEF, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDB, + 0xD7, + 0xF4, + 0x00, + 0x00, + 0x53, + 0x16, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xD9, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5A, + 0xDF, + 0x5D, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFA, + 0x56, + 0x00, + 0x00, + 0xFF, + 0xFF, + 0xFF, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0xB8, + 0x00, + 0x00, + 0xB3, + 0x04, + 0xEF, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xDE, + 0x04, + 0xDA, + 0xD9, + 0xD6, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0xDF, + 0xDF, + 0x57, + 0x00, + 0x54, + 0xDE, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD0, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x5D, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xDA, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xD5, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFA, + 0xD6, + 0xD2, + 0x04, + 0xF1, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xD2, + 0xD5, + 0xF6, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0xDA, + 0x5E, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x0A, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x53, + 0xD2, + 0xD8, + 0x5A, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDF, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x00, + 0xDE, + 0xD8, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0x59, + 0x04, + 0x17, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0xDE, + 0x04, + 0x04, + 0xDE, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0xD0, + 0x04, + 0x04, + 0xDE, + 0x58, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xDB, + 0xD9, + 0xF7, + 0x00, + 0xD9, + 0xF6, + 0x00, + 0x58, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0x17, + 0x00, + 0x00, + 0xF4, + 0xD9, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xE1, + 0xD9, + 0xF6, + 0x00, + 0x00, + 0x09, + 0xF5, + 0xDB, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0xDB, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xC6, + 0xF2, + 0xD9, + 0x00, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x00, + 0x00, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x57, + 0x00, + 0xD9, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0xDC, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xFA, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x53, + 0xF1, + 0xD3, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xDB, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xD5, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xE1, + 0x04, + 0xDF, + 0x00, + 0xD9, + 0xF2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF2, + 0xDB, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x5D, + 0x00, + 0x00, + 0x00, + 0xDF, + 0xD8, + 0x04, + 0xD2, + 0xDF, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDC, + 0xD7, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x55, + 0x00, + 0x00, + 0x00, + 0xF2, + 0xD3, + 0x00, + 0x00, + 0xD0, + 0xDB, + 0xB3, + 0x00, + 0x00, + 0x53, + 0xD5, + 0xF2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x12, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xDB, + 0xF2, + 0x00, + 0x55, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5A, + 0x04, + 0x5E, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDC, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0xDE, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD5, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0xD0, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0xD0, + 0x04, + 0x57, + 0x00, + 0x57, + 0x04, + 0xDE, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x57, + 0x04, + 0xDE, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xDB, + 0x04, + 0xDE, + 0x00, + 0x58, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x12, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x00, + 0x04, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0xE1, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xF6, + 0xDC, + 0xDB, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDA, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x5A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xD8, + 0xF4, + 0x00, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0xD0, + 0x00, + 0x59, + 0x04, + 0xD0, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x53, + 0xD0, + 0x04, + 0x58, + 0x00, + 0x04, + 0x04, + 0xD0, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x53, + 0xD0, + 0x04, + 0x57, + 0x00, + 0x58, + 0x04, + 0xD0, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xD0, + 0x04, + 0x04, + 0x00, + 0x04, + 0xDA, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xF4, + 0x00, + 0x00, + 0xF4, + 0x5B, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x5B, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xEF, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0xDC, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD5, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5D, + 0x04, + 0xDF, + 0x00, + 0x16, + 0x04, + 0x17, + 0x54, + 0x00, + 0x00, + 0x00, + 0x5B, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0x0A, + 0x54, + 0x00, + 0x00, + 0xF3, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xD8, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xEC, + 0xFF, + 0xFF, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x58, + 0xFA, + 0x04, + 0xDF, + 0x58, + 0x58, + 0x58, + 0x04, + 0xF2, + 0x58, + 0x58, + 0x00, + 0xF5, + 0xDC, + 0x04, + 0xD2, + 0xFA, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD0, + 0x04, + 0xDA, + 0x04, + 0x04, + 0xD0, + 0xF3, + 0x57, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0xDE, + 0xDB, + 0xDA, + 0xDF, + 0x53, + 0x00, + 0x53, + 0xD2, + 0xDC, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x59, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xC3, + 0x04, + 0xB8, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0xD9, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD8, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x59, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0xDA, + 0xD6, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x04, + 0xD3, + 0xD6, + 0xE1, + 0xDC, + 0x04, + 0xDE, + 0xF5, + 0x00, + 0x00, + 0x00, + 0xB8, + 0xD8, + 0x04, + 0xD2, + 0xD6, + 0xD6, + 0xF1, + 0x04, + 0xF2, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD9, + 0xDE, + 0x54, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xDE, + 0xD6, + 0xD0, + 0x04, + 0x04, + 0x55, + 0x00, + 0x00, + 0xDB, + 0xF2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x04, + 0xD0, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0xE1, + 0xD8, + 0x04, + 0xD2, + 0x5C, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x5A, + 0xD2, + 0x04, + 0xD4, + 0xE1, + 0xB8, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0xE1, + 0x00, + 0xD2, + 0x59, + 0x54, + 0x53, + 0xD7, + 0xDB, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x53, + 0x04, + 0xD3, + 0x00, + 0x00, + 0xF4, + 0xD8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x16, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xB3, + 0x55, + 0x5A, + 0xDC, + 0xDB, + 0xF7, + 0x00, + 0x00, + 0xDE, + 0xD8, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xD9, + 0xD2, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xDA, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x58, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xD0, + 0xD9, + 0xF6, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x56, + 0xDA, + 0xDE, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xDE, + 0xD8, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xDA, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDB, + 0xD7, + 0x00, + 0xD7, + 0xD9, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD9, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDA, + 0xE1, + 0x00, + 0x00, + 0xFA, + 0x04, + 0xD0, + 0xB8, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD8, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0xDA, + 0x57, + 0x54, + 0x00, + 0x00, + 0x00, + 0x54, + 0xDC, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0xF7, + 0xF3, + 0xD9, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x57, + 0x54, + 0x00, + 0xEF, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xDB, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD9, + 0xF6, + 0x00, + 0x00, + 0xF5, + 0xD9, + 0xF2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0xDE, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0xF1, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xF6, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xE1, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x04, + 0xD0, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0xDB, + 0xDB, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x04, + 0xDE, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0xD5, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xEF, + 0xF4, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x12, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xD6, + 0xF4, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xE1, + 0xD4, + 0x04, + 0x04, + 0x00, + 0x04, + 0x04, + 0xD7, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD7, + 0x04, + 0x56, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x56, + 0xDA, + 0xD2, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0xD0, + 0xF3, + 0x00, + 0x00, + 0xF4, + 0xD0, + 0x04, + 0x04, + 0xDC, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x5E, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x04, + 0x04, + 0xD7, + 0xF7, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD7, + 0x04, + 0x59, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xE1, + 0xF5, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xE1, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0xE1, + 0xF6, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xE1, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xE1, + 0xF5, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x00, + 0x04, + 0x04, + 0xDE, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x04, + 0x57, + 0x53, + 0x00, + 0x5A, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x54, + 0xF2, + 0xDD, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xD6, + 0x00, + 0x54, + 0x53, + 0xDC, + 0xF2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFA, + 0xDA, + 0xEF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xEF, + 0xDA, + 0x55, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0xD2, + 0xB3, + 0x00, + 0x00, + 0xDE, + 0xD8, + 0xB8, + 0x54, + 0x00, + 0x54, + 0xF2, + 0xD8, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xD0, + 0xD8, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x57, + 0x54, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x41, + 0x74, + 0xEC, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0xDA, + 0x04, + 0x04, + 0xDA, + 0xDA, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x60, + 0x04, + 0xD6, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0xD6, + 0xF6, + 0xF6, + 0xD6, + 0x04, + 0xDF, + 0x00, + 0xD2, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5D, + 0x04, + 0xD6, + 0x00, + 0xF6, + 0xD0, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD4, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDB, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x56, + 0x58, + 0x00, + 0x57, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0x59, + 0x54, + 0x00, + 0x00, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xD0, + 0xEE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF2, + 0xD9, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x56, + 0xD2, + 0xD8, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xEF, + 0x04, + 0x57, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0xDF, + 0xDE, + 0xDB, + 0xD9, + 0xF2, + 0x16, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0xDC, + 0xD9, + 0xD2, + 0x17, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0xB8, + 0x54, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x5A, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0xD0, + 0x00, + 0x00, + 0xD9, + 0xDE, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x04, + 0xD0, + 0x00, + 0xD5, + 0xD0, + 0x00, + 0x00, + 0x00, + 0xD5, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDF, + 0xDB, + 0x04, + 0xDC, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDC, + 0x04, + 0xDB, + 0x0D, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0xEE, + 0xF5, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xDB, + 0x00, + 0xDF, + 0xDE, + 0x00, + 0x00, + 0xB8, + 0xD8, + 0xD3, + 0xF7, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x57, + 0x00, + 0x57, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF2, + 0xDD, + 0xF3, + 0x54, + 0x53, + 0xD3, + 0xD7, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x17, + 0x04, + 0xFA, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0x0D, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x16, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xF3, + 0xDE, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xD0, + 0xD9, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0x60, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xF4, + 0xD7, + 0xD9, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xFA, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0xFA, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD9, + 0x00, + 0x0A, + 0x04, + 0x5B, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5A, + 0x04, + 0x17, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x04, + 0xD0, + 0x00, + 0x00, + 0xD7, + 0xD5, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD8, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFA, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5A, + 0x04, + 0x5A, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xD2, + 0xD8, + 0xB8, + 0x55, + 0xD9, + 0xD7, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD9, + 0xF2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDB, + 0xB6, + 0xC6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD7, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0x04, + 0x60, + 0x00, + 0x00, + 0x16, + 0x04, + 0x5A, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDF, + 0x04, + 0xDA, + 0xDE, + 0xD6, + 0xD6, + 0xD2, + 0x04, + 0xD3, + 0xF7, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0xFA, + 0xD4, + 0xD9, + 0xD0, + 0xD6, + 0xD0, + 0xDB, + 0x04, + 0xE1, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDF, + 0x04, + 0xD8, + 0xDE, + 0xD6, + 0xD6, + 0xD7, + 0x04, + 0xDC, + 0xB8, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0xDA, + 0xD8, + 0xDE, + 0xD6, + 0xE1, + 0xD7, + 0x04, + 0xD5, + 0x56, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xF3, + 0xE1, + 0x04, + 0xDB, + 0xD0, + 0xD6, + 0xD0, + 0xDB, + 0xDA, + 0xD6, + 0xF3, + 0x00, + 0x00, + 0x0A, + 0x0A, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0x0A, + 0x00, + 0x00, + 0xF4, + 0xD0, + 0x04, + 0xDB, + 0xD0, + 0xD6, + 0xD0, + 0xD9, + 0xD9, + 0x59, + 0xDE, + 0x04, + 0x00, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xD0, + 0xD6, + 0xD0, + 0xD9, + 0x04, + 0x17, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x12, + 0x54, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xD6, + 0xD6, + 0xDC, + 0x04, + 0x60, + 0xB8, + 0xDB, + 0xD9, + 0xD0, + 0xD6, + 0xF2, + 0x04, + 0xD7, + 0x55, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xD0, + 0xD6, + 0xD0, + 0xD9, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xE1, + 0x04, + 0xD9, + 0xD0, + 0xD6, + 0xD0, + 0xDB, + 0x04, + 0xD0, + 0xF4, + 0x00, + 0x00, + 0x04, + 0xDE, + 0xFA, + 0xD4, + 0xD9, + 0xD0, + 0xD6, + 0xD0, + 0xDB, + 0x04, + 0xE1, + 0xF3, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xE1, + 0x04, + 0xD9, + 0xD0, + 0xD6, + 0xD0, + 0xDB, + 0x04, + 0x60, + 0xDE, + 0x04, + 0x00, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xD6, + 0x56, + 0x00, + 0xF7, + 0xDB, + 0xD9, + 0xE1, + 0xE1, + 0xD9, + 0xD5, + 0x55, + 0x00, + 0x0A, + 0x0A, + 0x0A, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0xB8, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD9, + 0xF5, + 0x00, + 0x57, + 0x04, + 0xF9, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xF9, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x17, + 0x00, + 0x00, + 0x53, + 0xDE, + 0xD9, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDB, + 0xD7, + 0xF3, + 0x00, + 0xB8, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0xD6, + 0x04, + 0xDD, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x3B, + 0x56, + 0x94, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0xDE, + 0x04, + 0x53, + 0xF6, + 0x55, + 0x55, + 0xDE, + 0xDE, + 0x55, + 0x55, + 0x55, + 0x17, + 0x04, + 0xB8, + 0x55, + 0x00, + 0xD0, + 0xDA, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDD, + 0xD3, + 0x53, + 0x00, + 0x00, + 0x53, + 0xF1, + 0xDC, + 0x00, + 0x5A, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF1, + 0xD5, + 0xF4, + 0x00, + 0x00, + 0xF3, + 0xDC, + 0xDC, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x5A, + 0x00, + 0x00, + 0x00, + 0x17, + 0xDD, + 0x55, + 0xDC, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xD5, + 0xE1, + 0x00, + 0x00, + 0x00, + 0xD7, + 0xD5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xD5, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF2, + 0xDB, + 0x00, + 0x00, + 0xF4, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xF1, + 0xD7, + 0xF4, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0x5B, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xF2, + 0xDA, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xDA, + 0xE1, + 0x00, + 0x00, + 0x00, + 0xDB, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xD9, + 0x00, + 0x00, + 0xD7, + 0xD5, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x04, + 0xEF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x16, + 0xDC, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDC, + 0x16, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x16, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD9, + 0x00, + 0x55, + 0xD9, + 0x60, + 0x00, + 0x00, + 0x58, + 0xD9, + 0xD8, + 0xD0, + 0xD6, + 0xDD, + 0xDE, + 0xD7, + 0xE1, + 0x53, + 0xDE, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5A, + 0x04, + 0x5B, + 0x00, + 0x58, + 0x04, + 0x5E, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x04, + 0xD0, + 0x00, + 0x00, + 0xF6, + 0xDB, + 0xD5, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x56, + 0xD6, + 0x58, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xD2, + 0xDA, + 0xF7, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD8, + 0xDB, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xE1, + 0x0D, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDC, + 0xDB, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0xF7, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0xD3, + 0x53, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x0A, + 0x04, + 0xFA, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xF4, + 0xF1, + 0xDB, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0xDC, + 0xF3, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF2, + 0xD8, + 0x00, + 0xF7, + 0xDA, + 0xDC, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xDC, + 0xD9, + 0x55, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0xE1, + 0x00, + 0x00, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0x17, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xB3, + 0xDC, + 0xDC, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xD4, + 0x55, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xDB, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0xDF, + 0x00, + 0x00, + 0xFA, + 0x04, + 0xEF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xEF, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0xDA, + 0x56, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xDB, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x57, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xDC, + 0xF1, + 0x53, + 0x00, + 0xD7, + 0xDD, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xD6, + 0xD7, + 0xD9, + 0xD9, + 0xF2, + 0x17, + 0xF4, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x54, + 0xB8, + 0xE1, + 0xDD, + 0xDA, + 0xD5, + 0xD0, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xD6, + 0xD3, + 0xD9, + 0xD9, + 0xF2, + 0x17, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xD6, + 0xD7, + 0xD9, + 0xD9, + 0xD2, + 0xDF, + 0xF6, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x54, + 0x57, + 0xD0, + 0xDD, + 0xD8, + 0xDC, + 0xD0, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0xD0, + 0xD5, + 0xD8, + 0xDC, + 0xD6, + 0xF7, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0xF5, + 0xDF, + 0xD3, + 0xD9, + 0xD5, + 0xD0, + 0x57, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDE, + 0x04, + 0x59, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x55, + 0xD0, + 0xDB, + 0xD9, + 0xDE, + 0x59, + 0x00, + 0x00, + 0xF7, + 0xD0, + 0xDB, + 0xD8, + 0xF1, + 0xEF, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0xF3, + 0x60, + 0xD2, + 0xD9, + 0xD5, + 0xD0, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0xD0, + 0xDC, + 0xD8, + 0xD5, + 0xD0, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x54, + 0xB8, + 0xE1, + 0xDD, + 0xDA, + 0xD5, + 0xD0, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0xD0, + 0xDD, + 0xD8, + 0xD5, + 0xD0, + 0x56, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0xB8, + 0xD7, + 0x04, + 0x17, + 0x00, + 0x00, + 0xF7, + 0xD0, + 0xD9, + 0xDB, + 0xD0, + 0xF7, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0xD6, + 0x04, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0xFA, + 0x00, + 0xE1, + 0xD8, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xD7, + 0x00, + 0x00, + 0x60, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5D, + 0x04, + 0x0D, + 0x00, + 0xD6, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0xD5, + 0xF3, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFF, + 0x8C, + 0x3B, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x54, + 0xEF, + 0xDB, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0x58, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xD7, + 0x00, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x54, + 0xDE, + 0xD9, + 0x00, + 0xF3, + 0xDC, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDE, + 0xD9, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xF6, + 0xD5, + 0xDD, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xD9, + 0xDE, + 0x53, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0xD9, + 0xF4, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x5E, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xD0, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDA, + 0xDE, + 0x00, + 0x00, + 0xDE, + 0xD3, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x0A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0xD0, + 0x09, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xD4, + 0x55, + 0x00, + 0x00, + 0xDB, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0xDB, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD9, + 0xF2, + 0x00, + 0x00, + 0x5B, + 0xDA, + 0x5E, + 0x00, + 0x00, + 0xF7, + 0xE1, + 0xD5, + 0xD9, + 0xD0, + 0x55, + 0x00, + 0xF3, + 0x04, + 0xD5, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xDD, + 0xD2, + 0x00, + 0xDE, + 0xDB, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0xFA, + 0x04, + 0xD2, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x09, + 0xB8, + 0xD5, + 0xDB, + 0x55, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xE1, + 0x04, + 0xEF, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0xD7, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD2, + 0x04, + 0x59, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xD9, + 0xD7, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x09, + 0x16, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x57, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x56, + 0xD8, + 0xD7, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xDC, + 0xDA, + 0x57, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xD9, + 0xF1, + 0x00, + 0x00, + 0xDF, + 0x04, + 0xF2, + 0xF6, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xF2, + 0x04, + 0x16, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0xFA, + 0x00, + 0x00, + 0xDC, + 0xDC, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF7, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x59, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x54, + 0xDE, + 0xDB, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x04, + 0xD3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF2, + 0xDB, + 0x53, + 0x00, + 0x00, + 0xC6, + 0xB8, + 0xD8, + 0xD2, + 0xB3, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xDB, + 0xD7, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD9, + 0xD2, + 0xB3, + 0x00, + 0x00, + 0x17, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xC3, + 0xD9, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x5A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x59, + 0x57, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x3B, + 0xC8, + 0xE3, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5A, + 0x04, + 0xF7, + 0x00, + 0x00, + 0xF5, + 0x04, + 0x17, + 0x00, + 0x00, + 0x17, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDB, + 0xDE, + 0x00, + 0xDE, + 0xDA, + 0x56, + 0x54, + 0x00, + 0xB8, + 0xD4, + 0xDE, + 0x00, + 0x00, + 0x16, + 0xDA, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xD9, + 0xF7, + 0x54, + 0x00, + 0xB8, + 0xD9, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0xD2, + 0x55, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xDC, + 0xD5, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0x59, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0xDD, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5C, + 0xD4, + 0xDC, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x56, + 0x04, + 0xD7, + 0x55, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD2, + 0x04, + 0x57, + 0x00, + 0x00, + 0xEF, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDC, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFA, + 0x04, + 0x16, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0x04, + 0xEF, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0x59, + 0xDA, + 0xD0, + 0x00, + 0x00, + 0xF6, + 0xD5, + 0xDB, + 0x57, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xDF, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xD7, + 0xD8, + 0x5A, + 0x54, + 0x00, + 0x54, + 0xF5, + 0xD0, + 0x04, + 0x5A, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0xDE, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x59, + 0xD7, + 0xDB, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x60, + 0x04, + 0x0A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xD6, + 0x04, + 0x5D, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0xDD, + 0x5A, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0x60, + 0xD9, + 0xD9, + 0x56, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x54, + 0x00, + 0xB3, + 0x58, + 0xD2, + 0x04, + 0xD0, + 0xB3, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0x00, + 0x00, + 0x53, + 0xD0, + 0x04, + 0xDB, + 0xFA, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x5A, + 0xDC, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5B, + 0x04, + 0xD0, + 0x53, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xDB, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x59, + 0xD9, + 0xDB, + 0x5E, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x17, + 0xD9, + 0xD8, + 0x59, + 0x54, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xD0, + 0x04, + 0xEF, + 0x00, + 0x00, + 0x53, + 0xD6, + 0x04, + 0xDC, + 0x5A, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x5C, + 0xDD, + 0x04, + 0xEF, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xFA, + 0xD8, + 0xDC, + 0xF5, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x0D, + 0x53, + 0x00, + 0x54, + 0xF5, + 0xDE, + 0x04, + 0x57, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xDE, + 0xDA, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD3, + 0xD5, + 0xF3, + 0x00, + 0xF5, + 0xD4, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFA, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x56, + 0x00, + 0x00, + 0xB3, + 0xD2, + 0xD8, + 0xB8, + 0x54, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD9, + 0xD7, + 0xF3, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x5B, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x16, + 0x04, + 0x5E, + 0x00, + 0x00, + 0xF6, + 0xDB, + 0xDB, + 0x56, + 0x00, + 0x00, + 0x00, + 0xF5, + 0xDB, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0x17, + 0x04, + 0xD7, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD9, + 0x04, + 0x04, + 0xD8, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xFA, + 0x5D, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xD2, + 0xD8, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD5, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD5, + 0xD0, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD9, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x55, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFF, + 0xFF, + 0xC0, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x59, + 0x54, + 0x00, + 0x00, + 0xD3, + 0xD0, + 0x00, + 0x00, + 0xF6, + 0xF1, + 0xD3, + 0x56, + 0xF3, + 0x55, + 0xD0, + 0x04, + 0x5A, + 0x00, + 0xB8, + 0xDB, + 0xD9, + 0xE1, + 0xE1, + 0xD9, + 0xDB, + 0xB8, + 0x54, + 0x00, + 0xF4, + 0xDB, + 0x0D, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0xD9, + 0xDB, + 0xE1, + 0xE1, + 0xD9, + 0xD9, + 0xB8, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x59, + 0xD9, + 0xDC, + 0x56, + 0x00, + 0x57, + 0xDB, + 0xD5, + 0xB8, + 0x54, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x0A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xD5, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x59, + 0xD8, + 0x04, + 0xDE, + 0xD6, + 0xD6, + 0xD7, + 0x04, + 0xD5, + 0xB8, + 0x54, + 0x00, + 0x0A, + 0x0A, + 0x0A, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x5E, + 0xD4, + 0xD9, + 0xD0, + 0xD6, + 0xD0, + 0xD9, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDC, + 0xD4, + 0xD0, + 0xD6, + 0xDE, + 0x04, + 0xD7, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD5, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xD9, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0xF7, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xD9, + 0xB8, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x04, + 0xD9, + 0x00, + 0x00, + 0x55, + 0xF1, + 0x04, + 0xDE, + 0xD6, + 0xDE, + 0x04, + 0xDC, + 0x55, + 0x00, + 0x00, + 0x00, + 0xB8, + 0xD5, + 0x04, + 0xDE, + 0xD6, + 0xE1, + 0xDC, + 0x04, + 0xDE, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0xDB, + 0x04, + 0xD2, + 0xD6, + 0xE1, + 0xD5, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0xDC, + 0x04, + 0xDD, + 0xD0, + 0xD6, + 0xD6, + 0xD0, + 0xDB, + 0x04, + 0xDE, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD9, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0xD6, + 0xD0, + 0xDD, + 0x04, + 0xDE, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5D, + 0xDB, + 0x04, + 0xDB, + 0xD0, + 0xD6, + 0xD6, + 0xDE, + 0xD9, + 0x04, + 0xD2, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0xD6, + 0xE1, + 0xDE, + 0xDB, + 0x04, + 0xD9, + 0x17, + 0x53, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x57, + 0x54, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x57, + 0x54, + 0x00, + 0x00, + 0xB3, + 0xEF, + 0x04, + 0x04, + 0xD9, + 0xDE, + 0xD6, + 0xD6, + 0xD0, + 0xDB, + 0x04, + 0xD7, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xEF, + 0x04, + 0x0D, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x0A, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB8, + 0xD2, + 0x04, + 0xD9, + 0xDE, + 0xD6, + 0xD6, + 0xDE, + 0xD9, + 0x04, + 0xD7, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0x12, + 0xD6, + 0xDE, + 0xDB, + 0x04, + 0xD2, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5E, + 0xDB, + 0x04, + 0xDB, + 0xD0, + 0xD6, + 0xD6, + 0xD0, + 0xDB, + 0xDA, + 0xDB, + 0x5C, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0x12, + 0xD6, + 0xDE, + 0xDB, + 0x04, + 0xDC, + 0xB8, + 0x54, + 0x00, + 0x00, + 0xF4, + 0xDE, + 0x04, + 0xD7, + 0xD6, + 0xE1, + 0xD5, + 0x04, + 0xD6, + 0x00, + 0x00, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x04, + 0xDC, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xF7, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x60, + 0x04, + 0x5A, + 0x54, + 0x59, + 0x04, + 0xF9, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x56, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x17, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x16, + 0x04, + 0xDF, + 0x00, + 0x00, + 0xF7, + 0xDA, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xDD, + 0xF1, + 0xF3, + 0x00, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0x0A, + 0xD6, + 0x04, + 0xDB, + 0x00, + 0x00, + 0x00, + 0x57, + 0xD9, + 0xDA, + 0x5A, + 0x00, + 0x00, + 0x16, + 0x04, + 0xB8, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD2, + 0x04, + 0xD3, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x04, + 0xC1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0xD7, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0xD4, + 0xD8, + 0xD0, + 0xD6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0xD0, + 0x57, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x0A, + 0xD7, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x9D, + 0x3B, + 0xD8, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0xDE, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDB, + 0xDF, + 0x00, + 0x00, + 0x00, + 0xD0, + 0xDC, + 0x00, + 0x00, + 0x00, + 0x55, + 0xDE, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x17, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD0, + 0xDB, + 0xDB, + 0xD0, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDF, + 0xDB, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xD0, + 0xD9, + 0xDB, + 0xD0, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD0, + 0x17, + 0x00, + 0x17, + 0xD0, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0xD9, + 0xF4, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD6, + 0xD7, + 0xD9, + 0xD9, + 0xD2, + 0xDF, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xE1, + 0xDC, + 0xD8, + 0xDC, + 0xD0, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD6, + 0xD5, + 0xD8, + 0xF1, + 0xEF, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD5, + 0xD7, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x55, + 0x12, + 0xDC, + 0xD8, + 0xDC, + 0xD6, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xDF, + 0xD7, + 0xD9, + 0xDB, + 0xDE, + 0x5D, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xE1, + 0xDD, + 0x04, + 0xDB, + 0xDE, + 0x59, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x5B, + 0xD0, + 0xF1, + 0xD8, + 0xD9, + 0xD7, + 0xD6, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xDC, + 0xDE, + 0xFA, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF5, + 0x16, + 0xD0, + 0xDD, + 0xD8, + 0xD9, + 0xD7, + 0xE1, + 0x58, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xDB, + 0xD7, + 0xD0, + 0x5E, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x0A, + 0xD7, + 0xD9, + 0x04, + 0xD9, + 0xD7, + 0xD6, + 0x59, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xDE, + 0x04, + 0x5A, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0xD3, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0x58, + 0xE1, + 0xD3, + 0xD8, + 0xD8, + 0xF1, + 0xE1, + 0x59, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xDC, + 0xD0, + 0xFA, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x60, + 0xDE, + 0xDD, + 0xDA, + 0xD8, + 0xDC, + 0xD0, + 0xFA, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xD9, + 0xD3, + 0xD0, + 0xFA, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x60, + 0xD2, + 0xD9, + 0xDB, + 0xDE, + 0x5A, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x0D, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xD9, + 0xDE, + 0x00, + 0xD6, + 0x04, + 0x55, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0xD8, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xD5, + 0xD2, + 0x00, + 0xF7, + 0xD8, + 0xD2, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0xDA, + 0x56, + 0x00, + 0xE1, + 0x04, + 0x56, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x16, + 0x04, + 0x5E, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xDE, + 0x17, + 0x00, + 0x00, + 0xD7, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDB, + 0xEF, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xDE, + 0x04, + 0xD7, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0xE1, + 0xF1, + 0xD9, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xF2, + 0xD8, + 0x17, + 0x00, + 0x04, + 0xDE, + 0x00, + 0xD8, + 0xDC, + 0xD6, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFF, + 0xFF, + 0xFF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0x04, + 0xF2, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x00, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD6, + 0xD2, + 0x53, + 0xD0, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDE, + 0x16, + 0xB3, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x5E, + 0x3B, + 0xFF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0xDE, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x55, + 0x00, + 0xF6, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFF, + 0xFF, + 0xFF, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xFF, + 0xFF, + 0xFF, + 0x00, + 0x00, + 0x49, + 0x04, + 0x00, + 0x00, + 0x1B, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x06, + 0x74, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x3B, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x60, + 0x58, + 0x58, + 0x60, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x3B, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x53, + 0xB8, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x3B, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x60, + 0x04, + 0x60, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x57, + 0x16, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x00, + 0x56, + 0xD7, + 0xD9, + 0xDB, + 0xDF, + 0xF3, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xF6, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF6, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x53, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x3B, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF4, + 0x00, + 0x17, + 0x04, + 0x17, + 0x00, + 0xF4, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x16, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x53, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x54, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xF6, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xB3, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x3B, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x53, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0xF3, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x53, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF5, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x53, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x3B, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x57, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF5, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x55, + 0x54, + 0x54, + 0x55, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0xF6, + 0x54, + 0x00, + 0xF3, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xEF, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0xB8, + 0xF3, + 0x00, + 0x00, + 0xF3, + 0xB8, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x54, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x04, + 0x04, + 0x04, + 0xDD, + 0xF7, + 0x53, + 0x54, + 0xB3, + 0x56, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0xF5, + 0x00, + 0x00, + 0xF5, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x57, + 0xF3, + 0x00, + 0x00, + 0xF5, + 0x16, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0xF7, + 0x53, + 0x54, + 0x53, + 0xB8, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xDA, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x17, + 0x55, + 0x53, + 0x54, + 0x53, + 0xF3, + 0xB8, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xF7, + 0x04, + 0x00, + 0x00, + 0x54, + 0x53, + 0x53, + 0x54, + 0xF4, + 0xB8, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xFA, + 0xF6, + 0x53, + 0x54, + 0x00, + 0x53, + 0xF7, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x54, + 0x53, + 0x53, + 0x00, + 0x53, + 0x55, + 0x5C, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x54, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x57, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0xF7, + 0xF3, + 0x00, + 0x54, + 0x53, + 0xF6, + 0x5A, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xDB, + 0xF7, + 0x53, + 0x00, + 0x46, + 0xB8, + 0xD8, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x17, + 0x04, + 0x00, + 0x00, + 0x54, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x55, + 0x53, + 0x54, + 0x53, + 0xB3, + 0xF7, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0xF7, + 0xB3, + 0x00, + 0x54, + 0xB3, + 0xF7, + 0xD6, + 0x04, + 0xDA, + 0x57, + 0xF3, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x54, + 0xDB, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xB8, + 0xF3, + 0x54, + 0x54, + 0xF6, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xB8, + 0xF3, + 0x54, + 0x53, + 0xF5, + 0x5C, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x00, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x54, + 0x54, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x04, + 0x57, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x57, + 0x04, + 0x04, + 0xDA, + 0xF4, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xF7, + 0xB3, + 0x54, + 0x54, + 0xF3, + 0x57, + 0xDA, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xD7, + 0xF7, + 0x53, + 0x54, + 0x53, + 0x55, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0xF7, + 0xB3, + 0x54, + 0x00, + 0xF4, + 0x59, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0xB8, + 0xF3, + 0x54, + 0x54, + 0xF3, + 0x57, + 0xDA, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x55, + 0x53, + 0x54, + 0x53, + 0x55, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0C, + 0x55, + 0x53, + 0x54, + 0x53, + 0xF7, + 0xDC, + 0x04, + 0xB3, + 0xF3, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x55, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xDE, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0C, + 0x55, + 0x53, + 0x54, + 0x54, + 0xF6, + 0xEF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xD2, + 0x55, + 0x54, + 0x54, + 0x53, + 0x55, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0C, + 0x55, + 0x54, + 0x54, + 0x53, + 0x55, + 0xD2, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xF6, + 0x54, + 0x00, + 0xF5, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0xF5, + 0x54, + 0x54, + 0x53, + 0xB8, + 0xD4, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x54, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x51, + 0x00, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x54, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x3B, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x55, + 0x04, + 0x04, + 0x04, + 0xFA, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xF4, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFA, + 0x00, + 0xD9, + 0x04, + 0x04, + 0xDB, + 0x54, + 0x00, + 0x55, + 0xF7, + 0x00, + 0x54, + 0xD5, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x54, + 0xF7, + 0xF7, + 0xB3, + 0x00, + 0xF6, + 0xD4, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x54, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5C, + 0x54, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0x00, + 0xF5, + 0xF7, + 0xF7, + 0xF4, + 0x00, + 0x54, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x53, + 0x00, + 0x54, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x04, + 0x04, + 0x0A, + 0x00, + 0x00, + 0x55, + 0xB8, + 0xF5, + 0x00, + 0x53, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0xF5, + 0x00, + 0xF3, + 0xF7, + 0xF7, + 0x53, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x53, + 0x00, + 0xF3, + 0xF7, + 0xF7, + 0x53, + 0x00, + 0xF5, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0x00, + 0x55, + 0xB8, + 0xF6, + 0x00, + 0x54, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x59, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x5A, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x53, + 0x00, + 0x53, + 0x55, + 0xB8, + 0xB8, + 0xF6, + 0x54, + 0x00, + 0xF6, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDC, + 0x04, + 0x00, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xF7, + 0xF4, + 0x00, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0xC6, + 0x09, + 0x54, + 0xF6, + 0xB8, + 0xF7, + 0xF6, + 0x00, + 0x00, + 0xF4, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xF7, + 0xF6, + 0x53, + 0x00, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xD0, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xF3, + 0x00, + 0x00, + 0xF6, + 0xF7, + 0xB8, + 0x55, + 0x54, + 0x00, + 0x54, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xD9, + 0x54, + 0x00, + 0xF6, + 0xB8, + 0xF5, + 0x00, + 0xF3, + 0xD4, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x00, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xF3, + 0x00, + 0x00, + 0xF6, + 0xB8, + 0xB8, + 0xF6, + 0x09, + 0x09, + 0xF3, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF4, + 0x00, + 0x00, + 0xF5, + 0xF7, + 0xB8, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0xF5, + 0x5B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0xD6, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x54, + 0x00, + 0xF4, + 0xB8, + 0xF7, + 0x53, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x00, + 0xF4, + 0xB8, + 0xF7, + 0xB3, + 0x54, + 0xF3, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF3, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x54, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x04, + 0xF3, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x00, + 0xF5, + 0xB8, + 0xF7, + 0xF4, + 0x00, + 0xB3, + 0xD5, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x5D, + 0x00, + 0x00, + 0x55, + 0xB8, + 0x55, + 0x54, + 0x00, + 0xF7, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x00, + 0xF6, + 0xB8, + 0xF7, + 0xB3, + 0x00, + 0x53, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x54, + 0x00, + 0xF5, + 0xB8, + 0xF7, + 0xF4, + 0x00, + 0xB3, + 0xDB, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x55, + 0xB8, + 0x55, + 0x54, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0xF7, + 0x00, + 0x00, + 0x55, + 0xB8, + 0x55, + 0x00, + 0x00, + 0xE1, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xF5, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0xDE, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0xD4, + 0xF7, + 0x00, + 0x00, + 0x55, + 0xB8, + 0x55, + 0x54, + 0x00, + 0xF6, + 0xD4, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x5A, + 0x00, + 0x54, + 0x55, + 0xB8, + 0x55, + 0x54, + 0x00, + 0xF7, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0x54, + 0x55, + 0xB8, + 0x55, + 0x00, + 0x00, + 0x5B, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x00, + 0xF7, + 0xF7, + 0x54, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x00, + 0x55, + 0xB8, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0xF3, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0xF7, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFE, + 0xFF, + 0xF9, + 0x04, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x53, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF5, + 0xDC, + 0x04, + 0xD7, + 0xF3, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x53, + 0x56, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDE, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x55, + 0xDA, + 0xE1, + 0x00, + 0xF6, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xB8, + 0x04, + 0xEF, + 0x00, + 0x53, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x54, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x54, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x53, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xDB, + 0xB3, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xB3, + 0xDB, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x54, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xF7, + 0x04, + 0x04, + 0xDA, + 0x53, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF4, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0x53, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x55, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xB8, + 0x54, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x54, + 0xB8, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xC6, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0xF6, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x53, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0xF3, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xC6, + 0x54, + 0x16, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x58, + 0x00, + 0x54, + 0xD7, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xF6, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x00, + 0x54, + 0x5A, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x53, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xF7, + 0x00, + 0xEF, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x59, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xF4, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xEF, + 0x00, + 0x54, + 0x5C, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x16, + 0xC6, + 0x00, + 0xEF, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x56, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x54, + 0x54, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x00, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x00, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xF5, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x53, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x55, + 0xD8, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xF5, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xF5, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x53, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xB8, + 0x53, + 0xF7, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xF7, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x54, + 0x53, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x54, + 0xDE, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xF7, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xB8, + 0x54, + 0xF6, + 0xDA, + 0x04, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xF7, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xDD, + 0x04, + 0x04, + 0xDD, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xF4, + 0xD8, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x53, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x55, + 0x54, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xC8, + 0xFF, + 0xFE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0xD8, + 0x04, + 0x04, + 0xD4, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x53, + 0xD4, + 0x04, + 0x54, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0x04, + 0xF6, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xB8, + 0x54, + 0xF3, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xD9, + 0xF3, + 0x00, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x54, + 0xEF, + 0x04, + 0x00, + 0x00, + 0x54, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x00, + 0x00, + 0x54, + 0x53, + 0x04, + 0xD6, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD7, + 0x04, + 0x57, + 0x00, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5C, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x53, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x55, + 0x00, + 0x00, + 0xF4, + 0xEF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xEF, + 0xF4, + 0x00, + 0x00, + 0xF7, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xFA, + 0x04, + 0xDA, + 0xD5, + 0xDA, + 0x04, + 0x04, + 0xDA, + 0xD5, + 0x00, + 0x00, + 0xB8, + 0xDB, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x54, + 0xD6, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x57, + 0x04, + 0x04, + 0x16, + 0x09, + 0xF3, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x54, + 0x53, + 0xD9, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0xF3, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF4, + 0x00, + 0x59, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF5, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x54, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xEF, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xDE, + 0x00, + 0xB3, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF3, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x00, + 0x00, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0xF5, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xE1, + 0x04, + 0xD2, + 0x00, + 0xF5, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0xF5, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xF5, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x54, + 0x00, + 0xF6, + 0xDA, + 0xD2, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x17, + 0x04, + 0xD4, + 0xF3, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0xDE, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0xD0, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDF, + 0x04, + 0x00, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xE1, + 0x04, + 0xD0, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF5, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0xF4, + 0xF4, + 0xD7, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xFA, + 0x04, + 0x0A, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0x00, + 0x00, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE3, + 0x3B, + 0x6E, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x53, + 0x59, + 0x04, + 0x54, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x00, + 0xF4, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF5, + 0x00, + 0x16, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF7, + 0x04, + 0x09, + 0x00, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x53, + 0x54, + 0xB8, + 0xB8, + 0x04, + 0xF7, + 0x53, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0x56, + 0x04, + 0xF3, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0xF5, + 0x00, + 0x00, + 0xF6, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xF6, + 0x00, + 0x00, + 0xF5, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x16, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xFA, + 0x04, + 0x59, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xDC, + 0x53, + 0x00, + 0x00, + 0x54, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x53, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0xDA, + 0x54, + 0x54, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0xF7, + 0xDF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD5, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x54, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x53, + 0x00, + 0xD9, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xD0, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF4, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0xDA, + 0xD0, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF3, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0xDA, + 0x53, + 0x54, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x54, + 0x53, + 0xD4, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x56, + 0x00, + 0xB3, + 0xDD, + 0xDE, + 0x54, + 0xB3, + 0xDA, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x54, + 0x54, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFA, + 0x53, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDB, + 0x04, + 0x53, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0x57, + 0xDD, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x00, + 0x00, + 0xEF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD7, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF3, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xFA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xDF, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x55, + 0x04, + 0xF7, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0xF6, + 0x04, + 0xF7, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x5C, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0xD3, + 0x55, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xDE, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x55, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF6, + 0x04, + 0x55, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xB3, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0xDF, + 0x04, + 0xF7, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDA, + 0x0A, + 0x00, + 0xDE, + 0x04, + 0xD9, + 0x00, + 0x58, + 0x04, + 0xF3, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD3, + 0x53, + 0xF3, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x54, + 0x5A, + 0xDE, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF3, + 0x54, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD4, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x3B, + 0xF7, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xF7, + 0x00, + 0xF6, + 0xB8, + 0xB8, + 0xB8, + 0x53, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0x04, + 0xEF, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x53, + 0x04, + 0x55, + 0x00, + 0xD7, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x55, + 0x04, + 0x54, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0xF6, + 0x54, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x16, + 0x54, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x59, + 0x56, + 0x5C, + 0x00, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x5A, + 0xB3, + 0x00, + 0x00, + 0xF7, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF7, + 0x00, + 0x00, + 0xF3, + 0xFA, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0xF6, + 0x04, + 0xD0, + 0x00, + 0xB3, + 0x5A, + 0x58, + 0xB3, + 0x00, + 0x00, + 0xD7, + 0xD9, + 0xB8, + 0xC6, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x59, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x56, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xFA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x56, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x00, + 0x00, + 0x5D, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x54, + 0xB8, + 0x04, + 0x04, + 0xF3, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD7, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x16, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0xF9, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0x00, + 0xD2, + 0xDA, + 0x04, + 0xDA, + 0xD7, + 0x57, + 0x53, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x16, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD4, + 0xF4, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x57, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xD2, + 0x04, + 0x53, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDA, + 0xDA, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0xF3, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x54, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x53, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x54, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF6, + 0x04, + 0x53, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0xDE, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x54, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x54, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xF6, + 0x54, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x54, + 0xDA, + 0x04, + 0xD7, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF7, + 0x04, + 0xDA, + 0x00, + 0xB8, + 0x04, + 0x5C, + 0x00, + 0xDD, + 0x04, + 0x5A, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x54, + 0x00, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD8, + 0x04, + 0xF4, + 0x53, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0xD9, + 0x04, + 0x04, + 0xB8, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xF6, + 0x00, + 0xF5, + 0xD5, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x3B, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x54, + 0x53, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xF7, + 0x00, + 0x54, + 0xDB, + 0x04, + 0xF6, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x53, + 0x53, + 0x53, + 0x54, + 0x00, + 0x00, + 0x53, + 0x53, + 0x53, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xC6, + 0xF7, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0xDA, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0xF7, + 0x04, + 0x04, + 0xD4, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0x00, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0x00, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0xE1, + 0x04, + 0xF7, + 0x00, + 0xDD, + 0x04, + 0x04, + 0xDA, + 0xF4, + 0x00, + 0x0A, + 0x04, + 0x04, + 0xFA, + 0xF3, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0x00, + 0x53, + 0x53, + 0x53, + 0x53, + 0x54, + 0x00, + 0x00, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x57, + 0x04, + 0xF5, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF4, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xF7, + 0x00, + 0xF3, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x17, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x5D, + 0x54, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0x57, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xF6, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x00, + 0x00, + 0x53, + 0x54, + 0x00, + 0x00, + 0x00, + 0xF4, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x00, + 0x57, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0xD6, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF4, + 0x04, + 0x04, + 0xF5, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x00, + 0x00, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFA, + 0x00, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x57, + 0x53, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x54, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0xD2, + 0x00, + 0x00, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x54, + 0xDE, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x16, + 0xF5, + 0x54, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x55, + 0x53, + 0x04, + 0xF5, + 0xF3, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x54, + 0xF7, + 0x04, + 0x04, + 0x16, + 0x09, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0x00, + 0x16, + 0x04, + 0xDF, + 0x00, + 0x16, + 0xDA, + 0xD0, + 0xF5, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xD9, + 0x04, + 0x04, + 0xFC, + 0x3B, + 0xE3, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x04, + 0xDB, + 0x55, + 0x54, + 0x54, + 0x55, + 0xD5, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x53, + 0xDC, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x55, + 0x04, + 0x58, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x54, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x53, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x54, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x16, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x56, + 0x04, + 0xF6, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x00, + 0xEF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDF, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x55, + 0xD7, + 0x04, + 0xDA, + 0xD6, + 0xB3, + 0xC6, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0x00, + 0x09, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x53, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x54, + 0xDA, + 0x04, + 0x55, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x54, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x55, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x55, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x55, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0xB3, + 0x00, + 0xD9, + 0x04, + 0x54, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x53, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x53, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0x04, + 0x00, + 0x00, + 0x54, + 0x53, + 0x53, + 0x53, + 0x54, + 0xF4, + 0x59, + 0xDA, + 0x04, + 0x04, + 0x53, + 0xB3, + 0xD9, + 0xDF, + 0x57, + 0xB8, + 0x57, + 0x17, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x53, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xD5, + 0x55, + 0xF6, + 0xF3, + 0x00, + 0x00, + 0xF5, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x57, + 0x00, + 0x54, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x04, + 0x0A, + 0x00, + 0x03, + 0x04, + 0x04, + 0xDD, + 0x00, + 0x57, + 0x04, + 0x04, + 0x57, + 0x54, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x53, + 0x00, + 0x00, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xD8, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x53, + 0x04, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF6, + 0xDA, + 0x54, + 0x00, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x59, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xDE, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x53, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x53, + 0x04, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF3, + 0x00, + 0xB3, + 0x59, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x53, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0xD0, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x55, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0x54, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xDE, + 0x04, + 0x04, + 0xDA, + 0x53, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0x00, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x00, + 0x5D, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xF2, + 0xDA, + 0xDF, + 0x09, + 0xF7, + 0x04, + 0x04, + 0x3B, + 0x3B, + 0x45, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xDA, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xB8, + 0x54, + 0x00, + 0xB3, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0x00, + 0xB8, + 0x55, + 0x00, + 0xF7, + 0x04, + 0x04, + 0xDA, + 0x53, + 0x53, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x54, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xB3, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD7, + 0x04, + 0xDF, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF4, + 0x00, + 0x58, + 0xD9, + 0x04, + 0xD5, + 0xF7, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x17, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB3, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x16, + 0xF3, + 0x00, + 0x00, + 0x55, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF7, + 0x00, + 0x00, + 0xF4, + 0x16, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x54, + 0x54, + 0xF2, + 0x04, + 0x04, + 0x00, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xD9, + 0x04, + 0x04, + 0xD2, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xF7, + 0xF4, + 0x00, + 0x54, + 0xD0, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0x00, + 0x54, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x04, + 0x04, + 0x00, + 0x00, + 0x54, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x57, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x54, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x53, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xD2, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x5A, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x55, + 0x54, + 0x00, + 0xF4, + 0xDA, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x59, + 0x53, + 0xF3, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x5A, + 0xF5, + 0x00, + 0x00, + 0xF5, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x5B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x17, + 0x04, + 0x04, + 0xDA, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x5A, + 0x00, + 0xD2, + 0x04, + 0x04, + 0xD7, + 0x54, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xE1, + 0xF7, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x53, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x16, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x55, + 0xDA, + 0x55, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xDA, + 0x04, + 0x04, + 0x55, + 0x54, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x00, + 0xF6, + 0xDA, + 0xF6, + 0x00, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0x04, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xDC, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x54, + 0xDA, + 0xF6, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x55, + 0x04, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x55, + 0xDA, + 0x55, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0xDA, + 0x54, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x53, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x54, + 0xEF, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0xF3, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x54, + 0x57, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0xEF, + 0x56, + 0x17, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x16, + 0xD7, + 0x04, + 0x04, + 0x3B, + 0x3B, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xF5, + 0x00, + 0x00, + 0x00, + 0xF7, + 0xD8, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xD0, + 0x57, + 0x57, + 0xD0, + 0x04, + 0xDA, + 0xF6, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x55, + 0x00, + 0x00, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x54, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0B, + 0xF7, + 0xF4, + 0x00, + 0xB3, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x53, + 0xDA, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xEF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x00, + 0x54, + 0x54, + 0x00, + 0x00, + 0x00, + 0xDA, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x59, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xF6, + 0x00, + 0x00, + 0xF6, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xF6, + 0x00, + 0x00, + 0xF5, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x54, + 0x00, + 0xDB, + 0x04, + 0x00, + 0xD8, + 0x04, + 0xD0, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x58, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x00, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x04, + 0x04, + 0x00, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xD0, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x53, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xFA, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xB3, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x54, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0x57, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x53, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x60, + 0x04, + 0x04, + 0xDA, + 0x57, + 0x00, + 0x00, + 0xF3, + 0x57, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xF5, + 0xB3, + 0x04, + 0x04, + 0xF6, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0xF4, + 0x04, + 0xD9, + 0x54, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x54, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x54, + 0xF5, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x53, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0xD0, + 0x04, + 0xDE, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x54, + 0xF5, + 0x04, + 0x04, + 0xDE, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x54, + 0x00, + 0xF6, + 0x04, + 0xE1, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0x00, + 0x04, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF7, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD8, + 0x53, + 0xC6, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDA, + 0x04, + 0x00, + 0x00, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xF6, + 0x04, + 0xD6, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0xE1, + 0x04, + 0x00, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0xD0, + 0x04, + 0xD0, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0x00, + 0x04, + 0x00, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDA, + 0x04, + 0x04, + 0xDA, + 0x17, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x17, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x54, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x54, + 0x57, + 0x04, + 0x5D, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x54, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3C, + 0x3B, + 0x3B, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xD0, + 0x16, + 0x00, + 0x56, + 0xD0, + 0xD0, + 0xD0, + 0x00, + 0xF4, + 0xD0, + 0xD0, + 0x04, + 0xDA, + 0x53, + 0x54, + 0xF3, + 0xFA, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x54, + 0x00, + 0x00, + 0x54, + 0x55, + 0xDA, + 0xD0, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x54, + 0xF6, + 0x54, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x53, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x00, + 0x00, + 0xEF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF7, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0xB3, + 0xF7, + 0xF7, + 0x53, + 0x00, + 0xF5, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x54, + 0x00, + 0xF4, + 0xB8, + 0xF7, + 0xB3, + 0x00, + 0xF5, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x54, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x00, + 0xF5, + 0xB8, + 0xF6, + 0x00, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x54, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0xF7, + 0x00, + 0x00, + 0xF3, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0xF4, + 0x00, + 0x00, + 0xF7, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0xF7, + 0x04, + 0xF4, + 0xD6, + 0x04, + 0x04, + 0xF3, + 0x54, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xB3, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xEF, + 0x53, + 0x54, + 0xD9, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xD0, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xDA, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xF5, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0xF3, + 0x04, + 0xF4, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0xF5, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF7, + 0x04, + 0x04, + 0xFA, + 0x00, + 0xF6, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xDB, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xD0, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0xD4, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xF5, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0xB3, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0xC6, + 0x55, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xF6, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x54, + 0x54, + 0xD5, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xF6, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x53, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x55, + 0x00, + 0xB8, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xB8, + 0x54, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xB8, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x04, + 0x00, + 0x00, + 0xF3, + 0xDB, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF3, + 0x00, + 0xD2, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x55, + 0xD4, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0x00, + 0x53, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x5C, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x00, + 0x00, + 0xF3, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xF3, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x55, + 0x00, + 0xF7, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0x55, + 0x04, + 0x04, + 0x00, + 0x00, + 0xC6, + 0xF7, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xF7, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x54, + 0x00, + 0x00, + 0x04, + 0x00, + 0x00, + 0xF5, + 0xD4, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xD0, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0xF5, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5E, + 0x09, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFF, + 0xD8, + 0x3E, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0xDA, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x54, + 0x54, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x5A, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0xB8, + 0xD8, + 0xDA, + 0xB8, + 0x54, + 0x56, + 0x04, + 0xF4, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0xB8, + 0x04, + 0xD8, + 0xF6, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0xB6, + 0xD0, + 0x04, + 0xDE, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x54, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xF6, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xD2, + 0xF4, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xDE, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5A, + 0x54, + 0x57, + 0xF6, + 0x54, + 0x00, + 0xF4, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x54, + 0x00, + 0x53, + 0x00, + 0xF3, + 0x59, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xDC, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x55, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x56, + 0x54, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x00, + 0x54, + 0x56, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x57, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0x04, + 0x57, + 0xF5, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xB3, + 0xD5, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x00, + 0xDE, + 0x04, + 0xDE, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x53, + 0x04, + 0x04, + 0x04, + 0xB3, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x56, + 0x04, + 0x04, + 0x58, + 0x00, + 0xFA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x56, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xF6, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x5A, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0xD4, + 0xF3, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xFA, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x54, + 0x16, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0x04, + 0xB8, + 0x54, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x57, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xF3, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x58, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x00, + 0x00, + 0x00, + 0x16, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x54, + 0xDC, + 0xD9, + 0x00, + 0xF3, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0x59, + 0x04, + 0x04, + 0x5D, + 0x54, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x00, + 0xF5, + 0xF7, + 0xF7, + 0xF3, + 0x00, + 0xB3, + 0xD5, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0x0B, + 0x00, + 0x00, + 0x55, + 0xB8, + 0x55, + 0x54, + 0x00, + 0xF7, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x00, + 0xF6, + 0xB8, + 0xF7, + 0xF3, + 0x00, + 0x53, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x54, + 0xF6, + 0xB8, + 0xF7, + 0xF3, + 0x00, + 0x53, + 0xD2, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0x00, + 0x55, + 0xB8, + 0x55, + 0x54, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xB8, + 0x54, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0x54, + 0x55, + 0xB8, + 0x55, + 0x00, + 0x00, + 0x0A, + 0xF6, + 0x00, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0xB8, + 0x55, + 0x00, + 0x00, + 0x58, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0x53, + 0xF7, + 0xF7, + 0x53, + 0x00, + 0x5A, + 0xDC, + 0x54, + 0x00, + 0x55, + 0xB8, + 0xF5, + 0x53, + 0xF3, + 0xD9, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF6, + 0xB8, + 0xF6, + 0x00, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0x00, + 0x55, + 0xB8, + 0x55, + 0x54, + 0x00, + 0xF6, + 0xD4, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x0B, + 0x00, + 0x00, + 0x55, + 0xB8, + 0x55, + 0x54, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF7, + 0x00, + 0x00, + 0x55, + 0xB8, + 0x55, + 0x54, + 0x00, + 0x59, + 0xF6, + 0x00, + 0x04, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF7, + 0xD7, + 0x04, + 0xDB, + 0x54, + 0x00, + 0xF7, + 0xF7, + 0x00, + 0x54, + 0xD9, + 0x04, + 0xB8, + 0xB8, + 0xB8, + 0x54, + 0x53, + 0xB8, + 0xB8, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0xDC, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xDA, + 0x04, + 0xD0, + 0x00, + 0xFA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x16, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0x59, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0xDD, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0xF3, + 0xDA, + 0x04, + 0xDC, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x57, + 0x04, + 0x04, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xF7, + 0x00, + 0x53, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFF, + 0xF9, + 0x94, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0xF6, + 0x00, + 0x04, + 0xD9, + 0xD9, + 0xD9, + 0xF5, + 0xF5, + 0xD9, + 0xD9, + 0xD9, + 0x58, + 0x00, + 0xD7, + 0xD9, + 0xDA, + 0x55, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x53, + 0x04, + 0xDF, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x54, + 0xDA, + 0x04, + 0x04, + 0xDA, + 0x53, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x57, + 0x53, + 0xD9, + 0x53, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF7, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x53, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0x04, + 0x04, + 0xD4, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xB3, + 0xF3, + 0xD4, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x00, + 0x04, + 0x04, + 0xF3, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x5B, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0x5B, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0xD9, + 0x00, + 0x5A, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x00, + 0x55, + 0xB8, + 0x53, + 0xF5, + 0xF3, + 0xF7, + 0x04, + 0xF5, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x17, + 0x04, + 0xE1, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x55, + 0x04, + 0x04, + 0xD8, + 0x09, + 0x53, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0xB8, + 0xD0, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0xD5, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x54, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xF7, + 0x56, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x53, + 0x54, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xD5, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0xB3, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xB8, + 0x00, + 0xFA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xDA, + 0xB3, + 0xC6, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x53, + 0xDA, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0xD5, + 0x00, + 0x53, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x53, + 0x00, + 0xD9, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0xEF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x53, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x00, + 0x00, + 0xC6, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x54, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x54, + 0x57, + 0x04, + 0x04, + 0xFA, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x54, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xB3, + 0x04, + 0x04, + 0xF3, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF7, + 0xF3, + 0x00, + 0x00, + 0xF4, + 0x59, + 0xDA, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xD3, + 0xF7, + 0x53, + 0x00, + 0x54, + 0x55, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0xF7, + 0xB3, + 0x00, + 0x00, + 0xF4, + 0x59, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0xB8, + 0xF3, + 0x00, + 0x00, + 0xF4, + 0x57, + 0xDA, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x55, + 0x53, + 0x00, + 0x53, + 0x55, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0xF6, + 0x53, + 0x00, + 0x53, + 0xF7, + 0xD5, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x56, + 0xB3, + 0x00, + 0x54, + 0x55, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x0A, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0xD9, + 0x55, + 0x54, + 0x00, + 0xF5, + 0xD6, + 0x04, + 0x04, + 0xDB, + 0x55, + 0x54, + 0x00, + 0xB3, + 0xB8, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x59, + 0xF3, + 0x00, + 0x54, + 0xF6, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x55, + 0x53, + 0x00, + 0x54, + 0xF6, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xD3, + 0xF7, + 0x53, + 0x00, + 0x54, + 0xF6, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x55, + 0x53, + 0x00, + 0x53, + 0x55, + 0xD2, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xD7, + 0xF3, + 0x54, + 0x57, + 0x04, + 0x04, + 0xDC, + 0xF6, + 0x00, + 0x54, + 0xF6, + 0xDD, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0xB8, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x16, + 0x04, + 0xF7, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0xF3, + 0x04, + 0x04, + 0x59, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x60, + 0x00, + 0x56, + 0x04, + 0xB8, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x54, + 0xDA, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x9E, + 0xFF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0xD0, + 0x04, + 0xDA, + 0x55, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0xF3, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x53, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD8, + 0x54, + 0x53, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDA, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x5C, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x55, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xF5, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x54, + 0xD9, + 0x04, + 0x04, + 0x54, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0x04, + 0x04, + 0x57, + 0x00, + 0xEF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF2, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x17, + 0x00, + 0x5C, + 0x04, + 0x04, + 0xD5, + 0xF7, + 0x54, + 0x00, + 0xF6, + 0xD9, + 0x04, + 0x04, + 0x00, + 0x53, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF4, + 0x04, + 0xF6, + 0x53, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x16, + 0x00, + 0xF4, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x54, + 0x54, + 0xD9, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xF4, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF3, + 0x00, + 0x0A, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF3, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0xDE, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD2, + 0x00, + 0xF3, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x53, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x57, + 0x00, + 0xF5, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF4, + 0x53, + 0x5D, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xFA, + 0x04, + 0x04, + 0x53, + 0x53, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD6, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x54, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x53, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0xEF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xE1, + 0xDE, + 0x54, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFF, + 0x54, + 0x41, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0xDB, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x57, + 0x04, + 0x04, + 0x59, + 0x00, + 0xDE, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x54, + 0xF5, + 0x04, + 0xF6, + 0x00, + 0xD7, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x5B, + 0x54, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD5, + 0x04, + 0x04, + 0xDD, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0xF4, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x53, + 0x54, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x53, + 0x54, + 0x00, + 0x00, + 0x00, + 0x53, + 0x54, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x54, + 0xD6, + 0x04, + 0x04, + 0xDD, + 0x00, + 0x53, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0x53, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0xD2, + 0x00, + 0xF3, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF4, + 0x00, + 0xDE, + 0x04, + 0x04, + 0xB8, + 0x54, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x58, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFA, + 0x00, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x55, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x55, + 0x04, + 0x04, + 0xDA, + 0x53, + 0x54, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x54, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0xF6, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0xF3, + 0x54, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x54, + 0x5A, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x56, + 0x00, + 0x53, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x5A, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0xF4, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x00, + 0x54, + 0x16, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x53, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x53, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x00, + 0x54, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x00, + 0x54, + 0x5B, + 0xD4, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x58, + 0x00, + 0x00, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x55, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x53, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x53, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xFA, + 0x00, + 0x53, + 0xDA, + 0x04, + 0x04, + 0x56, + 0x00, + 0x56, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF6, + 0x54, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x53, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x16, + 0x00, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x54, + 0xD7, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF3, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xD2, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x00, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5B, + 0x54, + 0x5B, + 0x04, + 0x04, + 0xD8, + 0x54, + 0x54, + 0xD7, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x54, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0xC6, + 0xF3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x16, + 0x60, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x55, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x54, + 0x55, + 0xDA, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x3B, + 0x59, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0xD6, + 0x04, + 0x04, + 0x04, + 0xB3, + 0x55, + 0x04, + 0x04, + 0xDA, + 0x53, + 0xB3, + 0xD2, + 0x04, + 0xD9, + 0x55, + 0x00, + 0xEF, + 0x04, + 0xDC, + 0x54, + 0x00, + 0xF7, + 0xF7, + 0x00, + 0x54, + 0xDC, + 0x04, + 0x04, + 0xDA, + 0x54, + 0x56, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD2, + 0x00, + 0x54, + 0xF7, + 0xF7, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0x53, + 0xD7, + 0x04, + 0xDE, + 0x54, + 0x54, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xB8, + 0x54, + 0x00, + 0x00, + 0xB8, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x0A, + 0x00, + 0x54, + 0xF5, + 0xF7, + 0xF7, + 0xF3, + 0x00, + 0x53, + 0xD3, + 0x04, + 0x04, + 0xB8, + 0xB8, + 0xB8, + 0x54, + 0xF6, + 0xDA, + 0x04, + 0x5C, + 0x00, + 0x00, + 0x55, + 0xB8, + 0x55, + 0x00, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x53, + 0x00, + 0xF6, + 0xB8, + 0xF5, + 0x53, + 0xF3, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x54, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x55, + 0x54, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x54, + 0x00, + 0x04, + 0x04, + 0xD9, + 0x53, + 0x54, + 0xF6, + 0xB8, + 0xF6, + 0x54, + 0x53, + 0xD9, + 0x04, + 0x04, + 0x04, + 0xD3, + 0x53, + 0x00, + 0xF5, + 0xB8, + 0xF7, + 0x53, + 0x00, + 0xF6, + 0xD4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x54, + 0x00, + 0xF4, + 0xB8, + 0xF7, + 0x54, + 0x00, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0x53, + 0x00, + 0x53, + 0x55, + 0xB8, + 0xF7, + 0xF6, + 0x54, + 0x00, + 0xF5, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0x00, + 0x00, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0x55, + 0x53, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x17, + 0x54, + 0x00, + 0x54, + 0x55, + 0xB8, + 0xF7, + 0xF6, + 0x00, + 0x00, + 0xF4, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xF7, + 0xF5, + 0x54, + 0x00, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xD0, + 0x04, + 0x00, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x54, + 0x00, + 0xF6, + 0xB8, + 0xB8, + 0x55, + 0x54, + 0x00, + 0xF3, + 0xDE, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0x56, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x54, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xD3, + 0xF4, + 0x00, + 0x00, + 0xF6, + 0xF7, + 0xF7, + 0xF6, + 0x00, + 0x00, + 0xF3, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xF7, + 0xF6, + 0x00, + 0x00, + 0xF4, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5C, + 0x54, + 0x00, + 0x54, + 0xF6, + 0xB8, + 0xF7, + 0xF6, + 0x00, + 0x00, + 0x54, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xF7, + 0xF6, + 0x00, + 0x00, + 0x53, + 0xDC, + 0x04, + 0x04, + 0x04, + 0xDA, + 0xF5, + 0x53, + 0xF3, + 0xF7, + 0xF7, + 0x54, + 0x00, + 0xB8, + 0x04, + 0x04, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x54, + 0x53, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xDB, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x59, + 0x54, + 0xDF, + 0x04, + 0xD6, + 0x00, + 0x16, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD7, + 0x00, + 0x57, + 0x04, + 0x04, + 0x58, + 0x00, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x54, + 0x56, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x53, + 0xB3, + 0x04, + 0x04, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0xB8, + 0x54, + 0x54, + 0x04, + 0x04, + 0x04, + 0xDE, + 0x00, + 0x00, + 0xDF, + 0x04, + 0x04, + 0x5D, + 0x54, + 0xDC, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF4, + 0x54, + 0xB3, + 0xDB, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0x00, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0xF3, + 0x54, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD0, + 0x00, + 0x00, + 0xF6, + 0xB8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x55, + 0xDE, + 0x04, + 0x00, + 0xF6, + 0xDA, + 0xB8, + 0xF3, + 0x00, + 0x5A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x81, + 0xFF, + 0x45, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0xF6, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0x56, + 0x04, + 0x04, + 0x04, + 0x55, + 0x53, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF6, + 0x00, + 0x00, + 0x00, + 0x00, + 0x58, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x55, + 0x54, + 0x54, + 0xF6, + 0xDD, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x54, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF6, + 0x00, + 0x54, + 0xF6, + 0xD3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF6, + 0x58, + 0x04, + 0x58, + 0x55, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x00, + 0x00, + 0x00, + 0xD5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0xD5, + 0xB8, + 0xF3, + 0x00, + 0x00, + 0xF3, + 0x57, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0xD7, + 0xF7, + 0x53, + 0x00, + 0x53, + 0x55, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0xF7, + 0x53, + 0x00, + 0xB3, + 0xB8, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDF, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x57, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x54, + 0xF3, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xB8, + 0x53, + 0x00, + 0x53, + 0xB8, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x56, + 0xF3, + 0x00, + 0x54, + 0xF5, + 0x17, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0xF7, + 0x53, + 0x00, + 0x54, + 0xF6, + 0x0A, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x17, + 0x55, + 0xB3, + 0x00, + 0x00, + 0xF3, + 0xF7, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF7, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xF6, + 0x16, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x5D, + 0xF6, + 0x53, + 0x00, + 0x00, + 0xF3, + 0xF7, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0xF3, + 0x55, + 0x5C, + 0xD8, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x57, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x54, + 0x57, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0xB8, + 0xF3, + 0x00, + 0x00, + 0x00, + 0xF3, + 0xF7, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x00, + 0xDF, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0xB3, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0x00, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x00, + 0x55, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xE1, + 0xF7, + 0xB3, + 0x00, + 0x00, + 0xB3, + 0xF7, + 0xD6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x53, + 0xF6, + 0x16, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x5A, + 0xF6, + 0x53, + 0x00, + 0x00, + 0x53, + 0xF6, + 0xFA, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0xB3, + 0x55, + 0xFA, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD4, + 0x59, + 0xF4, + 0x00, + 0x54, + 0xF5, + 0xDF, + 0x04, + 0x04, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x56, + 0x00, + 0xD0, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0x00, + 0xF5, + 0x04, + 0xF7, + 0x00, + 0xD9, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF3, + 0x00, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x54, + 0xF4, + 0x04, + 0xDD, + 0x00, + 0xF4, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF5, + 0x00, + 0xD7, + 0x04, + 0xF7, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x5D, + 0x00, + 0x5C, + 0x04, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDC, + 0xF5, + 0x58, + 0x04, + 0x04, + 0xF3, + 0xF5, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x53, + 0xB8, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDD, + 0x00, + 0x00, + 0xD7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD8, + 0xF5, + 0x54, + 0xF3, + 0xE1, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD3, + 0xF7, + 0xB3, + 0x00, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD5, + 0xF4, + 0x54, + 0x57, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x00, + 0x53, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x3B, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDB, + 0x00, + 0xF4, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xB8, + 0xF4, + 0x04, + 0x55, + 0xF7, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xF6, + 0x5D, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xEC, + 0xFF, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x00, + 0xF6, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0xD9, + 0x04, + 0xD8, + 0xDA, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x3B, + 0x3B, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x04, + 0x3B, + 0x3B, + 0x3B, + 0x00, + 0x00, +}; diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bitmap.h b/Examples/MAX32655/Demo_2048/ARM/resources/bitmap.h new file mode 100644 index 00000000000..b35c3514e8d --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/resources/bitmap.h @@ -0,0 +1,30 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32655_DEMO_2048_ARM_RESOURCES_BITMAP_H_ +#define EXAMPLES_MAX32655_DEMO_2048_ARM_RESOURCES_BITMAP_H_ + +// bitmaps id + +// fonts id +#define urw_gothic_12_grey_bg_white 0 +#define urw_gothic_12_white_bg_grey 1 +#define urw_gothic_13_grey_bg_white 2 +#define urw_gothic_13_white_bg_grey 3 + +#endif // EXAMPLES_MAX32655_DEMO_2048_ARM_RESOURCES_BITMAP_H_ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/CodeFusion-Studio-FG-Icon_Digital-FullColor.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/CodeFusion-Studio-FG-Icon_Digital-FullColor.bmp new file mode 100644 index 00000000000..48bf5769146 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/CodeFusion-Studio-FG-Icon_Digital-FullColor.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_1024.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_1024.bmp new file mode 100644 index 00000000000..241a318cc7f Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_1024.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_128.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_128.bmp new file mode 100644 index 00000000000..12d129a51a6 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_128.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_16.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_16.bmp new file mode 100644 index 00000000000..3947c8cc7c3 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_16.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_2.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_2.bmp new file mode 100644 index 00000000000..75316025cf3 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_2.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_2048.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_2048.bmp new file mode 100644 index 00000000000..365b77fff22 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_2048.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_256.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_256.bmp new file mode 100644 index 00000000000..64484b7b4f6 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_256.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_32.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_32.bmp new file mode 100644 index 00000000000..af3d8e7011a Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_32.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_4.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_4.bmp new file mode 100644 index 00000000000..cafc2e49df7 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_4.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_512.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_512.bmp new file mode 100644 index 00000000000..57fd76ede1d Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_512.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_64.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_64.bmp new file mode 100644 index 00000000000..d0b3a717008 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_64.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_8.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_8.bmp new file mode 100644 index 00000000000..dc0171451fc Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/clear_sans_bold_8.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/game_over.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/game_over.bmp new file mode 100644 index 00000000000..be134db754c Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/game_over.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/game_over.png b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/game_over.png new file mode 100644 index 00000000000..9f21dc00a6f Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/game_over.png differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/you_win.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/you_win.bmp new file mode 100644 index 00000000000..2b0db5186a6 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/you_win.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/you_win.png b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/you_win.png new file mode 100644 index 00000000000..63f9b10b288 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/bmp_rle/you_win.png differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_12-grey_bg-white.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_12-grey_bg-white.bmp new file mode 100644 index 00000000000..cd2cf93446c Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_12-grey_bg-white.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_12-grey_bg-white.mff b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_12-grey_bg-white.mff new file mode 100644 index 00000000000..b4fc0b62d28 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_12-grey_bg-white.mff differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_12-white_bg-grey.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_12-white_bg-grey.bmp new file mode 100644 index 00000000000..b4749ebf295 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_12-white_bg-grey.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_12-white_bg-grey.mff b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_12-white_bg-grey.mff new file mode 100644 index 00000000000..b4fc0b62d28 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_12-white_bg-grey.mff differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_13-grey_bg-white.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_13-grey_bg-white.bmp new file mode 100644 index 00000000000..9030c466136 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_13-grey_bg-white.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_13-grey_bg-white.mff b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_13-grey_bg-white.mff new file mode 100644 index 00000000000..4a003574091 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_13-grey_bg-white.mff differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_13-white_bg-grey.bmp b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_13-white_bg-grey.bmp new file mode 100644 index 00000000000..6ddcefbb74b Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_13-white_bg-grey.bmp differ diff --git a/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_13-white_bg-grey.mff b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_13-white_bg-grey.mff new file mode 100644 index 00000000000..4a003574091 Binary files /dev/null and b/Examples/MAX32655/Demo_2048/ARM/resources/fonts/urw_gothic_13-white_bg-grey.mff differ diff --git a/Examples/MAX32655/Demo_2048/ARM/src/graphics.c b/Examples/MAX32655/Demo_2048/ARM/src/graphics.c new file mode 100644 index 00000000000..d523bd172b9 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/ARM/src/graphics.c @@ -0,0 +1,989 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/* **** Includes **** */ + +#include +#include "mxc_device.h" +#include "mxc_delay.h" +#include "tft_ssd2119.h" + +// Application Libraries. +#include "graphics.h" +#include "clear_sans_bold_scaled_block_digits.h" +#include "clear_sans_bold_game_text.h" +#include "cfs_logo.h" +#include "end_game_text.h" + +/* **** Definitions **** */ + +// Focus on top left corner of the top left block in the grid to help with visualize calculating the coordinates. +#define BLOCK_X_POSITION(col) \ + (GRID_OFFSET_X + GRID_SPACING + BLOCK_SPACING + ((BLOCK_LENGTH + BLOCK_SPACING) * (col))) +#define BLOCK_Y_POSITION(row) \ + (GRID_OFFSET_Y + GRID_SPACING + BLOCK_SPACING + ((BLOCK_LENGTH + BLOCK_SPACING) * (row))) +// Math is to center the digits printed to the newly created block. +#define DIGIT_CENTER_X_POSITION(x, value) \ + (x + (BLOCK_LENGTH / 2) - (BLOCK_DIGIT_PX_WIDTH(value) / 2)) +#define DIGIT_CENTER_Y_POSITION(y, value) \ + (y + (BLOCK_LENGTH / 2) - (BLOCK_DIGIT_PX_HEIGHT(value) / 2)) + +// Test out delays so that it's not too slow and not too fast for human eye. +#define COMBINE_BLOCKS_ANIMATE_MAX_DELAY_MS (15) + +/* **** Globals **** */ + +static int prev_timer_digit1 = 0; +static int prev_timer_digit2 = 0; +static int prev_timer_digit3 = 0; +static int prev_moves_digit1 = 0; +static int prev_moves_digit2 = 0; +static int prev_moves_digit3 = 0; + +/* **** Functions **** */ + +int Graphics_Init(void) +{ + int error; + + // Initialize TFT Display. + error = MXC_TFT_Init(); + if (error != E_NO_ERROR) { + return error; + } + + // Clear display. + MXC_TFT_DrawRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, F_BACKGROUND_COLOR); + + // Draw CFS Logo. + MXC_TFT_DrawBitmap(CFS_LOGO_OFFSET_X, CFS_LOGO_OFFSET_Y, CFS_LOGO_WIDTH, CFS_LOGO_HEIGHT, + cfs_logo); + + // Draw Game Logo. + // Forgive me for all the math who ever tries to read through the code. + // Focusing on top left corner of the top left block in the grid to help with visualizing the coordinates and calculations. + int x = GAME_LOGO_OFFSET_X; + int y = GAME_LOGO_OFFSET_Y; + + // Math is to center the digits printed to the newly created block. + int dx = x + (BLOCK_LENGTH / 2) - (BLOCK_2048_DIGIT_PX_WIDTH / 2); + int dy = y + (BLOCK_LENGTH / 2) - (BLOCK_2048_DIGIT_PX_HEIGHT / 2); + + // Draw block. + MXC_TFT_DrawRoundedRect(x, y, BLOCK_LENGTH, BLOCK_LENGTH, + FORMAT_RGB565_TO_PACKET(RGB565_BLOCK_2048), RADIUS_FOR_CORNERS, + F_BACKGROUND_COLOR); + + // Draw digits. + // 0x0000 is RGB color BLACK (background of digit) which will be masked out to match color of block. + MXC_TFT_DrawBitmapMask(dx, dy, BLOCK_2048_DIGIT_PX_WIDTH, BLOCK_2048_DIGIT_PX_HEIGHT, + block_2048, RGB565_BLACK, RGB565_BLOCK_2048); + + // Draw move counter. + MXC_TFT_DrawBitmapInvertedMask(MOVES_DIGIT0_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(0)), + MOVES_DIGITS_OFFSET_Y, GAME_TEXT_DIGIT_WIDTH(0), + GAME_TEXT_DIGITS_HEIGHT, GAME_TEXT_DIGIT_PTR(0), RGB565_BLACK, + RGB565_WHITE); + MXC_TFT_DrawBitmapInvertedMask(MOVES_DIGIT1_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(0)), + MOVES_DIGITS_OFFSET_Y, GAME_TEXT_DIGIT_WIDTH(0), + GAME_TEXT_DIGITS_HEIGHT, GAME_TEXT_DIGIT_PTR(0), RGB565_BLACK, + RGB565_WHITE); + MXC_TFT_DrawBitmapInvertedMask(MOVES_DIGIT2_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(0)), + MOVES_DIGITS_OFFSET_Y, GAME_TEXT_DIGIT_WIDTH(0), + GAME_TEXT_DIGITS_HEIGHT, GAME_TEXT_DIGIT_PTR(0), RGB565_BLACK, + RGB565_WHITE); + MXC_TFT_DrawBitmapInvertedMask(MOVES_DIGIT3_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(0)), + MOVES_DIGITS_OFFSET_Y, GAME_TEXT_DIGIT_WIDTH(0), + GAME_TEXT_DIGITS_HEIGHT, GAME_TEXT_DIGIT_PTR(0), RGB565_BLACK, + RGB565_WHITE); + MXC_TFT_DrawBitmapInvertedMask(MOVES_TEXT_OFFSET_X, MOVES_TEXT_OFFSET_Y, GAME_TEXT_MOVES_WIDTH, + GAME_TEXT_MOVES_HEIGHT, game_text_moves, RGB565_BLACK, + RGB565_WHITE); + + // Draw timer. + MXC_TFT_DrawBitmapInvertedMask(TIME_DIGIT0_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(0)), TIME_OFFSET_Y, + GAME_TEXT_DIGIT_WIDTH(0), GAME_TEXT_DIGITS_HEIGHT, + GAME_TEXT_DIGIT_PTR(0), RGB565_BLACK, RGB565_WHITE); + MXC_TFT_DrawBitmapInvertedMask(TIME_DIGIT1_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(0)), TIME_OFFSET_Y, + GAME_TEXT_DIGIT_WIDTH(0), GAME_TEXT_DIGITS_HEIGHT, + GAME_TEXT_DIGIT_PTR(0), RGB565_BLACK, RGB565_WHITE); + MXC_TFT_DrawBitmapInvertedMask(TIME_COLON_OFFSET_X, TIME_OFFSET_Y, GAME_TEXT_DIGIT_COLON_WIDTH, + GAME_TEXT_DIGITS_HEIGHT, game_text_colon, RGB565_BLACK, + RGB565_WHITE); + MXC_TFT_DrawBitmapInvertedMask(TIME_DIGIT2_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(0)), TIME_OFFSET_Y, + GAME_TEXT_DIGIT_WIDTH(0), GAME_TEXT_DIGITS_HEIGHT, + GAME_TEXT_DIGIT_PTR(0), RGB565_BLACK, RGB565_WHITE); + MXC_TFT_DrawBitmapInvertedMask(TIME_DIGIT3_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(0)), TIME_OFFSET_Y, + GAME_TEXT_DIGIT_WIDTH(0), GAME_TEXT_DIGITS_HEIGHT, + GAME_TEXT_DIGIT_PTR(0), RGB565_BLACK, RGB565_WHITE); + + // Draw grid. + MXC_TFT_DrawRect(GRID_OFFSET_X + GRID_SPACING, GRID_OFFSET_Y + GRID_SPACING, GRID_LENGTH, + GRID_LENGTH, F_GRID_COLOR); + for (int row = 0; row < 4; row++) { + for (int col = 0; col < 4; col++) { + // Focusing on top left corner of the top left block in the grid to help with visualizing the coordinates and calculations. + MXC_TFT_DrawRoundedRect(GRID_OFFSET_X + GRID_SPACING + BLOCK_SPACING + + ((BLOCK_LENGTH + BLOCK_SPACING) * row), + GRID_OFFSET_Y + GRID_SPACING + BLOCK_SPACING + + ((BLOCK_LENGTH + BLOCK_SPACING) * col), + BLOCK_LENGTH, BLOCK_LENGTH, F_EMPTY_BLOCK_COLOR, + RADIUS_FOR_CORNERS, F_GRID_COLOR); + } + } + + return E_NO_ERROR; +} + +void Graphics_AddNewBlock(int row, int col, int block_2_4) +{ + // 6 is chosen based on animation/display refresh rate speed to the naked eye. + for (int frame_i = 0; frame_i < 6; frame_i++) { + // Forgive the unreadability. + // The math calculates where each block needs to be drawn as its animated to grow from small to big. + + // Focusing on top left corner of the top left block in the grid to help with visualizing the coordinates and calculations. + int x = ((BLOCK_LENGTH / 2) - (frame_i * 5)) + GRID_OFFSET_X + GRID_SPACING + + BLOCK_SPACING + ((BLOCK_LENGTH + BLOCK_SPACING) * col); + int y = ((BLOCK_LENGTH / 2) - (frame_i * 5)) + GRID_OFFSET_Y + GRID_SPACING + + BLOCK_SPACING + ((BLOCK_LENGTH + BLOCK_SPACING) * row); + + // Increase the block size by 10 pixels + MXC_TFT_DrawRoundedRect( + x, y, ((frame_i * 10) > BLOCK_LENGTH) ? BLOCK_LENGTH : ((frame_i * 10) + 1), + ((frame_i * 10) > BLOCK_LENGTH) ? BLOCK_LENGTH : ((frame_i * 10) + 1), + FORMAT_RGB565_TO_PACKET(RGB_BLOCK_COLOR(block_2_4)), RADIUS_FOR_CORNERS, + ((frame_i * 10) > BLOCK_LENGTH) ? F_EMPTY_BLOCK_COLOR : F_GRID_COLOR); + + // Don't delay when empty space is fully filled. + if (frame_i < 5) { + // Minimum speed visual for human eye while also being fast and not laggy. + MXC_Delay(MXC_DELAY_MSEC(20)); + } + } + + // Calculate the starting coordinate to write the digit at the center of the tile. + int x = (BLOCK_LENGTH / 2) - (BLOCK_DIGIT_PX_WIDTH(block_2_4) / 2) + GRID_OFFSET_X + + GRID_SPACING + BLOCK_SPACING + ((BLOCK_LENGTH + BLOCK_SPACING) * col); + int y = (BLOCK_LENGTH / 2) - (BLOCK_DIGIT_PX_HEIGHT(block_2_4) / 2) + GRID_OFFSET_Y + + GRID_SPACING + BLOCK_SPACING + ((BLOCK_LENGTH + BLOCK_SPACING) * row); + + // Draw a 2 or 4 digit. + // Blocks 2 and 4 are lighter color, so white text won't fit. Use black text instead (Inverted). + if (block_2_4 == 2) { + // 0x0000 is RGB color BLACK (background of digit) which will be masked out to match color of block. + MXC_TFT_DrawBitmapInvertedMask(x, y, BLOCK_2_DIGIT_PX_WIDTH, BLOCK_2_DIGIT_PX_HEIGHT, + block_2, RGB565_BLACK, RGB565_BLOCK_2); + } else { + // 0x0000 is RGB color BLACK (background of digit) which will be masked out to match color of block. + MXC_TFT_DrawBitmapInvertedMask(x, y, BLOCK_4_DIGIT_PX_WIDTH, BLOCK_4_DIGIT_PX_HEIGHT, + block_4, RGB565_BLACK, RGB565_BLOCK_4); + } +} + +// Mainly used for sliding blocks to a new location. +inline void Graphics_AddBlock(int row, int col, int value) +{ + int x = BLOCK_X_POSITION(col); + int y = BLOCK_Y_POSITION(row); + + // Math is to center the digits printed to the newly created block. + int dx = x + (BLOCK_LENGTH / 2) - (BLOCK_DIGIT_PX_WIDTH(value) / 2); + int dy = y + (BLOCK_LENGTH / 2) - (BLOCK_DIGIT_PX_HEIGHT(value) / 2); + + switch (value) { + case 2: + // Draw block. + MXC_TFT_DrawRoundedRect(x, y, BLOCK_LENGTH, BLOCK_LENGTH, + FORMAT_RGB565_TO_PACKET(RGB565_BLOCK_2), RADIUS_FOR_CORNERS, + F_GRID_COLOR); + + // Draw digits. + // 0x0000 is RGB color BLACK (background of digit) which will be masked out to match color of block. + MXC_TFT_DrawBitmapInvertedMask(dx, dy, BLOCK_DIGIT_PX_WIDTH(value), + BLOCK_DIGIT_PX_HEIGHT(value), block_2, RGB565_BLACK, + RGB565_BLOCK_2); + break; + + case 4: + // Draw block. + MXC_TFT_DrawRoundedRect(x, y, BLOCK_LENGTH, BLOCK_LENGTH, + FORMAT_RGB565_TO_PACKET(RGB565_BLOCK_4), RADIUS_FOR_CORNERS, + F_GRID_COLOR); + + // Draw digits. + // 0x0000 is RGB color BLACK (background of digit) which will be masked out to match color of block. + MXC_TFT_DrawBitmapInvertedMask(dx, dy, BLOCK_DIGIT_PX_WIDTH(value), + BLOCK_DIGIT_PX_HEIGHT(value), block_4, RGB565_BLACK, + RGB565_BLOCK_4); + break; + + case 8: + // Draw block. + MXC_TFT_DrawRoundedRect(x, y, BLOCK_LENGTH, BLOCK_LENGTH, + FORMAT_RGB565_TO_PACKET(RGB565_BLOCK_8), RADIUS_FOR_CORNERS, + F_GRID_COLOR); + + // Draw digits. + // 0x0000 is RGB color BLACK (background of digit) which will be masked out to match color of block. + MXC_TFT_DrawBitmapMask(dx, dy, BLOCK_DIGIT_PX_WIDTH(value), BLOCK_DIGIT_PX_HEIGHT(value), + block_8, RGB565_BLACK, RGB565_BLOCK_8); + break; + + case 16: + // Draw text. + MXC_TFT_DrawRoundedRect(x, y, BLOCK_LENGTH, BLOCK_LENGTH, + FORMAT_RGB565_TO_PACKET(RGB565_BLOCK_16), RADIUS_FOR_CORNERS, + F_GRID_COLOR); + + // Draw digits. + // 0x0000 is RGB color BLACK (background of digit) which will be masked out to match color of block. + MXC_TFT_DrawBitmapMask(dx, dy, BLOCK_DIGIT_PX_WIDTH(value), BLOCK_DIGIT_PX_HEIGHT(value), + block_16, RGB565_BLACK, RGB565_BLOCK_16); + break; + + case 32: + // Draw block. + MXC_TFT_DrawRoundedRect(x, y, BLOCK_LENGTH, BLOCK_LENGTH, + FORMAT_RGB565_TO_PACKET(RGB565_BLOCK_32), RADIUS_FOR_CORNERS, + F_GRID_COLOR); + + // Draw digits. + // 0x0000 is RGB color BLACK (background of digit) which will be masked out to match color of block. + MXC_TFT_DrawBitmapMask(dx, dy, BLOCK_DIGIT_PX_WIDTH(value), BLOCK_DIGIT_PX_HEIGHT(value), + block_32, RGB565_BLACK, RGB565_BLOCK_32); + break; + + case 64: + // Draw block. + MXC_TFT_DrawRoundedRect(x, y, BLOCK_LENGTH, BLOCK_LENGTH, + FORMAT_RGB565_TO_PACKET(RGB565_BLOCK_64), RADIUS_FOR_CORNERS, + F_GRID_COLOR); + + // Draw digits. + // 0x0000 is RGB color BLACK (background of digit) which will be masked out to match color of block. + MXC_TFT_DrawBitmapMask(dx, dy, BLOCK_DIGIT_PX_WIDTH(value), BLOCK_DIGIT_PX_HEIGHT(value), + block_64, RGB565_BLACK, RGB565_BLOCK_64); + break; + + case 128: + // Draw block. + MXC_TFT_DrawRoundedRect(x, y, BLOCK_LENGTH, BLOCK_LENGTH, + FORMAT_RGB565_TO_PACKET(RGB565_BLOCK_128), RADIUS_FOR_CORNERS, + F_GRID_COLOR); + + // Draw digits. + // 0x0000 is RGB color BLACK (background of digit) which will be masked out to match color of block. + MXC_TFT_DrawBitmapMask(dx, dy, BLOCK_DIGIT_PX_WIDTH(value), BLOCK_DIGIT_PX_HEIGHT(value), + block_128, RGB565_BLACK, RGB565_BLOCK_128); + break; + + case 256: + // Draw block. + MXC_TFT_DrawRoundedRect(x, y, BLOCK_LENGTH, BLOCK_LENGTH, + FORMAT_RGB565_TO_PACKET(RGB565_BLOCK_256), RADIUS_FOR_CORNERS, + F_GRID_COLOR); + + // Draw digits. + // 0x0000 is RGB color BLACK (background of digit) which will be masked out to match color of block. + MXC_TFT_DrawBitmapMask(dx, dy, BLOCK_DIGIT_PX_WIDTH(value), BLOCK_DIGIT_PX_HEIGHT(value), + block_256, RGB565_BLACK, RGB565_BLOCK_256); + break; + + case 512: + // Draw block. + MXC_TFT_DrawRoundedRect(x, y, BLOCK_LENGTH, BLOCK_LENGTH, + FORMAT_RGB565_TO_PACKET(RGB565_BLOCK_512), RADIUS_FOR_CORNERS, + F_GRID_COLOR); + + // Draw digits. + // 0x0000 is RGB color BLACK (background of digit) which will be masked out to match color of block. + MXC_TFT_DrawBitmapMask(dx, dy, BLOCK_DIGIT_PX_WIDTH(value), BLOCK_DIGIT_PX_HEIGHT(value), + block_512, RGB565_BLACK, RGB565_BLOCK_512); + break; + + case 1024: + // Draw block. + MXC_TFT_DrawRoundedRect(x, y, BLOCK_LENGTH, BLOCK_LENGTH, + FORMAT_RGB565_TO_PACKET(RGB565_BLOCK_1024), RADIUS_FOR_CORNERS, + F_GRID_COLOR); + + // Draw digits. + // 0x0000 is RGB color BLACK (background of digit) which will be masked out to match color of block. + MXC_TFT_DrawBitmapMask(dx, dy, BLOCK_DIGIT_PX_WIDTH(value), BLOCK_DIGIT_PX_HEIGHT(value), + block_1024, RGB565_BLACK, RGB565_BLOCK_1024); + break; + + case 2048: + // Draw block. + MXC_TFT_DrawRoundedRect(x, y, BLOCK_LENGTH, BLOCK_LENGTH, + FORMAT_RGB565_TO_PACKET(RGB565_BLOCK_2048), RADIUS_FOR_CORNERS, + F_GRID_COLOR); + + // Draw digits. + // 0x0000 is RGB color BLACK (background of digit) which will be masked out to match color of block. + MXC_TFT_DrawBitmapMask(dx, dy, BLOCK_DIGIT_PX_WIDTH(value), BLOCK_DIGIT_PX_HEIGHT(value), + block_2048, RGB565_BLACK, RGB565_BLOCK_2048); + break; + + default: + break; + } +} + +void Graphics_CombineSingleBlock(int row, int col, int new_value) +{ + int x = BLOCK_X_POSITION(col); + int y = BLOCK_Y_POSITION(row); + + MXC_TFT_DrawRoundedRect(x, y, BLOCK_LENGTH, BLOCK_LENGTH, FORMAT_RGB565_TO_PACKET(new_value), + RADIUS_FOR_CORNERS, F_GRID_COLOR); + + // Animate the blow up. + // 4 is the amount of pixels between each block. That's the extent that the block will temporarily expand. + for (int i = 0; i < BLOCK_SPACING + 1; i++) { + MXC_TFT_DrawRoundedRect(x - i, y - i, BLOCK_LENGTH + (2 * i), BLOCK_LENGTH + (2 * i), + FORMATTED_RGB_BLOCK_COLOR(new_value), RADIUS_FOR_CORNERS, + F_GRID_COLOR); + + // Delay for animation. + MXC_Delay(MXC_DELAY_MSEC(6)); + } + + // Animate the shrink down. + for (int i = 0; i < BLOCK_SPACING; i++) { + // Redraw block to remove corners. + MXC_TFT_DrawRoundedRect(x - BLOCK_SPACING + i, y - BLOCK_SPACING + i, + BLOCK_LENGTH + ((BLOCK_SPACING - i) * 2), + BLOCK_LENGTH + ((BLOCK_SPACING - i) * 2), + FORMATTED_RGB_BLOCK_COLOR(new_value), RADIUS_FOR_CORNERS, + F_GRID_COLOR); + + // Remove outer borders again. + MXC_TFT_DrawHorizontalLine(x - BLOCK_SPACING + i, y - BLOCK_SPACING + i, + BLOCK_LENGTH + ((BLOCK_SPACING - i) * 2), + F_GRID_COLOR); // Top line. + + MXC_TFT_DrawVerticalLine(x - BLOCK_SPACING + i, y - BLOCK_SPACING + i, + BLOCK_LENGTH + ((BLOCK_SPACING - i) * 2), + F_GRID_COLOR); // Left line. + + MXC_TFT_DrawHorizontalLine(x - BLOCK_SPACING + 1 + i, + BLOCK_LENGTH + y + BLOCK_SPACING - 1 - i, + BLOCK_LENGTH + ((BLOCK_SPACING - 1 - i) * 2), + F_GRID_COLOR); // Bottom line. + + MXC_TFT_DrawVerticalLine(BLOCK_LENGTH + x + BLOCK_SPACING - 1 - i, y - BLOCK_SPACING + i, + BLOCK_LENGTH - 1 + ((BLOCK_SPACING - i) * 2), + F_GRID_COLOR); // Right line. + + // Delay for animation. + MXC_Delay(MXC_DELAY_MSEC(6)); + } + + Graphics_AddBlock(row, col, new_value); +} + +// TODO(SW): Definitely could be optimized and more readable. Not enough time and wrote this late at night. +// Helper function for "_CombineBlocks function which draws the outer borders of the block with width matching the 'radius' +// @param x X coordinate of the block. +// @param y Y coordinate of the block. +// @param frame_i Current frame of the animation. +// @param current_length Length of block at current frame. +// @param f_color Formatted color code of outer border. +// @param radius Radius ofrounded cornewrs and width of block. +static void graphics_helper_CombineBlocks(uint32_t x, uint32_t y, int frame_i, + uint32_t current_length, uint32_t f_color, + uint32_t radius) +{ + // Draw top horizontal lines. + for (int p_y = 0; p_y < radius; p_y++) { + // Find the starting x position using pythagorean theorem. + int dx = 0; + int dy = radius - p_y; + + while ((dx * dx) < ((radius * radius) - (dy * dy))) { + dx++; + } + + // No negative horizontal distance. + if (dx > 0) { + dx--; + } + + MXC_TFT_DrawHorizontalLine(x - frame_i + radius - dx, y - frame_i + p_y, + current_length - (2 * (radius - dx)), f_color); + } + + // Draw bottom horizontal lines. + for (int p_y = (current_length - radius); p_y < current_length; p_y++) { + // Find the starting x position using pythagorean theorem. + int dx = 0; + int dy = p_y - (current_length - radius - 1); + + while ((dx * dx) < ((radius * radius) - (dy * dy))) { + dx++; + } + + // No negative horizontal distance. + if (dx > 0) { + dx--; + } + + MXC_TFT_DrawHorizontalLine(x - frame_i + radius - dx, y - frame_i + p_y, + current_length - (2 * (radius - dx)), f_color); + } + + // Draw left vertical lines. + for (int p_x = 0; p_x < radius; p_x++) { + // Find the starting x position using pythagorean theorem. + int dx = radius - p_x; + int dy = 0; + + while ((dy * dy) < ((radius * radius) - (dx * dx))) { + dy++; + } + + // No negative horizontal distance. + if (dy > 0) { + dy--; + } + + MXC_TFT_DrawVerticalLine(x - frame_i + p_x, y - frame_i + radius - dy, + current_length - (2 * (radius - dy)), f_color); + } + + // Draw right vertical lines. + for (int p_x = (current_length - radius); p_x < current_length; p_x++) { + // Find the starting x position using pythagorean theorem. + int dx = p_x - (current_length - radius - 1); + int dy = 0; + + while ((dy * dy) < ((radius * radius) - (dx * dx))) { + dy++; + } + + // No negative horizontal distance. + if (dy > 0) { + dy--; + } + + MXC_TFT_DrawVerticalLine(x - frame_i + p_x, y - frame_i + radius - dy, + current_length - (2 * (radius - dy)), f_color); + } +} + +// Helper function for "_CombineBlocks function which removes the corners of the blocks outside of 'radius' boundary. +// @param x X coordinate of the block. +// @param y Y coordinate of the block. +// @param frame_i Current frame of the animation. +// @param current_length Length of block at current frame. +// @param f_color Formatted color code of outer border. +// @param radius Radius ofrounded cornewrs and width of block. +static void graphics_helper_eraseCorners(uint32_t x, uint32_t y, int frame_i, + uint32_t current_length, uint32_t f_color, uint32_t radius) +{ + for (int p_y = 0; p_y < BLOCK_LENGTH; p_y++) { + for (int p_x = 0; p_x < BLOCK_LENGTH; p_x++) { + // Calculate distance from the corner. + int dx = (p_x < radius) ? radius - p_x : + (p_x >= current_length - radius) ? p_x - (current_length - radius - 1) : + 0; + int dy = (p_y < radius) ? radius - p_y : + (p_y >= current_length - radius) ? p_y - (current_length - radius - 1) : + 0; + + // Use pythagorean theorem to map coordinates, square not necessary when comparing with r. + if (((dx * dx) + (dy * dy)) > (radius * radius)) { + MXC_TFT_WritePixel(x + p_x, y + p_y, 1, 1, f_color); + } + + // Skip x points that aren't within corners. + if (p_x >= radius && p_x < (current_length - radius)) { + p_x = current_length - radius - 1; + } + } + + // Skip x points that aren't within corners. + if (p_y >= radius && p_y < (current_length - radius)) { + p_y = current_length - radius - 1; + } + } +} + +void Graphics_CombineBlocks(uint32_t grid[4][4], block_state_t grid_state[4][4]) +{ + // Animate the blow up. + // 4 is the amount of pixels between each block. That's the extent that the block will temporarily expand. + for (int frame_i = 0; frame_i < BLOCK_SPACING + 1; frame_i++) { + int combine_count = 0; + + // Go through each block that is going to be combined and draw a single blow up frame. + for (int row = 0; row < 4; row++) { + for (int col = 0; col < 4; col++) { + if (grid_state[row][col] == COMBINE) { + // Only draw out edges when expanding to save time. + combine_count++; + + uint32_t x = BLOCK_X_POSITION(col); + uint32_t y = BLOCK_Y_POSITION(row); + + if (frame_i == 0) { + // Draw entire block for first frame. + MXC_TFT_DrawRoundedRect(x, y, BLOCK_LENGTH, BLOCK_LENGTH, + FORMATTED_RGB_BLOCK_COLOR(grid[row][col]), + RADIUS_FOR_CORNERS, F_GRID_COLOR); + } else { + graphics_helper_CombineBlocks(x, y, frame_i, BLOCK_LENGTH + (2 * frame_i), + FORMATTED_RGB_BLOCK_COLOR(grid[row][col]), + RADIUS_FOR_CORNERS); + } + } + } + } + + // If no blocks combined, don't waste computation time and exit. + if (combine_count == 0) { + return; + } + + MXC_Delay(MXC_DELAY_MSEC(COMBINE_BLOCKS_ANIMATE_MAX_DELAY_MS)); + } + + // Animate the shrink down. + for (int frame_i = BLOCK_SPACING - 1; frame_i >= 0; frame_i--) { + int combine_count = 0; + + // Go through each block that is going to be combined and shrink the block + // one pixel at a time. + for (int row = 0; row < 4; row++) { + for (int col = 0; col < 4; col++) { + if (grid_state[row][col] == COMBINE) { + combine_count++; + + uint32_t x = BLOCK_X_POSITION(col); + uint32_t y = BLOCK_Y_POSITION(row); + + // Erase outer edges. + MXC_TFT_DrawHorizontalLine(x - (frame_i + 1), y - (frame_i + 1), + BLOCK_LENGTH + (2 * (frame_i + 1)), F_GRID_COLOR); + MXC_TFT_DrawVerticalLine(x - (frame_i + 1), y - (frame_i + 1), + BLOCK_LENGTH + (2 * (frame_i + 1)), F_GRID_COLOR); + + MXC_TFT_DrawHorizontalLine(x - (frame_i + 1), + y + BLOCK_LENGTH + (2 * (frame_i + 1)) - + (frame_i + 1) - 1, + BLOCK_LENGTH + (2 * (frame_i + 1)), F_GRID_COLOR); + MXC_TFT_DrawVerticalLine( + x + BLOCK_LENGTH + (2 * (frame_i + 1)) - (frame_i + 1) - 1, + y - (frame_i + 1), BLOCK_LENGTH + (2 * (frame_i + 1)), F_GRID_COLOR); + + // Erase corners. + graphics_helper_eraseCorners(x - frame_i, y - frame_i, frame_i, + BLOCK_LENGTH + (2 * (frame_i)), F_GRID_COLOR, + RADIUS_FOR_CORNERS); + + // Draw digit in last frame. + if ((frame_i) == 0) { + // graphics_helper_CombineBlocks(x, y, 0, BLOCK_LENGTH, FORMATTED_RGB_BLOCK_COLOR(grid[row][col]), RADIUS_FOR_CORNERS); + + // Blocks 2 and 4 are the only ones with inverted digit colors because of their block color. + // However, Block 2 will nevber be a combined block. + if (grid[row][col] == 4) { + MXC_TFT_DrawBitmapInvertedMask( + DIGIT_CENTER_X_POSITION(x, grid[row][col]), + DIGIT_CENTER_Y_POSITION(y, grid[row][col]), + BLOCK_DIGIT_PX_WIDTH(grid[row][col]), + BLOCK_DIGIT_PX_HEIGHT(grid[row][col]), + BLOCK_DIGIT_PTR(grid[row][col]), RGB565_BLACK, + RGB_BLOCK_COLOR(grid[row][col])); + } else { + MXC_TFT_DrawBitmapMask(DIGIT_CENTER_X_POSITION(x, grid[row][col]), + DIGIT_CENTER_Y_POSITION(y, grid[row][col]), + BLOCK_DIGIT_PX_WIDTH(grid[row][col]), + BLOCK_DIGIT_PX_HEIGHT(grid[row][col]), + BLOCK_DIGIT_PTR(grid[row][col]), RGB565_BLACK, + RGB_BLOCK_COLOR(grid[row][col])); + } + } + } + } + } + + // Add delay so the shrink down is visual to human eye, + // except for the last frame. + if (frame_i != 0) { + MXC_Delay(MXC_DELAY_MSEC(COMBINE_BLOCKS_ANIMATE_MAX_DELAY_MS)); + } + } +} + +void Graphics_EraseBlocks(block_state_t grid_state[4][4], graphics_slide_direction_t direction) +{ + switch (direction) { + case GRAPHICS_SLIDE_DIR_UP: + // Start from bottom row to top row (column order doesn't matter). + // This for-loop keeps track of the localized y position of where the horizontal line is drawn. + // A horizontal line of 1-pixel wide, and of color of empty block, is drawn to represent + // the block being erased, and this is done through the entire block. + for (int p_y = (BLOCK_LENGTH - 1); p_y >= 0; p_y--) { + // These two for-loops iterate through each block in the + // grid (bottom row to top row, columns direction - don't care) and + // erases a horizontal line (1-pixel wide) + for (int row = 3; row >= 0; row--) { + for (int col = 0; col < 4; col++) { + if (grid_state[row][col] == ERASE) { + int x = BLOCK_X_POSITION(col); + int y = BLOCK_Y_POSITION(row); + + // Account for rounded corners. + if ((p_y < RADIUS_FOR_CORNERS) || + (p_y >= (BLOCK_LENGTH - RADIUS_FOR_CORNERS))) { + // Find the starting x position using pythagorean theorem. + int dx = 0; + int dy = (p_y < RADIUS_FOR_CORNERS) ? + RADIUS_FOR_CORNERS - p_y : + (p_y >= (BLOCK_LENGTH - RADIUS_FOR_CORNERS)) ? + p_y - (BLOCK_LENGTH - RADIUS_FOR_CORNERS - 1) : + 0; + + while ((dx * dx) < + ((RADIUS_FOR_CORNERS * RADIUS_FOR_CORNERS) - (dy * dy))) { + dx++; + } + + // No negative horizontal distance. + if (dx > 0) { + dx--; + } + + MXC_TFT_DrawHorizontalLine(x + RADIUS_FOR_CORNERS - dx, y + p_y, + BLOCK_LENGTH - + (2 * (RADIUS_FOR_CORNERS - dx)), + F_EMPTY_BLOCK_COLOR); + + } else { + MXC_TFT_DrawHorizontalLine(x, y + p_y, BLOCK_LENGTH, + F_EMPTY_BLOCK_COLOR); + } + } + } + } + } + break; + + case GRAPHICS_SLIDE_DIR_DOWN: + // Start from top row to bottom row (column order doesn't matter). + // This for-loop keeps track of the localized y position of where the horizontal line is drawn. + // A horizontal line of 1-pixel wide, and of color of empty block, is drawn to represent + // the block being erased, and this is done through the entire block. + for (int p_y = 0; p_y < BLOCK_LENGTH; p_y++) { + // These two for-loops iterate through each block in the + // grid (top row to bottom row, columns direction - don't care) and + // erases a horizontal line (1-pixel wide) + for (int row = 0; row < 4; row++) { + for (int col = 0; col < 4; col++) { + if (grid_state[row][col] == ERASE) { + int x = BLOCK_X_POSITION(col); + int y = BLOCK_Y_POSITION(row); + + // Account for rounded corners. + if ((p_y < RADIUS_FOR_CORNERS) || + (p_y >= (BLOCK_LENGTH - RADIUS_FOR_CORNERS))) { + // Find the starting x position using pythagorean theorem. + int dx = 0; + int dy = (p_y < RADIUS_FOR_CORNERS) ? + RADIUS_FOR_CORNERS - p_y : + (p_y >= (BLOCK_LENGTH - RADIUS_FOR_CORNERS)) ? + p_y - (BLOCK_LENGTH - RADIUS_FOR_CORNERS - 1) : + 0; + + while ((dx * dx) < + ((RADIUS_FOR_CORNERS * RADIUS_FOR_CORNERS) - (dy * dy))) { + dx++; + } + + // No negative horizontal distance. + if (dx > 0) { + dx--; + } + + MXC_TFT_DrawHorizontalLine(x + RADIUS_FOR_CORNERS - dx, y + p_y, + BLOCK_LENGTH - + (2 * (RADIUS_FOR_CORNERS - dx)), + F_EMPTY_BLOCK_COLOR); + + } else { + MXC_TFT_DrawHorizontalLine(x, y + p_y, BLOCK_LENGTH, + F_EMPTY_BLOCK_COLOR); + } + } + } + } + } + break; + + case GRAPHICS_SLIDE_DIR_LEFT: + // Start from right column to left column (row order doesn't matter). + // This for-loop keeps track of the localized x position of where the vertical line is drawn. + // A vertical line of 1-pixel wide, and of color of empty block, is drawn to represent + // the block being erased, and this is done through the entire block. + for (int p_x = (BLOCK_LENGTH - 1); p_x >= 0; p_x--) { + // These two for-loops iterate through each block in the + // grid (right column to left column, rows direction - don't care) and + // erases a vertical line (1-pixel wide) + for (int col = 3; col >= 0; col--) { + for (int row = 0; row < 4; row++) { + if (grid_state[row][col] == ERASE) { + int x = BLOCK_X_POSITION(col); + int y = BLOCK_Y_POSITION(row); + + // Account for rounded corners. + if ((p_x < RADIUS_FOR_CORNERS) || + (p_x >= (BLOCK_LENGTH - RADIUS_FOR_CORNERS))) { + // Find the starting y position using pythagorean theorem. + int dx = (p_x < RADIUS_FOR_CORNERS) ? + RADIUS_FOR_CORNERS - p_x : + (p_x >= (BLOCK_LENGTH - RADIUS_FOR_CORNERS)) ? + p_x - (BLOCK_LENGTH - RADIUS_FOR_CORNERS - 1) : + 0; + int dy = 0; + + while ((dy * dy) < + ((RADIUS_FOR_CORNERS * RADIUS_FOR_CORNERS) - (dx * dx))) { + dy++; + } + + // No negative vertical distance. + if (dy > 0) { + dy--; + } + + MXC_TFT_DrawVerticalLine(x + p_x, y + RADIUS_FOR_CORNERS - dy, + BLOCK_LENGTH - (2 * (RADIUS_FOR_CORNERS - dy)), + F_EMPTY_BLOCK_COLOR); + + } else { + MXC_TFT_DrawVerticalLine(x + p_x, y, BLOCK_LENGTH, F_EMPTY_BLOCK_COLOR); + } + } + } + } + } + break; + + case GRAPHICS_SLIDE_DIR_RIGHT: + // Start from left column to right column (row order doesn't matter). + // This for-loop keeps track of the localized x position of where the vertical line is drawn. + // A vertical line of 1-pixel wide, and of color of empty block, is drawn to represent + // the block being erased, and this is done through the entire block. + for (int p_x = 0; p_x < BLOCK_LENGTH; p_x++) { + // These two for-loops iterate through each block in the + // grid (right column to left column, rows direction - don't care) and + // erases a vertical line (1-pixel wide) + for (int col = 0; col < 4; col++) { + for (int row = 0; row < 4; row++) { + if (grid_state[row][col] == ERASE) { + int x = BLOCK_X_POSITION(col); + int y = BLOCK_Y_POSITION(row); + + // Account for rounded corners. + if ((p_x < RADIUS_FOR_CORNERS) || + (p_x >= (BLOCK_LENGTH - RADIUS_FOR_CORNERS))) { + // Find the starting y position using pythagorean theorem. + int dx = (p_x < RADIUS_FOR_CORNERS) ? + RADIUS_FOR_CORNERS - p_x : + (p_x >= (BLOCK_LENGTH - RADIUS_FOR_CORNERS)) ? + p_x - (BLOCK_LENGTH - RADIUS_FOR_CORNERS - 1) : + 0; + int dy = 0; + + while ((dy * dy) < + ((RADIUS_FOR_CORNERS * RADIUS_FOR_CORNERS) - (dx * dx))) { + dy++; + } + + // No negative vertical distance. + if (dy > 0) { + dy--; + } + + MXC_TFT_DrawVerticalLine(x + p_x, y + RADIUS_FOR_CORNERS - dy, + BLOCK_LENGTH - (2 * (RADIUS_FOR_CORNERS - dy)), + F_EMPTY_BLOCK_COLOR); + + } else { + MXC_TFT_DrawVerticalLine(x + p_x, y, BLOCK_LENGTH, F_EMPTY_BLOCK_COLOR); + } + } + } + } + } + + break; + + default: + return; + } +} + +void Graphics_EraseSingleBlock(int row, int col) +{ + // Forgive me for all the math who ever tries to read through the code. + // Focusing on top left corner of the top left block in the grid to help with visualizing the coordinates and calculations. + int x = GRID_OFFSET_X + GRID_SPACING + BLOCK_SPACING + ((BLOCK_LENGTH + BLOCK_SPACING) * col); + int y = GRID_OFFSET_Y + GRID_SPACING + BLOCK_SPACING + ((BLOCK_LENGTH + BLOCK_SPACING) * row); + + MXC_TFT_DrawRoundedRect(x, y, BLOCK_LENGTH, BLOCK_LENGTH, F_EMPTY_BLOCK_COLOR, + RADIUS_FOR_CORNERS, F_GRID_COLOR); +} + +void Graphics_SetTime(uint32_t total_seconds) +{ + // Convert total time to minutes:seconds (mm:ss) + int digit0, digit1, digit2, digit3; + + // The max possible seconds is 5999, which yields 99m:59s. + if (total_seconds >= 5999) { + digit0 = 9; + digit1 = 5; + digit2 = 9; + digit3 = 9; + } else { + digit0 = (total_seconds % 10); + digit1 = ((total_seconds - digit0) % 60) / 10; + + digit2 = ((total_seconds - (digit1 * 10) - digit0) / 60) % 10; + digit3 = ((total_seconds - (digit1 * 10) - digit0) / 60) / 10; + } + + // Update timer on display. + MXC_TFT_DrawRect(TIME_DIGIT0_OFFSET_X(TIME_DIGIT_WIDTH), TIME_OFFSET_Y, TIME_DIGIT_WIDTH, + GAME_TEXT_DIGITS_HEIGHT, F_BACKGROUND_COLOR); + MXC_TFT_DrawBitmapInvertedMask(TIME_DIGIT0_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(digit0)), + TIME_OFFSET_Y, GAME_TEXT_DIGIT_WIDTH(digit0), + GAME_TEXT_DIGITS_HEIGHT, GAME_TEXT_DIGIT_PTR(digit0), + RGB565_BLACK, RGB565_WHITE); + + // Don't waste time on re-writing the same digits. + // Changes every 10 seconds. + if (prev_timer_digit1 != digit1) { + MXC_TFT_DrawRect(TIME_DIGIT1_OFFSET_X(TIME_DIGIT_WIDTH), TIME_OFFSET_Y, TIME_DIGIT_WIDTH, + GAME_TEXT_DIGITS_HEIGHT, F_BACKGROUND_COLOR); + MXC_TFT_DrawBitmapInvertedMask(TIME_DIGIT1_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(digit1)), + TIME_OFFSET_Y, GAME_TEXT_DIGIT_WIDTH(digit1), + GAME_TEXT_DIGITS_HEIGHT, GAME_TEXT_DIGIT_PTR(digit1), + RGB565_BLACK, RGB565_WHITE); + prev_timer_digit1 = digit1; + } + + // Changes every 60 seconds. + if (prev_timer_digit2 != digit2) { + MXC_TFT_DrawRect(TIME_DIGIT2_OFFSET_X(TIME_DIGIT_WIDTH), TIME_OFFSET_Y, TIME_DIGIT_WIDTH, + GAME_TEXT_DIGITS_HEIGHT, F_BACKGROUND_COLOR); + MXC_TFT_DrawBitmapInvertedMask(TIME_DIGIT2_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(digit2)), + TIME_OFFSET_Y, GAME_TEXT_DIGIT_WIDTH(digit2), + GAME_TEXT_DIGITS_HEIGHT, GAME_TEXT_DIGIT_PTR(digit2), + RGB565_BLACK, RGB565_WHITE); + prev_timer_digit2 = digit2; + } + + // Changes every 600 seoncds. + if (prev_timer_digit3 != digit3) { + MXC_TFT_DrawRect(TIME_DIGIT3_OFFSET_X(TIME_DIGIT_WIDTH), TIME_OFFSET_Y, TIME_DIGIT_WIDTH, + GAME_TEXT_DIGITS_HEIGHT, F_BACKGROUND_COLOR); + MXC_TFT_DrawBitmapInvertedMask(TIME_DIGIT3_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(digit3)), + TIME_OFFSET_Y, GAME_TEXT_DIGIT_WIDTH(digit3), + GAME_TEXT_DIGITS_HEIGHT, GAME_TEXT_DIGIT_PTR(digit3), + RGB565_BLACK, RGB565_WHITE); + prev_timer_digit3 = digit3; + } +} + +void Graphics_UpdateMovesCount(uint32_t moves_count) +{ + // Convert total time to minutes:seconds (mm:ss) + int digit0, digit1, digit2, digit3; + + // The max possible seconds is 5999, which yields 99m:59s. + if (moves_count >= 9999) { + digit0 = 9; + digit1 = 9; + digit2 = 9; + digit3 = 9; + } else { + digit0 = (moves_count % 10); + digit1 = ((moves_count / 10) % 10); + digit2 = ((moves_count / 100) % 10); + digit3 = ((moves_count / 1000) % 10); + } + + // Update timer on display. + MXC_TFT_DrawRect(MOVES_DIGIT0_OFFSET_X(MOVES_DIGIT_WIDTH), MOVES_DIGITS_OFFSET_Y, + MOVES_DIGIT_WIDTH, GAME_TEXT_DIGITS_HEIGHT, F_BACKGROUND_COLOR); + MXC_TFT_DrawBitmapInvertedMask(MOVES_DIGIT0_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(digit0)), + MOVES_DIGITS_OFFSET_Y, GAME_TEXT_DIGIT_WIDTH(digit0), + GAME_TEXT_DIGITS_HEIGHT, GAME_TEXT_DIGIT_PTR(digit0), + RGB565_BLACK, RGB565_WHITE); + + // Don't waste time on re-writing the same digits. + // Changes every 10 seconds. + if (prev_moves_digit1 != digit1) { + MXC_TFT_DrawRect(MOVES_DIGIT1_OFFSET_X(MOVES_DIGIT_WIDTH), MOVES_DIGITS_OFFSET_Y, + MOVES_DIGIT_WIDTH, GAME_TEXT_DIGITS_HEIGHT, F_BACKGROUND_COLOR); + MXC_TFT_DrawBitmapInvertedMask(MOVES_DIGIT1_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(digit1)), + MOVES_DIGITS_OFFSET_Y, GAME_TEXT_DIGIT_WIDTH(digit1), + GAME_TEXT_DIGITS_HEIGHT, GAME_TEXT_DIGIT_PTR(digit1), + RGB565_BLACK, RGB565_WHITE); + prev_moves_digit1 = digit1; + } + + // Changes every 60 seconds. + if (prev_moves_digit2 != digit2) { + MXC_TFT_DrawRect(MOVES_DIGIT2_OFFSET_X(MOVES_DIGIT_WIDTH), MOVES_DIGITS_OFFSET_Y, + MOVES_DIGIT_WIDTH, GAME_TEXT_DIGITS_HEIGHT, F_BACKGROUND_COLOR); + MXC_TFT_DrawBitmapInvertedMask(MOVES_DIGIT2_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(digit2)), + MOVES_DIGITS_OFFSET_Y, GAME_TEXT_DIGIT_WIDTH(digit2), + GAME_TEXT_DIGITS_HEIGHT, GAME_TEXT_DIGIT_PTR(digit2), + RGB565_BLACK, RGB565_WHITE); + prev_moves_digit2 = digit2; + } + + // Changes every 600 seoncds. + if (prev_moves_digit3 != digit3) { + MXC_TFT_DrawRect(MOVES_DIGIT3_OFFSET_X(MOVES_DIGIT_WIDTH), MOVES_DIGITS_OFFSET_Y, + MOVES_DIGIT_WIDTH, GAME_TEXT_DIGITS_HEIGHT, F_BACKGROUND_COLOR); + MXC_TFT_DrawBitmapInvertedMask(MOVES_DIGIT3_OFFSET_X(GAME_TEXT_DIGIT_WIDTH(digit3)), + MOVES_DIGITS_OFFSET_Y, GAME_TEXT_DIGIT_WIDTH(digit3), + GAME_TEXT_DIGITS_HEIGHT, GAME_TEXT_DIGIT_PTR(digit3), + RGB565_BLACK, RGB565_WHITE); + prev_moves_digit3 = digit3; + } +} + +void Graphics_DisplayGameOver(void) +{ + MXC_TFT_DrawBitmap(GAME_OVER_BOX_OFFSET_X, GAME_OVER_BOX_OFFSET_Y, GAME_OVER_BOX_WIDTH, + GAME_OVER_BOX_HEIGHT, game_over); +} + +void Graphics_DisplayYouWin(void) +{ + MXC_TFT_DrawBitmap(YOU_WIN_BOX_OFFSET_X, YOU_WIN_BOX_OFFSET_Y, YOU_WIN_BOX_WIDTH, + YOU_WIN_BOX_HEIGHT, you_win); +} diff --git a/Examples/MAX32655/Demo_2048/RISCV/.cproject b/Examples/MAX32655/Demo_2048/RISCV/.cproject new file mode 100644 index 00000000000..8d841e30794 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/RISCV/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32655/Demo_2048/RISCV/.project b/Examples/MAX32655/Demo_2048/RISCV/.project new file mode 100644 index 00000000000..e36a7fd5918 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/RISCV/.project @@ -0,0 +1,26 @@ + + + RISCV + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml b/Examples/MAX32655/Demo_2048/RISCV/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml rename to Examples/MAX32655/Demo_2048/RISCV/.settings/language.settings.xml diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32655/Demo_2048/RISCV/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32655/Demo_2048/RISCV/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32655/Demo_2048/RISCV/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32655/Demo_2048/RISCV/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..68775a2fce2 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/RISCV/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=RISCV +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32655 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32655/Demo_2048/RISCV/.vscode/README.md b/Examples/MAX32655/Demo_2048/RISCV/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/RISCV/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.vscode/c_cpp_properties.json b/Examples/MAX32655/Demo_2048/RISCV/.vscode/c_cpp_properties.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.vscode/c_cpp_properties.json rename to Examples/MAX32655/Demo_2048/RISCV/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb b/Examples/MAX32655/Demo_2048/RISCV/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb rename to Examples/MAX32655/Demo_2048/RISCV/.vscode/flash.gdb diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/.vscode/launch.json b/Examples/MAX32655/Demo_2048/RISCV/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/USB/USB_HIDKeyboard/.vscode/launch.json rename to Examples/MAX32655/Demo_2048/RISCV/.vscode/launch.json diff --git a/Examples/MAX32655/Demo_2048/RISCV/.vscode/settings.json b/Examples/MAX32655/Demo_2048/RISCV/.vscode/settings.json new file mode 100644 index 00000000000..8ca5ce8ab8c --- /dev/null +++ b/Examples/MAX32655/Demo_2048/RISCV/.vscode/settings.json @@ -0,0 +1,82 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32655", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"${config:target}.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ], + "files.associations": { + "ipc_defines.h": "c" + } +} + diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json b/Examples/MAX32655/Demo_2048/RISCV/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json rename to Examples/MAX32655/Demo_2048/RISCV/.vscode/tasks.json diff --git a/Examples/MAX32655/Demo_2048/RISCV/Makefile b/Examples/MAX32655/Demo_2048/RISCV/Makefile new file mode 100644 index 00000000000..717125621b6 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/RISCV/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32655 +TARGET_UC := MAX32655 +TARGET_LC := max32655 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32655/Demo_2048/RISCV/README.md b/Examples/MAX32655/Demo_2048/RISCV/README.md new file mode 100644 index 00000000000..0bc3ab69870 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/RISCV/README.md @@ -0,0 +1,70 @@ +## Description + +This example demonstrates running the 2048 game on both ARM and RISC-V cores on the MAX32655. + +The RISC-V core, running at 60MHz (ISO), handles the controller (keyboard) user inputs and the main 2048 game logic. + +The ARM core, running at 100MHz (IPO), keeps track of the timer (RTC) and handles the display graphics after the RISC-V core finishes handling the main game logic. + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +This project only supports the MAX32655EVKIT as it has the 320x240 TFT Display. + +## Required Connections + +If using the MAX32655EVKIT (EvKit\_V1): +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. +- Connect pins JP4(RX_SEL) and JP5(TX_SEL) to RX0 and TX0 header. +- Open an terminal application on the PC and connect to the EV kit's console UART at 2000000, 8-N-1. +- Close jumper JP2 (LED0 EN). +- Close jumper JP3 (LED1 EN). + +## Expected Output + +``` +******************************************************************************* +ARM: Starting ARM Initialization. + +ARM: Semaphore is not busy - with previous value: 1 + +ARM: Starting RISC-V core and handing off major UART0 Control to RISC-V. + +RISC-V: Starting RISC-V Initialization. + +RISC-V: Semaphore is not busy - with previous value: 1 + +RISC-V: Finished startup. Main UART0 control is handled by RISC-V now. + +RISC-V: Starting Controller and Game + + + + + + + + + + + | | | + | | | + | | | +----------------------------------- + | | | + | | | + | | | +----------------------------------- + | | | + | | 0002 | + | | | +----------------------------------- + | | | + | | | + | | | +``` diff --git a/Examples/MAX32655/Demo_2048/RISCV/RISCV.launch b/Examples/MAX32655/Demo_2048/RISCV/RISCV.launch new file mode 100644 index 00000000000..66a72794ebc --- /dev/null +++ b/Examples/MAX32655/Demo_2048/RISCV/RISCV.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32655/Demo_2048/RISCV/inc/controller.h b/Examples/MAX32655/Demo_2048/RISCV/inc/controller.h new file mode 100644 index 00000000000..51453a4c21d --- /dev/null +++ b/Examples/MAX32655/Demo_2048/RISCV/inc/controller.h @@ -0,0 +1,52 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32655_DEMO_2048_RISCV_INC_CONTROLLER_H_ +#define EXAMPLES_MAX32655_DEMO_2048_RISCV_INC_CONTROLLER_H_ + +/* **** Includes **** */ + +#include +#include "mxc_device.h" +#include "uart.h" + +/* **** Definitions **** */ + +/* **** Function Prototypes **** */ + +/** + * @brief Initialize the user controller (PC Keyboard). + * - Use the system clock for UART which should be the IPO (fastest). + * + * @param uart Select which UART port the controller is connected to. + * @param baud Select the highest baud rate that the device can support. + * + * @return Success/Fail, see \ref MXC_Error_Codes for a list of return codes. + */ +int Controller_Init(mxc_uart_regs_t *uart, uint32_t baud); + +/** + * @brief Start the Controller and listen for any keypresses. + * + * @param req UART request struct needed for transactions. + * + * @return Success/Fail, see \ref MXC_Error_Codes for a list of return codes. + */ +int Controller_Start(mxc_uart_req_t *req); + +#endif // EXAMPLES_MAX32655_DEMO_2048_RISCV_INC_CONTROLLER_H_ diff --git a/Examples/MAX32655/Demo_2048/RISCV/inc/game_2048.h b/Examples/MAX32655/Demo_2048/RISCV/inc/game_2048.h new file mode 100644 index 00000000000..45222b36eb4 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/RISCV/inc/game_2048.h @@ -0,0 +1,107 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32655_DEMO_2048_RISCV_INC_GAME_2048_H_ +#define EXAMPLES_MAX32655_DEMO_2048_RISCV_INC_GAME_2048_H_ + +/* **** Includes **** */ + +#include + +/* **** Definitions **** */ + +/** + * This enum is used to keep track of which direction the blocks will slide to + * for the main logic to handle. + * IMPORTANT: Sync these directions with the ARM core. + */ +typedef enum { + INPUT_UP = 0, + INPUT_DOWN = 1, + INPUT_LEFT = 2, + INPUT_RIGHT = 3, +} input_direction_t; + +/** + * These enums help keep track what blocks were deleted from previous grid, and + * combined at new grid. + * IMPORTANT: Sync these commands with the ARM core. + */ +typedef enum { EMPTY = 0, ERASE = 1, COMBINE = 2, UNMOVED = 3 } block_state_t; + +/** + * These enums help track the state of the end game.. + * IMPORTANT: Sync these commands with the ARM core. + */ +typedef enum { + IN_PROGRESS = 0, + GAME_OVER = 1, + WINNER = 2, +} game_state_t; + +/* **** Function Prototypes **** */ + +/** + * @brief Initializes the game logic for 2048. + * + * @param new_block_location_idx Pointer which holds 1-D index location of where + * the starting blcok would spawn. + * + * @return Success/Fail, see \ref MXC_Error_Codes for a list of return codes. + */ +int Game_2048_Init(uint8_t *new_block_location_idx); + +/** + * @brief Get the state of the game (in progress, game over, or win). + * + * @return State of game.. + */ +game_state_t Game_2048_CheckState(void); + +/** + * @brief Update the grid. + * + * @param direction The direction that all the blocks slide to. + * @param new_block_1D_idx Pointer which holds 1-D index location of where + * the new blcok would spawn. + * + * @return Success/Fail, see \ref MXC_Error_Codes for a list of return codes. + */ +bool Game_2048_UpdateGrid(input_direction_t direction, uint8_t *new_block_1D_idx); + +/** + * @brief Prints the grid to the terminal. + */ +void Game_2048_PrintGrid(void); + +/** + * @brief Gets the current grid. + * + * @param grid Pointer to 2-D array to hold the current grid. + */ +void Game_2048_GetGrid(uint32_t grid[4][4]); + +/** + * @brief Gets the current grid state which tells you what blocks + * were deleted, unmoved, or combined. + * + * @param grid Pointer to 2-D array to hold the current grid state. + */ +void Game_2048_GetGridState(uint8_t grid_state[4][4]); + +#endif // EXAMPLES_MAX32655_DEMO_2048_RISCV_INC_GAME_2048_H_ diff --git a/Examples/MAX32655/Demo_2048/RISCV/inc/ipc_defines.h b/Examples/MAX32655/Demo_2048/RISCV/inc/ipc_defines.h new file mode 100644 index 00000000000..38447ce34df --- /dev/null +++ b/Examples/MAX32655/Demo_2048/RISCV/inc/ipc_defines.h @@ -0,0 +1,61 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32655_DEMO_2048_RISCV_INC_IPC_DEFINES_H_ +#define EXAMPLES_MAX32655_DEMO_2048_RISCV_INC_IPC_DEFINES_H_ + +/* **** Includes **** */ + +#include + +/* **** Definitions **** */ + +// These should match with the ARM core's copy of ipc_defines.h + +/// Semaphores +// Should never reach here +#if (MAILBOX_SIZE == 0) +#error "Mailbox size is 0." +#endif + +// Keep track for Semaphore peripheral. +#define SEMA_IDX_ARM (0) +#define SEMA_IDX_RISCV (1) + +#define MAILBOX_OVERHEAD (2 * sizeof(uint16_t)) +#define MAILBOX_PAYLOAD_LEN (MAILBOX_SIZE - MAILBOX_OVERHEAD) +typedef struct { + uint16_t readLocation; + uint16_t writeLocation; +#if (MAILBOX_SIZE == 0) + uint8_t payload[1]; +#else + uint8_t payload[MAILBOX_PAYLOAD_LEN]; +#endif +} mxcSemaBox_t; + +#define MAILBOX_MAIN_GRID_IDX (0) // Main grid indices are from 0 to (16 blocks * 4 bytes) - 1. +#define MAILBOX_MAIN_GRID_STATE_IDX \ + (4 * 16) // Indices are from (4 bytes * 16) to ((4 bytes * 16) + (1 byte * 16))) +#define MAILBOX_KEYPRESS_IDX ((4 * 16) + (1 * 16)) // All indices before are for the main grids. +#define MAILBOX_IF_BLOCK_MOVED_IDX (MAILBOX_KEYPRESS_IDX + 1) +#define MAILBOX_NEW_BLOCK_LOCATION_IDX (MAILBOX_IF_BLOCK_MOVED_IDX + 1) +#define MAILBOX_GAME_STATE_IDX (MAILBOX_NEW_BLOCK_LOCATION_IDX + 1) +#define MAILBOX_MOVES_COUNT_IDX (MAILBOX_GAME_STATE_IDX + 1) + +#endif // EXAMPLES_MAX32655_DEMO_2048_RISCV_INC_IPC_DEFINES_H_ diff --git a/Examples/MAX32655/Demo_2048/RISCV/main.c b/Examples/MAX32655/Demo_2048/RISCV/main.c new file mode 100644 index 00000000000..931d232a49c --- /dev/null +++ b/Examples/MAX32655/Demo_2048/RISCV/main.c @@ -0,0 +1,422 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief RISCV Portion of the 2048 Game. + * @details + */ + +/***** Includes *****/ +#include +#include +#include +#include + +// MSDK-provided Drivers +#include "mxc_delay.h" +#include "mxc_device.h" +#include "board.h" +#include "led.h" +#include "pb.h" +#include "sema.h" + +// Application Libraries +#include "controller.h" +#include "game_2048.h" +#include "ipc_defines.h" + +/***** Definitions *****/ + +#if DEV_MODE_TRACE +#define PRINT(...) printf(__VA_ARGS__) +#else +// Don't print anything +#define PRINT(...) +#endif + +/// Controller Settings. +// Change UART speeds here, if needed. 115200 was more than enough, but users +// have the option to increase the speed here. +// UART speed up is set at the beginning of BOTH ARM and RISC-V main code +// because SystemInit for both cores default the UART baud rate to +// 115200. +#define CONTROLLER_UART_BAUD (115200) + +/* **** Globals **** */ +// Defined in sema_reva.c +extern mxcSemaBox_t *mxcSemaBox0; // ARM writes, RISCV reads +extern mxcSemaBox_t *mxcSemaBox1; // ARM reads, RISCV writes + +// Rename boxes for readability. +#define SEMA_RISCV_MAILBOX mxcSemaBox0 +#define SEMA_ARM_MAILBOX mxcSemaBox1 + +mxc_uart_req_t CONTROLLER_REQ; +uint8_t CONTROLLER_KEYPRESS; +volatile bool KEYPRESS_READY = false; +uint8_t KEYPRESS_INPUT_DIR; + +uint32_t RISCV_GRID_COPY[4][4] = { 0 }; +uint8_t RISCV_GRID_COPY_STATE[4][4] = { 0 }; + +uint32_t MOVES_COUNT = 0; + +// Select Console UART instance. +mxc_uart_regs_t *CONTROLLER_UART = MXC_UART0; + +/***** Functions *****/ + +void CONTROLLER_KEYPRESS_Callback(mxc_uart_req_t *req, int cb_error) +{ + int error; + + // No keypress if error detected. + if (cb_error != E_NO_ERROR) { + PRINT("RISCV: Error listening to keypress: %d\n", cb_error); + PRINT("RISCV: Try again.\n"); + + CONTROLLER_KEYPRESS = 0; // NULL character + KEYPRESS_READY = false; + + MXC_UART_ClearRXFIFO(MXC_UART0); + + // Listen for next keypress. + error = Controller_Start(&CONTROLLER_REQ); + if (error != E_NO_ERROR) { + PRINT("RISC-V: Error listening for next controller keypress: %d\n", error); + LED_On(LED_RED); + } + + return; + } + + // User can add additional directional key switches here. + switch (CONTROLLER_KEYPRESS) { + case 'a': + KEYPRESS_INPUT_DIR = INPUT_LEFT; + KEYPRESS_READY = true; + break; + + case 'd': + KEYPRESS_INPUT_DIR = INPUT_RIGHT; + KEYPRESS_READY = true; + break; + + case 'w': + KEYPRESS_INPUT_DIR = INPUT_UP; + KEYPRESS_READY = true; + break; + + case 's': + KEYPRESS_INPUT_DIR = INPUT_DOWN; + KEYPRESS_READY = true; + break; + + default: + KEYPRESS_READY = false; + error = Controller_Start(&CONTROLLER_REQ); + if (error != E_NO_ERROR) { + PRINT("RISC-V: Invalid Keypress: %c\n", CONTROLLER_KEYPRESS); + } + } + + PRINT("RISC-V: Keypress: %c - 0x%02x Error: %d\n", CONTROLLER_KEYPRESS, CONTROLLER_KEYPRESS, + cb_error); +} + +// Must grab grid space before calling this function to have the latest +// grid state. +void PRINT_GRID(void) +{ + // Imitate the grid is refreshing on terminal. + PRINT("\n\n\n\n\n\n\n\n\n\n"); + + for (int row = 0; row < 4; row++) { + PRINT(" | | | \n"); + + for (int col = 0; col < 4; col++) { + if (RISCV_GRID_COPY[row][col] != 0) { + PRINT(" %04d ", RISCV_GRID_COPY[row][col]); + } else { + PRINT(" "); + } + + // Only print border 3 times. + if (col < 3) { + PRINT("|"); + } + } + + PRINT("\n | | | \n"); + + // Only print the row border 3 times. + if (row < 3) { + PRINT("-----------------------------------\n"); + } + } +} + +void PRINT_GRID_STATE(void) +{ + Game_2048_GetGridState(RISCV_GRID_COPY_STATE); + + // Imitate the grid is refreshing on terminal. + PRINT("\n\n\n\n\n\n\n\n\n\n"); + + for (int row = 0; row < 4; row++) { + PRINT(" | | | \n"); + + for (int col = 0; col < 4; col++) { + if (RISCV_GRID_COPY_STATE[row][col] != 0) { + PRINT(" %02d ", RISCV_GRID_COPY_STATE[row][col]); + } else { + PRINT(" "); + } + + // Only print border 3 times. + if (col < 3) { + PRINT("|"); + } + } + + PRINT("\n | | | \n"); + + // Only print the row border 3 times. + if (row < 3) { + PRINT("-----------------------------------\n"); + } + } +} + +// Must grab grid space before calling this function to have the latest +// grid state. +void SendGridToARMCore(void) +{ + int i = MAILBOX_MAIN_GRID_IDX; + for (int row = 0; row < 4; row++) { + for (int col = 0; col < 4; col++) { + SEMA_ARM_MAILBOX->payload[i] = (RISCV_GRID_COPY[row][col] >> (8 * 0)) & 0xFF; + SEMA_ARM_MAILBOX->payload[i + 1] = (RISCV_GRID_COPY[row][col] >> (8 * 1)) & 0xFF; + SEMA_ARM_MAILBOX->payload[i + 2] = (RISCV_GRID_COPY[row][col] >> (8 * 2)) & 0xFF; + SEMA_ARM_MAILBOX->payload[i + 3] = (RISCV_GRID_COPY[row][col] >> (8 * 3)) & 0xFF; + + i += 4; + } + } + + i = MAILBOX_MAIN_GRID_STATE_IDX; + for (int row = 0; row < 4; row++) { + for (int col = 0; col < 4; col++) { + SEMA_ARM_MAILBOX->payload[i] = (RISCV_GRID_COPY_STATE[row][col] >> (8 * 0)) & 0xFF; + i++; + } + } +} + +inline void SendKeypressToARMCore(void) +{ + SEMA_ARM_MAILBOX->payload[MAILBOX_KEYPRESS_IDX] = (CONTROLLER_KEYPRESS >> (8 * 0)) & 0xFF; +} + +void SendNewBlockIndexToARMCore(uint8_t *new_block_idx, uint8_t did_block_move_or_is_init) +{ + SEMA_ARM_MAILBOX->payload[MAILBOX_IF_BLOCK_MOVED_IDX] = (did_block_move_or_is_init >> (8 * 0)) & + 0xFF; + SEMA_ARM_MAILBOX->payload[MAILBOX_NEW_BLOCK_LOCATION_IDX] = (*new_block_idx >> (8 * 0)) & 0xFF; +} + +void SendGameStateToARMCore(game_state_t state) +{ + SEMA_ARM_MAILBOX->payload[MAILBOX_GAME_STATE_IDX] = (state >> (8 * 0)) & 0xFF; +} + +void SendMovesCountToARMCore(uint32_t moves_count) +{ + SEMA_ARM_MAILBOX->payload[MAILBOX_MOVES_COUNT_IDX] = (moves_count >> (8 * 0)) & 0xFF; + SEMA_ARM_MAILBOX->payload[MAILBOX_MOVES_COUNT_IDX + 1] = (moves_count >> (8 * 1)) & 0xFF; + SEMA_ARM_MAILBOX->payload[MAILBOX_MOVES_COUNT_IDX + 2] = (moves_count >> (8 * 2)) & 0xFF; + SEMA_ARM_MAILBOX->payload[MAILBOX_MOVES_COUNT_IDX + 3] = (moves_count >> (8 * 3)) & 0xFF; +} + +// ***************************************************************************** +int main(void) +{ + int error; + int state; + + // Location of new block represented as an index for a 1-D array. + // (0-15) instead of represented as a coordinate (row, col) for + // easier and quicker transfer into mailbox. + uint8_t new_block_idx_location = 0; + + // Speed up UART0 (Console) baud rate as the controller and console share the same port. + // Plus, Console UART gets reverted to default speed (115200) during SystemInit() during both + // ARM and RISC-V SystemInit(). + error = Controller_Init(CONTROLLER_UART, CONTROLLER_UART_BAUD); + if (error != E_NO_ERROR) { + PRINT("RISC-V: Error speeding up baud rate: %d\n", error); + LED_On(LED_RED); + while (1) {} + } + + // Set up Controller Request Struct. + CONTROLLER_REQ.uart = CONTROLLER_UART; + CONTROLLER_REQ.txData = NULL; + CONTROLLER_REQ.txLen = 0; + CONTROLLER_REQ.rxData = &CONTROLLER_KEYPRESS; + CONTROLLER_REQ.rxLen = 1; // Handle 1 keypress at a time + CONTROLLER_REQ.callback = CONTROLLER_KEYPRESS_Callback; + + // NOTE: Printing to terminal is done on UART0 which both the ARM and RISC-V core must share. + // Must be mindful when to use PRINT (printf) for RISC-V side. + PRINT("RISC-V: Starting RISC-V Initialization.\n\n"); + + MXC_SEMA_Init(); + + error = MXC_SEMA_CheckSema(SEMA_IDX_RISCV); + if (error != E_NO_ERROR) { + PRINT("RISC-V: Semaphore for RISC-V core is busy: %d\n", error); + LED_On(LED_GREEN); + while (1) {} + } + + error = MXC_SEMA_GetSema(SEMA_IDX_RISCV); + if (error != E_NO_ERROR) { + PRINT("RISC-V: Semaphore is busy - with previous value: %d\n\n", + MXC_SEMA->semaphores[SEMA_IDX_RISCV]); + LED_On(LED_RED); + while (1) {} + } else { + PRINT("RISC-V: Semaphore is not busy - with previous value: %d\n\n", + MXC_SEMA->semaphores[SEMA_IDX_RISCV]); + } + + // Initialize mailboxes between ARM and RISCV cores. + MXC_SEMA_InitBoxes(); + + // RISCV startup and mailbox initialization is finished. Signal ARM core to continue. + PRINT("RISC-V: Finished startup. Main UART0 control is handled by RISC-V now.\n\n"); + MXC_SEMA_FreeSema(SEMA_IDX_ARM); + + PRINT("RISC-V: Starting Controller and Game\n"); + + // Start Controller. + error = Controller_Start(&CONTROLLER_REQ); + if (error != E_NO_ERROR) { + PRINT("RISC-V: Error starting the controller: %d\n", error); + LED_On(LED_RED); + while (1) {} + } + + error = Game_2048_Init(&new_block_idx_location); + if (error != E_NO_ERROR) { + PRINT("RISC-V: Error starting game: %d\n", error); + LED_On(LED_RED); + while (1) {} + } + + // Send starting grid to ARM core. + // This function must be called before PRINT_GRID() and SendGridToARMCore() + // functions to grab the latest grid state. + Game_2048_GetGrid(RISCV_GRID_COPY); + + PRINT_GRID(); + + SendGridToARMCore(); + + SendNewBlockIndexToARMCore(&new_block_idx_location, true); + + SendGameStateToARMCore(Game_2048_CheckState()); + + // Signal ARM core to display initial grid. + MXC_SEMA_FreeSema(SEMA_IDX_ARM); + + // Wait for ARM core to finish displaying the starting grid. + while (MXC_SEMA_CheckSema(SEMA_IDX_RISCV) != E_NO_ERROR) {} + + while (1) { + // Wait for keypress. + while (KEYPRESS_READY == false) {} + + // Make sure the ARM core is finished displaying. + while (MXC_SEMA_CheckSema(SEMA_IDX_RISCV) != E_NO_ERROR) {} + MXC_SEMA_GetSema(SEMA_IDX_RISCV); + + input_direction_t dir = KEYPRESS_INPUT_DIR; + + state = Game_2048_UpdateGrid(dir, &new_block_idx_location); + if (state == true) { + PRINT("RISC-V: Blocks moved.\n"); + SendMovesCountToARMCore(++MOVES_COUNT); + } else { + PRINT("RISC-V: Blocks did not move.\n"); + } + + // Get the state of the game after finishing latest move. + game_state_t game_state = Game_2048_CheckState(); + + // These functions must be called before PRINT_GRID() and SendGridToARMCore() + // functions to grab the latest grid state. + Game_2048_GetGrid(RISCV_GRID_COPY); + Game_2048_GetGridState(RISCV_GRID_COPY_STATE); + + PRINT_GRID(); + + SendGridToARMCore(); + + SendKeypressToARMCore(); + + SendGameStateToARMCore(game_state); + + SendNewBlockIndexToARMCore(&new_block_idx_location, state); + + KEYPRESS_READY = false; + + // Check if game is finished. + if (game_state == WINNER) { + // Signal ARM to finish final display update. + MXC_SEMA_FreeSema(SEMA_IDX_ARM); + + PRINT("RISCV: Congratulations, you win!\n"); + PRINT("RISCV: Ending game.\n"); + + while (1) {} + } else if (game_state == GAME_OVER) { + // Signal ARM to finish final display update. + MXC_SEMA_FreeSema(SEMA_IDX_ARM); + + PRINT("RISCV: Game Over. Nice try! Better luck next time.\n"); + PRINT("RISCV: Ending game.\n"); + while (1) {} + } + + // Listen for next keypress. + MXC_UART_ClearRXFIFO(MXC_UART0); + + error = Controller_Start(&CONTROLLER_REQ); + if (error != E_NO_ERROR) { + PRINT("RISC-V: Error listening for next controller keypress: %d\n", error); + LED_On(LED_RED); + while (1) {} + } + + // Signal ARM to update display. + MXC_SEMA_FreeSema(SEMA_IDX_ARM); + } +} diff --git a/Examples/MAX32655/Demo_2048/RISCV/project.mk b/Examples/MAX32655/Demo_2048/RISCV/project.mk new file mode 100644 index 00000000000..ec7e2cc78eb --- /dev/null +++ b/Examples/MAX32655/Demo_2048/RISCV/project.mk @@ -0,0 +1,29 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Add your config here! + +# Build this project for the RISC-V core +# Note: The RISCV portion of the game is not built on its own. +# Check the ARM project's project.mk file. +RISCV_CORE=1 + +IPATH += ./inc +VPATH += ./src + +DEV_MODE_TRACE = 1 +ifeq ($(DEV_MODE_TRACE), 1) +PROJ_CFLAGS += -DDEV_MODE_TRACE=1 +endif + +MAILBOX_SIZE = 226 + +ifeq ($(BOARD),FTHR_Apps_P1) +$(error ERR_NOTSUPPORTED: This example requires a TFT display, therefore it's not supported on the MAX32650FTHR) +endif diff --git a/Examples/MAX32655/Demo_2048/RISCV/src/controller.c b/Examples/MAX32655/Demo_2048/RISCV/src/controller.c new file mode 100644 index 00000000000..c7ea6f3365c --- /dev/null +++ b/Examples/MAX32655/Demo_2048/RISCV/src/controller.c @@ -0,0 +1,75 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/* **** Includes **** */ + +#include +#include "mxc_device.h" +#include "uart.h" + +/* **** Definitions **** */ + +/* **** Globals **** */ + +static mxc_uart_regs_t *Controller_UART; + +/* **** Functions **** */ + +void UART0_IRQHandler(void) +{ + MXC_UART_AsyncHandler(Controller_UART); +} + +int Controller_Init(mxc_uart_regs_t *uart, uint32_t baud) +{ + int error; + + error = MXC_UART_Shutdown(uart); + if (error != E_NO_ERROR) { + return error; + } + + // Set up System UART interrupt for Controller. + // Clear if Console UART was previously set up in SystemInit. + NVIC_ClearPendingIRQ(MXC_UART_GET_IRQ((MXC_UART_GET_IDX(uart)))); + NVIC_DisableIRQ(MXC_UART_GET_IRQ((MXC_UART_GET_IDX(uart)))); + NVIC_EnableIRQ(MXC_UART_GET_IRQ((MXC_UART_GET_IDX(uart)))); + + // This will re-initialize the console UART since the controller + // and console share the same UART port. + error = MXC_UART_Init(uart, baud, MXC_UART_APB_CLK); + if (error != E_NO_ERROR) { + return error; + } + + Controller_UART = uart; + + return E_NO_ERROR; +} + +int Controller_Start(mxc_uart_req_t *req) +{ + int error; + + error = MXC_UART_TransactionAsync(req); + if (error != E_NO_ERROR) { + return error; + } + + return E_NO_ERROR; +} diff --git a/Examples/MAX32655/Demo_2048/RISCV/src/game_2048.c b/Examples/MAX32655/Demo_2048/RISCV/src/game_2048.c new file mode 100644 index 00000000000..e27a9424b99 --- /dev/null +++ b/Examples/MAX32655/Demo_2048/RISCV/src/game_2048.c @@ -0,0 +1,741 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/* **** Includes **** */ + +#include +#include +#include +#include "mxc_device.h" +#include "trng.h" + +#include "game_2048.h" + +/* **** Definitions **** */ + +#if DEV_MODE_TRACE +#define PRINT(...) printf(__VA_ARGS__) +#else +// Don't print anything +#define PRINT(...) +#endif + +#define COLUMN_SUM(col) \ + ((MAIN_2048_GRID[0][col] + MAIN_2048_GRID[1][col] + MAIN_2048_GRID[2][col] + \ + MAIN_2048_GRID[3][col])) +#define ROW_SUM(row) \ + ((MAIN_2048_GRID[row][0] + MAIN_2048_GRID[row][1] + MAIN_2048_GRID[row][2] + \ + MAIN_2048_GRID[row][3])) + +/* **** Globals **** */ + +// Main 4x4 2048 grid that is used to save current state of game. +// Did not choose to create defines for the size of the grid because +// 2048 is played on 4x4 grid. +// When using the grid as a single dimensional array, these are the +// the indices assigned to each of the 16 squares. +// 0 | 1 | 2 | 3 +// ---|---|---|--- +// 4 | 5 | 6 | 7 +// ---|---|---|--- +// 8 | 9 | a | b +// ---|---|---|--- +// c | d | e | f +static uint32_t MAIN_2048_GRID[4][4]; +static block_state_t PREV_2048_GRID_STATE[4][4]; + +static game_state_t GAME_STATE; + +static uint16_t AVAILABLE_EMPTY_BLOCKS_NUM; + +/* **** Functions **** */ + +/** + * Must have TRNG initialized first before calling this function. + * + * @param is_init True/False if a new block is added during + * initialization when grid is first created. + * @param new_block_1D_idx_location Pointer to hold the index (0-15) of the new + * block location. + * + * @return If true (non-zero value), new block added. If false (zero), + * game over. + */ +static bool add_new_block(bool is_init, uint8_t *new_block_1D_idx_location) +{ + uint8_t block_2_or_4; + uint32_t open_space_idx; + uint32_t available_open_spaces = 0; + uint8_t open_space_count = 0; + + // If at the start of the new program, start with the 2 block. + if (is_init == true) { + block_2_or_4 = 2; + } else { + // Select whether a 2 or 4 block will be placed. + // Add more weight to 2. + if (MXC_TRNG_RandomInt() % 3) { // 1 or 2 + block_2_or_4 = 2; + } else { // 0 + block_2_or_4 = 4; + } + } + + // Find available spaces in the grid by representing the grid (2-D array) + // as a 1-D array. + // Locations of main Locations of main + // grid represented grid represented as + // as indices for coordinates (row,col) + // 1-D array: for 2-D array: + // 0 | 1 | 2 | 3 (0,0) | (0,1) | (0,2) | (0,3) + // ---|---|---|--- ------|-------|-------|------ + // 4 | 5 | 6 | 7 (1,0) | (1,1) | (1,2) | (1,3) + // ---|---|---|--- ======> ------|-------|-------|------ + // 8 | 9 | a | b (2,0) | (2,1) | (2,2) | (2,3) + // ---|---|---|--- ------|-------|-------|------ + // c | d | e | f (3,0) | (3,1) | (3,2) | (3,3) + for (int i = 0; i < 16; i++) { + if (MAIN_2048_GRID[i / 4][i % 4] == 0) { + available_open_spaces += 1; + } + } + + // This should be the only place that this variable is written to. + AVAILABLE_EMPTY_BLOCKS_NUM = available_open_spaces; + + // No available space, game over. + if (available_open_spaces == 0) { + return false; + } + + open_space_idx = (MXC_TRNG_RandomInt() % available_open_spaces); + + // Fill the "n-th" available open space where n is variable "open_space_idx". + // We have the 1-D array index and need to convert to 2-D array coordinate location. + int idx = 0; + for (int row = 0; row < 4; row++) { + for (int col = 0; col < 4; col++) { + if (MAIN_2048_GRID[row][col] == 0) { + if (open_space_count == open_space_idx) { + // Found "n-th" available open space, update grid. + MAIN_2048_GRID[row][col] = block_2_or_4; + *new_block_1D_idx_location = idx; + + // Decrement as a new block was just filled into the function. + AVAILABLE_EMPTY_BLOCKS_NUM--; + return true; + } + + open_space_count++; + } + idx++; + } + } + + // Added for build warning. + // Shouldn't reach here as there's a check earlier in the function that checks if there + // are any available spaces to save time from iterating through the for loop. + return false; +} + +int Game_2048_Init(uint8_t *new_block_location_idx) +{ + int error; + + // Clear the grid. + for (int i = 0; i < 4; i++) { + for (int j = 0; j < 4; j++) { + MAIN_2048_GRID[i][j] = 0; + } + } + + // Initialize TRNG that is used to randomly select a 2 or 4 block in the grid. + error = MXC_TRNG_Init(); + if (error != E_NO_ERROR) { + return error; + } + + // Should never reach here since we cleared the grid earlier in the function. + if (add_new_block(true, new_block_location_idx) == false) { + return E_BAD_STATE; + } + + GAME_STATE = IN_PROGRESS; + + return E_NO_ERROR; +} + +inline static bool row_logic_left(void) +{ + bool blocks_moved = false; + + for (int row = 0; row < 4; row++) { + // Don't waste processing time if row is empty by checking if sum of all blocks in row is 0. + if (ROW_SUM(row) == 0) { + continue; + } + + uint32_t prev_row[4] = { 0 }; + uint32_t temp_row[4] = { 0 }; + int temp_col_num = 0; // Also tracks how many valid blocks there are in a row. + + // Get all valid blocks in column to help with same-value pair logic. + for (int col = 0; col < 4; col++) { // Start at left of main row. + prev_row[col] = MAIN_2048_GRID[row][col]; + + if (MAIN_2048_GRID[row][col] != 0) { + temp_row[temp_col_num] = MAIN_2048_GRID[row][col]; + + temp_col_num += 1; + + // Clear valid block on main grid for temp_row to write the updated + // row into after logic is done. + MAIN_2048_GRID[row][col] = 0; + } + } + + // If there's only one valid block, don't bother with the same-value pair logic. + if (temp_col_num == 1) { + MAIN_2048_GRID[row][0] = temp_row[0]; + + // Check if the single block moved left. + if (prev_row[0] != MAIN_2048_GRID[row][0]) { + blocks_moved = true; + + // Represent the state of the original block location as deleted for + // display. + for (int col = 3; col >= 0; col--) { + if (prev_row[col] != 0) { + PREV_2048_GRID_STATE[row][col] = ERASE; + break; + } + } + } else { + PREV_2048_GRID_STATE[row][0] = UNMOVED; + } + + continue; + } + + // Main logic: Combine the same-value pairs and write updated row to main grid. + int main_grid_col = 0; // index used to keep track of where to write next on main grid. + + // Start at top of temp column. + for (int t_col = 0; t_col < 4; t_col++) { + if (temp_row[t_col] == 0 || t_col >= temp_col_num) { + // Reached end of valid blocks in row. + break; + } + + // Write to main grid. + MAIN_2048_GRID[row][main_grid_col] = temp_row[t_col]; + + // Prevent illegal memory reads past main array size when at last column. + if (t_col < 3) { + // If same-value pair detected, combine then re-update the same block in main grid. + if (temp_row[t_col] == temp_row[t_col + 1]) { + // Combine then write to main grid. + MAIN_2048_GRID[row][main_grid_col] = (temp_row[t_col] * 2); + + PREV_2048_GRID_STATE[row][main_grid_col] = COMBINE; + + // Because a same-value pair was combined at index "col" and "col + 1", + // increment the col so that the next iteration of the for loop + // will start at "col + 2" in the temp_row. + t_col += 1; + } + } + + main_grid_col += 1; + } + + // Check if any blocks moved starting from right to left, and keep track of what blocks were moved + // to delete on the display. + for (int col = 3; col >= 0; col--) { + if (prev_row[col] != MAIN_2048_GRID[row][col]) { + blocks_moved = true; + + if (PREV_2048_GRID_STATE[row][col] != COMBINE) { + PREV_2048_GRID_STATE[row][col] = ERASE; + } + } else if ((prev_row[col] != 0) && (prev_row[col] == MAIN_2048_GRID[row][col])) { + if (PREV_2048_GRID_STATE[row][col] != COMBINE) { + PREV_2048_GRID_STATE[row][col] = UNMOVED; + } + } + } + } + + return blocks_moved; +} + +inline static bool row_logic_right(void) +{ + bool blocks_moved = false; + + for (int row = 0; row < 4; row++) { + // Don't waste processing time if row is empty by checking if sum of all blocks in row is 0. + if (ROW_SUM(row) == 0) { + continue; + } + + uint32_t prev_row[4] = { 0 }; + uint32_t temp_row[4] = { 0 }; + int temp_col_num = 0; // Also tracks how many valid blocks there are in a row. + + // Get all valid blocks to help with same-value pair logic. + for (int col = 3; col >= 0; col--) { // Start at right of main row. + prev_row[col] = MAIN_2048_GRID[row][col]; + + if (MAIN_2048_GRID[row][col] != 0) { + temp_row[temp_col_num] = MAIN_2048_GRID[row][col]; + + temp_col_num += 1; + + // Clear valid block on main grid for temp_row to write the updated + // row into after logic is done. + MAIN_2048_GRID[row][col] = 0; + } + } + + // If there's only one valid block, don't bother with the same-value pair logic. + if (temp_col_num == 1) { + // Don't forget, starting at end of main row, but temp_row is still in order (left to right). + MAIN_2048_GRID[row][3] = temp_row[0]; + + // Check if the single block moved right. + if (prev_row[3] != MAIN_2048_GRID[row][3]) { + blocks_moved = true; + + // Represent the state of the original block location as deleted. + for (int col = 0; col < 4; col++) { + if (prev_row[col] != 0) { + PREV_2048_GRID_STATE[row][col] = ERASE; + break; + } + } + } else { + PREV_2048_GRID_STATE[row][3] = UNMOVED; + } + + continue; + } + + // Main logic: Combine the same-value pairs and write updated row to main grid. + int main_grid_col = 3; // index used to keep track of where to write next on main grid. + + // Start at top of temp column. + for (int t_col = 0; t_col < 4; t_col++) { + if (temp_row[t_col] == 0 || t_col >= temp_col_num) { + // Reached end of valid blocks. + break; + } + + // Write to main grid. + MAIN_2048_GRID[row][main_grid_col] = temp_row[t_col]; + + // Prevent illegal memory reads past main array size when at last column. + if (t_col < 3) { + // If same-value pair detected, combine then re-update the same block in main grid. + if (temp_row[t_col] == temp_row[t_col + 1]) { + // Combine then write to main grid. + MAIN_2048_GRID[row][main_grid_col] = (temp_row[t_col] * 2); + + PREV_2048_GRID_STATE[row][main_grid_col] = COMBINE; + + // Because a same-value pair was combined at index "col" and "col + 1", + // increment the col so that the next iteration of the for loop + // will start at "col + 2" in the temp_row. + t_col += 1; + } + } + + main_grid_col -= 1; + } + + // Check if any blocks moved starting from left to right, and keep track of what blocks were moved + // to delete on the display. + for (int col = 0; col < 4; col++) { + // Don't forget direction, start at end. + if (prev_row[col] != MAIN_2048_GRID[row][col]) { + blocks_moved = true; + + if (PREV_2048_GRID_STATE[row][col] != COMBINE) { + PREV_2048_GRID_STATE[row][col] = ERASE; + } + } else if ((prev_row[col] != 0) && (prev_row[col] == MAIN_2048_GRID[row][col])) { + if (PREV_2048_GRID_STATE[row][col] != COMBINE) { + PREV_2048_GRID_STATE[row][col] = UNMOVED; + } + } + } + } + + return blocks_moved; +} + +inline static bool column_logic_up(void) +{ + bool blocks_moved = false; + + for (int col = 0; col < 4; col++) { + // Don't waste processing time if column is empty by checking if sum of all blocks in column is 0. + if (COLUMN_SUM(col) == 0) { + continue; + } + + uint32_t prev_col[4] = { 0 }; + uint32_t temp_column[4] = { 0 }; + int temp_row_num = 0; // Also tracks how many valid blocks there are. + + // Get all valid blocks to help with same-value pair logic. + for (int row = 0; row < 4; row++) { // Start at top of main column. + prev_col[row] = MAIN_2048_GRID[row][col]; + + if (MAIN_2048_GRID[row][col] != 0) { + temp_column[temp_row_num] = MAIN_2048_GRID[row][col]; + + temp_row_num += 1; + + // Clear valid block on main grid for temp_column to write the updated + // column into after logic is done. + MAIN_2048_GRID[row][col] = 0; + } + } + + // If there's only one valid block, don't bother with the same-value pair logic. + if (temp_row_num == 1) { + MAIN_2048_GRID[0][col] = temp_column[0]; + + // Check if the single block moved up. + if (prev_col[0] != MAIN_2048_GRID[0][col]) { + blocks_moved = true; + + for (int row = 3; row >= 0; row--) { + if (prev_col[row] != 0) { + PREV_2048_GRID_STATE[row][col] = ERASE; + break; + } + } + + } else { + PREV_2048_GRID_STATE[0][col] = UNMOVED; + } + + continue; + } + + // Main logic: Combine the same-value pairs and write updated column to main grid. + int main_grid_row = 0; // index used to keep track of where to write next on main grid. + + // Start at top of temp column. + for (int t_row = 0; t_row < 4; t_row++) { + if (temp_column[t_row] == 0 || t_row >= temp_row_num) { + // Reached end of valid blocks. + break; + } + + // Write to main grid. + MAIN_2048_GRID[main_grid_row][col] = temp_column[t_row]; + + // Prevent illegal memory reads past main array size when at last row. + if (t_row < 3) { + // If same-value pair detected, combine then re-update grid. + if (temp_column[t_row] == temp_column[t_row + 1]) { + // Combine then write to main grid. + MAIN_2048_GRID[main_grid_row][col] = (temp_column[t_row] * 2); + + PREV_2048_GRID_STATE[main_grid_row][col] = COMBINE; + + // Because a same-value pair was combined at index "row" and "row + 1", + // increment the row so that the next iteration of the for loop + // will start at "row + 2" in the temp_column. + t_row += 1; + } + } + + main_grid_row += 1; + } + + // Check if any blocks moved starting from bottom to top, and keep track of what blocks were moved + // to delete on the display. + for (int row = 3; row >= 0; row--) { + if (prev_col[row] != MAIN_2048_GRID[row][col]) { + blocks_moved = true; + + if (PREV_2048_GRID_STATE[row][col] != COMBINE) { + PREV_2048_GRID_STATE[row][col] = ERASE; + } + } else if ((prev_col[row] != 0) && (prev_col[row] == MAIN_2048_GRID[row][col])) { + if (PREV_2048_GRID_STATE[row][col] != COMBINE) { + PREV_2048_GRID_STATE[row][col] = UNMOVED; + } + } + } + } + + return blocks_moved; +} + +static bool column_logic_down(void) +{ + bool blocks_moved = false; + + for (int col = 0; col < 4; col++) { + // Don't waste processing time if column is empty by checking if sum of all blocks in column is 0. + if (COLUMN_SUM(col) == 0) { + continue; + } + + uint32_t prev_col[4] = { 0 }; + uint32_t temp_column[4] = { 0 }; + int temp_row_num = 0; // Also tracks how many valid blocks there are in column. + + // Get all valid blocks to help with same-value pair logic. + for (int row = 3; row >= 0; row--) { // Start at bottom of main column. + prev_col[row] = MAIN_2048_GRID[row][col]; + + if (MAIN_2048_GRID[row][col] != 0) { + temp_column[temp_row_num] = MAIN_2048_GRID[row][col]; + + temp_row_num += 1; + + // Clear valid block on main grid for temp_column to write the updated + // column into after logic is done. + MAIN_2048_GRID[row][col] = 0; + } + } + + // If there's only one valid block, don't bother with the same-value pair logic. + if (temp_row_num == 1) { + // Confusing but temp column goes in order no matter the direction (up/down). + MAIN_2048_GRID[3][col] = temp_column[0]; + + // Check if the single block moved down. + if (prev_col[3] != MAIN_2048_GRID[3][col]) { + blocks_moved = true; + + // Represent the state of the original block location as deleted. + for (int row = 0; row < 4; row++) { + if (prev_col[row] != 0) { + PREV_2048_GRID_STATE[row][col] = ERASE; + break; + } + } + } else { + PREV_2048_GRID_STATE[3][col] = UNMOVED; + } + + continue; + } + + // Main logic: Combine the same-value pairs and write updated column to main grid. + int main_grid_row = 3; // index used to keep track of where to write next on main grid. + + // Start at top of temp column. + for (int t_row = 0; t_row < 4; t_row++) { + if (temp_column[t_row] == 0 || t_row >= temp_row_num) { + // Reached end of valid blocks. + break; + } + + // Write to main grid. + MAIN_2048_GRID[main_grid_row][col] = temp_column[t_row]; + + // Prevent illegal memory reads (-1) index of temp column. + if (t_row < 3) { + // If same-value pair detected, combine then re-update grid. + if (temp_column[t_row] == temp_column[t_row + 1]) { + // Combine then write to main grid. + MAIN_2048_GRID[main_grid_row][col] = (temp_column[t_row] * 2); + + PREV_2048_GRID_STATE[main_grid_row][col] = COMBINE; + + // Because a same-value pair was combined at index "row" and "row + 1", + // increment the row so that the next iteration of the for loop + // will start at "row + 2" in the temp_column. + // Don't forget, temp column goes in order (top to bottom) even though + // we go backwards in main column due to down direction. + t_row += 1; + } + } + + main_grid_row -= 1; + } + + // Check if any blocks moved starting from bottom to top, and keep track of what blocks were moved + // to delete on the display. + for (int row = 0; row < 4; row++) { + if (prev_col[row] != MAIN_2048_GRID[row][col]) { + blocks_moved = true; + + if (PREV_2048_GRID_STATE[row][col] != COMBINE) { + PREV_2048_GRID_STATE[row][col] = ERASE; + } + } else if ((prev_col[row] != 0) && (prev_col[row] == MAIN_2048_GRID[row][col])) { + if (PREV_2048_GRID_STATE[row][col] != COMBINE) { + PREV_2048_GRID_STATE[row][col] = UNMOVED; + } + } + } + } + + return blocks_moved; +} + +game_state_t Game_2048_CheckState(void) +{ + // Check if there's a 2048 block. + for (int row = 0; row < 4; row++) { + for (int col = 0; col < 4; col++) { + if (MAIN_2048_GRID[row][col] == 2048) { + return WINNER; + } + } + } + + // Check if the new block that was just added filled in the + // last available empty block. + if (AVAILABLE_EMPTY_BLOCKS_NUM == 0) { + // If so, check if there are any swipes that can still be made before calling game over. + // This can be done by checking if there are any same-value pairs next to each other. + // Check if a row has same value pair. + for (int r = 0; r < 4; r++) { + for (int c = 0; c < 3; c++) { + if (MAIN_2048_GRID[r][c] == MAIN_2048_GRID[r][c + 1]) { + return IN_PROGRESS; + } + } + } + + // Check if a column has a same-value pair. + for (int c = 0; c < 4; c++) { + for (int r = 0; r < 3; r++) { + if (MAIN_2048_GRID[r][c] == MAIN_2048_GRID[r + 1][c]) { + return IN_PROGRESS; + } + } + } + + // If it reaches here, then there were no same-value pairs and no more moves can be made + return GAME_OVER; + } else { + return IN_PROGRESS; + } +} + +bool Game_2048_UpdateGrid(input_direction_t direction, uint8_t *new_block_1D_idx) +{ + bool blocks_moved; + + // Clear grid state. + for (int row = 0; row < 4; row++) { + for (int col = 0; col < 4; col++) { + PREV_2048_GRID_STATE[row][col] = 0; + } + } + + // Run main game logic. + switch (direction) { + case INPUT_UP: + printf("UP\n"); + blocks_moved = column_logic_up(); + break; + + case INPUT_DOWN: + printf("DOWN\n"); + blocks_moved = column_logic_down(); + break; + + case INPUT_LEFT: + printf("LEFT\n"); + blocks_moved = row_logic_left(); + break; + + case INPUT_RIGHT: + printf("RIGHT\n"); + blocks_moved = row_logic_right(); + break; + + // Should never reach here. + default: + return false; + } + + // Once the main game logic is done, insert a new block. + if (blocks_moved == true) { + if (add_new_block(false, new_block_1D_idx) == true) { + // Successfully added new block. + return true; + } else { + // New block could not be added, nothing happened. + return false; + } + } else { + // Blocks didn't move. + return false; + } +} + +void Game_2048_PrintGrid(void) +{ + // Imitate the grid is refreshing on terminal. + PRINT("\n\n\n\n\n\n\n\n\n\n"); + + for (int row = 0; row < 4; row++) { + PRINT(" | | | \n"); + + for (int col = 0; col < 4; col++) { + if (MAIN_2048_GRID[row][col] != 0) { + PRINT(" %04d ", MAIN_2048_GRID[row][col]); + } else { + PRINT(" "); + } + + // Only print border 3 times. + if (col < 3) { + PRINT("|"); + } + } + + PRINT("\n | | | \n"); + + // Only print the row border 3 times. + if (row < 3) { + PRINT("-----------------------------------\n"); + } + } +} + +void Game_2048_GetGrid(uint32_t grid[4][4]) +{ + for (int row = 0; row < 4; row++) { + for (int col = 0; col < 4; col++) { + grid[row][col] = MAIN_2048_GRID[row][col]; + } + } +} + +void Game_2048_GetGridState(uint8_t grid_state[4][4]) +{ + for (int row = 0; row < 4; row++) { + for (int col = 0; col < 4; col++) { + grid_state[row][col] = PREV_2048_GRID_STATE[row][col]; + } + } +} diff --git a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/.vscode/README.md b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/.vscode/README.md +++ b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/.vscode/settings.json b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/.vscode/settings.json +++ b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/Makefile b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/Makefile +++ b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/README.md b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/README.md index d2f479015ce..4b7e8bdf651 100644 --- a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/README.md +++ b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/README.md @@ -82,11 +82,11 @@ If RV32 Control Register field memsel is 0, the sysram2 and sysram3 are shared c In this demo program, the operations on the semaphore 0 and semaphore 1 make sure at a time, there is only one core can modify the data in the mxcSemaBox0 and mxcSemaBox1 which are located in the sysram2. ## How to debug CM4 and RV32 cores at the same time -The document https://github.com/Analog-Devices-MSDK/VSCode-Maxim#debugging introduces how to debug both ARM and RISC-V cores using VSCode. +The document https://github.com/analogdevicesinc/VSCode-Maxim#debugging introduces how to debug both ARM and RISC-V cores using VSCode. This document will show how to debug both cores by sending commands in terminals. -(1) Setup the RISC-V debugger according to [RISC-V-Debugging-Guide](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/wiki/RISC-V-Debugging-Guide). +(1) Setup the RISC-V debugger according to [RISC-V-Debugging-Guide](https://github.com/analogdevicesinc/VSCode-Maxim/wiki/RISC-V-Debugging-Guide). Note that doc is for MAX78000. For MAX32655EVKIT, in the folder of MaximSDK/Tools/OpenOCD/scripts/target, run command: `ln -s max78000_riscv.cfg MAX32655_riscv.cfg`. diff --git a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/main.c b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/main.c index bfce10fd3f4..9c8f42c366a 100644 --- a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/main.c +++ b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/project.mk b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/project.mk index 3413acecf96..1e149b1a44d 100644 --- a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/project.mk +++ b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_arm/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/.vscode/README.md b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/.vscode/README.md +++ b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/.vscode/settings.json b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/.vscode/settings.json +++ b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/Makefile b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/Makefile index f2bed64b86b..717125621b6 100644 --- a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/Makefile +++ b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/main.c b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/main.c index c63a8972f6a..aa8241f0343 100644 --- a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/main.c +++ b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/project.mk b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/project.mk index 55ef2218111..9b3b950c446 100644 --- a/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/project.mk +++ b/Examples/MAX32655/Dual_core_sync/Dual_core_sync_riscv/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/EEPROM_Emulator/.vscode/README.md b/Examples/MAX32655/EEPROM_Emulator/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/EEPROM_Emulator/.vscode/README.md +++ b/Examples/MAX32655/EEPROM_Emulator/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/EEPROM_Emulator/.vscode/settings.json b/Examples/MAX32655/EEPROM_Emulator/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/EEPROM_Emulator/.vscode/settings.json +++ b/Examples/MAX32655/EEPROM_Emulator/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/EEPROM_Emulator/Makefile b/Examples/MAX32655/EEPROM_Emulator/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/EEPROM_Emulator/Makefile +++ b/Examples/MAX32655/EEPROM_Emulator/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/EEPROM_Emulator/include/cache.h b/Examples/MAX32655/EEPROM_Emulator/include/cache.h index 286cca56f2d..21749be3ceb 100644 --- a/Examples/MAX32655/EEPROM_Emulator/include/cache.h +++ b/Examples/MAX32655/EEPROM_Emulator/include/cache.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/EEPROM_Emulator/include/eeprom.h b/Examples/MAX32655/EEPROM_Emulator/include/eeprom.h index 6c1fcbfea63..ac651bf0f00 100644 --- a/Examples/MAX32655/EEPROM_Emulator/include/eeprom.h +++ b/Examples/MAX32655/EEPROM_Emulator/include/eeprom.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/EEPROM_Emulator/main.c b/Examples/MAX32655/EEPROM_Emulator/main.c index 7d9027bff13..bbe0de4dec0 100644 --- a/Examples/MAX32655/EEPROM_Emulator/main.c +++ b/Examples/MAX32655/EEPROM_Emulator/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/EEPROM_Emulator/project.mk b/Examples/MAX32655/EEPROM_Emulator/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/EEPROM_Emulator/project.mk +++ b/Examples/MAX32655/EEPROM_Emulator/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/EEPROM_Emulator/src/cache.c b/Examples/MAX32655/EEPROM_Emulator/src/cache.c index 17bc7b57c13..adf98b89839 100644 --- a/Examples/MAX32655/EEPROM_Emulator/src/cache.c +++ b/Examples/MAX32655/EEPROM_Emulator/src/cache.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/EEPROM_Emulator/src/eeprom.c b/Examples/MAX32655/EEPROM_Emulator/src/eeprom.c index 22ede1df092..266766e2e42 100644 --- a/Examples/MAX32655/EEPROM_Emulator/src/eeprom.c +++ b/Examples/MAX32655/EEPROM_Emulator/src/eeprom.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/External_Flash/.vscode/README.md b/Examples/MAX32655/External_Flash/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/External_Flash/.vscode/README.md +++ b/Examples/MAX32655/External_Flash/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/External_Flash/.vscode/settings.json b/Examples/MAX32655/External_Flash/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/External_Flash/.vscode/settings.json +++ b/Examples/MAX32655/External_Flash/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/External_Flash/Makefile b/Examples/MAX32655/External_Flash/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/External_Flash/Makefile +++ b/Examples/MAX32655/External_Flash/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/External_Flash/main.c b/Examples/MAX32655/External_Flash/main.c index a8437c22028..e8eb1a06f17 100644 --- a/Examples/MAX32655/External_Flash/main.c +++ b/Examples/MAX32655/External_Flash/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/External_Flash/project.mk b/Examples/MAX32655/External_Flash/project.mk index 15632b49550..2da192ec43e 100644 --- a/Examples/MAX32655/External_Flash/project.mk +++ b/Examples/MAX32655/External_Flash/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/FTHR_I2C/.vscode/README.md b/Examples/MAX32655/FTHR_I2C/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/FTHR_I2C/.vscode/README.md +++ b/Examples/MAX32655/FTHR_I2C/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/FTHR_I2C/.vscode/settings.json b/Examples/MAX32655/FTHR_I2C/.vscode/settings.json index 092b999f117..6a13198b073 100755 --- a/Examples/MAX32655/FTHR_I2C/.vscode/settings.json +++ b/Examples/MAX32655/FTHR_I2C/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/FTHR_I2C/Makefile b/Examples/MAX32655/FTHR_I2C/Makefile index b0bc6723f03..ef798b6241c 100644 --- a/Examples/MAX32655/FTHR_I2C/Makefile +++ b/Examples/MAX32655/FTHR_I2C/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/FTHR_I2C/main.c b/Examples/MAX32655/FTHR_I2C/main.c index accd31e3b95..c1fe373f26a 100644 --- a/Examples/MAX32655/FTHR_I2C/main.c +++ b/Examples/MAX32655/FTHR_I2C/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -80,7 +79,7 @@ void SetLEDs(int state) } } -int main() +int main(void) { MXC_Delay(MXC_DELAY_MSEC(500)); //Wait for PMIC to power-up printf("\n******** Featherboard I2C Demo *********\n"); diff --git a/Examples/MAX32655/FTHR_I2C/project.mk b/Examples/MAX32655/FTHR_I2C/project.mk index 1933724af0d..42760d07026 100644 --- a/Examples/MAX32655/FTHR_I2C/project.mk +++ b/Examples/MAX32655/FTHR_I2C/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Flash/.vscode/README.md b/Examples/MAX32655/Flash/.vscode/README.md old mode 100755 new mode 100644 index 90fbcefc65d..5b355bd51c9 --- a/Examples/MAX32655/Flash/.vscode/README.md +++ b/Examples/MAX32655/Flash/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Flash/.vscode/c_cpp_properties.json b/Examples/MAX32655/Flash/.vscode/c_cpp_properties.json old mode 100755 new mode 100644 diff --git a/Examples/MAX32655/Flash/.vscode/flash.gdb b/Examples/MAX32655/Flash/.vscode/flash.gdb old mode 100755 new mode 100644 diff --git a/Examples/MAX32655/Flash/.vscode/launch.json b/Examples/MAX32655/Flash/.vscode/launch.json old mode 100755 new mode 100644 diff --git a/Examples/MAX32655/Flash/.vscode/settings.json b/Examples/MAX32655/Flash/.vscode/settings.json old mode 100755 new mode 100644 index 08713863364..4a8f72d173e --- a/Examples/MAX32655/Flash/.vscode/settings.json +++ b/Examples/MAX32655/Flash/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Flash/.vscode/tasks.json b/Examples/MAX32655/Flash/.vscode/tasks.json old mode 100755 new mode 100644 diff --git a/Examples/MAX32655/Flash/Makefile b/Examples/MAX32655/Flash/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/Flash/Makefile +++ b/Examples/MAX32655/Flash/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Flash/main.c b/Examples/MAX32655/Flash/main.c index 6b82d245ebe..4ad544f43a0 100644 --- a/Examples/MAX32655/Flash/main.c +++ b/Examples/MAX32655/Flash/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -61,7 +60,7 @@ volatile uint32_t isr_flags; //****************************************************************************** int button_pressed = 0; -void button_handler() +void button_handler(void) { button_pressed = 1; } @@ -122,7 +121,7 @@ void setup_irqs(void) isr_cnt = 0; } -int write_test_pattern() +int write_test_pattern(void) { int err; // A flash address must be in the erased state before writing to it, because the @@ -164,7 +163,7 @@ int write_test_pattern() return err; } -int validate_test_pattern() +int validate_test_pattern(void) { int err = 0; @@ -184,7 +183,7 @@ int validate_test_pattern() return err; } -int erase_magic() +int erase_magic(void) { /* To modify a location in flash that has already been written to, diff --git a/Examples/MAX32655/Flash/project.mk b/Examples/MAX32655/Flash/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/Flash/project.mk +++ b/Examples/MAX32655/Flash/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Flash_CLI/.vscode/README.md b/Examples/MAX32655/Flash_CLI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Flash_CLI/.vscode/README.md +++ b/Examples/MAX32655/Flash_CLI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Flash_CLI/.vscode/settings.json b/Examples/MAX32655/Flash_CLI/.vscode/settings.json index 029f7fdf47c..4b1c9460c7b 100755 --- a/Examples/MAX32655/Flash_CLI/.vscode/settings.json +++ b/Examples/MAX32655/Flash_CLI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Flash_CLI/FreeRTOSConfig.h b/Examples/MAX32655/Flash_CLI/FreeRTOSConfig.h index 8b7f106aa93..8144b6e7113 100644 --- a/Examples/MAX32655/Flash_CLI/FreeRTOSConfig.h +++ b/Examples/MAX32655/Flash_CLI/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Flash_CLI/Makefile b/Examples/MAX32655/Flash_CLI/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/Flash_CLI/Makefile +++ b/Examples/MAX32655/Flash_CLI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Flash_CLI/definitions.h b/Examples/MAX32655/Flash_CLI/definitions.h index 21e4de57dd1..2c9e313efb0 100644 --- a/Examples/MAX32655/Flash_CLI/definitions.h +++ b/Examples/MAX32655/Flash_CLI/definitions.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Flash_CLI/main.c b/Examples/MAX32655/Flash_CLI/main.c index c959227202e..55594b432e9 100644 --- a/Examples/MAX32655/Flash_CLI/main.c +++ b/Examples/MAX32655/Flash_CLI/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Flash_CLI/project.mk b/Examples/MAX32655/Flash_CLI/project.mk index 4f929ff2de7..b0dfbb78ffa 100644 --- a/Examples/MAX32655/Flash_CLI/project.mk +++ b/Examples/MAX32655/Flash_CLI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/FreeRTOSDemo/.vscode/README.md b/Examples/MAX32655/FreeRTOSDemo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/FreeRTOSDemo/.vscode/README.md +++ b/Examples/MAX32655/FreeRTOSDemo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/FreeRTOSDemo/.vscode/settings.json b/Examples/MAX32655/FreeRTOSDemo/.vscode/settings.json index 20aa129a0b2..21a0d8ec16f 100755 --- a/Examples/MAX32655/FreeRTOSDemo/.vscode/settings.json +++ b/Examples/MAX32655/FreeRTOSDemo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/FreeRTOSDemo/FreeRTOSConfig.h b/Examples/MAX32655/FreeRTOSDemo/FreeRTOSConfig.h index 57ac9a966e5..6737d4e2e5e 100644 --- a/Examples/MAX32655/FreeRTOSDemo/FreeRTOSConfig.h +++ b/Examples/MAX32655/FreeRTOSDemo/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/FreeRTOSDemo/Makefile b/Examples/MAX32655/FreeRTOSDemo/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/FreeRTOSDemo/Makefile +++ b/Examples/MAX32655/FreeRTOSDemo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/FreeRTOSDemo/freertos_tickless.c b/Examples/MAX32655/FreeRTOSDemo/freertos_tickless.c index b78bd80baab..e997be57d10 100644 --- a/Examples/MAX32655/FreeRTOSDemo/freertos_tickless.c +++ b/Examples/MAX32655/FreeRTOSDemo/freertos_tickless.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/FreeRTOSDemo/main.c b/Examples/MAX32655/FreeRTOSDemo/main.c index 7de34d5b736..fb244caaee6 100644 --- a/Examples/MAX32655/FreeRTOSDemo/main.c +++ b/Examples/MAX32655/FreeRTOSDemo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/FreeRTOSDemo/project.mk b/Examples/MAX32655/FreeRTOSDemo/project.mk index 4f929ff2de7..b0dfbb78ffa 100644 --- a/Examples/MAX32655/FreeRTOSDemo/project.mk +++ b/Examples/MAX32655/FreeRTOSDemo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/GPIO/.vscode/README.md b/Examples/MAX32655/GPIO/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/GPIO/.vscode/README.md +++ b/Examples/MAX32655/GPIO/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/GPIO/.vscode/settings.json b/Examples/MAX32655/GPIO/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/GPIO/.vscode/settings.json +++ b/Examples/MAX32655/GPIO/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/GPIO/Makefile b/Examples/MAX32655/GPIO/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/GPIO/Makefile +++ b/Examples/MAX32655/GPIO/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/GPIO/main.c b/Examples/MAX32655/GPIO/main.c index 42d4ec8e723..99149790579 100644 --- a/Examples/MAX32655/GPIO/main.c +++ b/Examples/MAX32655/GPIO/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/GPIO/project.mk b/Examples/MAX32655/GPIO/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/GPIO/project.mk +++ b/Examples/MAX32655/GPIO/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Hello_World-riscv/.vscode/README.md b/Examples/MAX32655/Hello_World-riscv/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Hello_World-riscv/.vscode/README.md +++ b/Examples/MAX32655/Hello_World-riscv/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Hello_World-riscv/.vscode/settings.json b/Examples/MAX32655/Hello_World-riscv/.vscode/settings.json index 6561d2ca19c..f8c4a4f498b 100755 --- a/Examples/MAX32655/Hello_World-riscv/.vscode/settings.json +++ b/Examples/MAX32655/Hello_World-riscv/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Hello_World-riscv/Makefile b/Examples/MAX32655/Hello_World-riscv/Makefile index 9cbe75991f9..a25ea9955dc 100644 --- a/Examples/MAX32655/Hello_World-riscv/Makefile +++ b/Examples/MAX32655/Hello_World-riscv/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Hello_World-riscv/Makefile.ARM b/Examples/MAX32655/Hello_World-riscv/Makefile.ARM index 418c23c8d17..43df0067175 100644 --- a/Examples/MAX32655/Hello_World-riscv/Makefile.ARM +++ b/Examples/MAX32655/Hello_World-riscv/Makefile.ARM @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Hello_World-riscv/Makefile.RISCV b/Examples/MAX32655/Hello_World-riscv/Makefile.RISCV index 6af6a83d6c7..1800bf23435 100644 --- a/Examples/MAX32655/Hello_World-riscv/Makefile.RISCV +++ b/Examples/MAX32655/Hello_World-riscv/Makefile.RISCV @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Hello_World-riscv/main.c b/Examples/MAX32655/Hello_World-riscv/main.c index 75ab7da3b60..6f96aae1efb 100644 --- a/Examples/MAX32655/Hello_World-riscv/main.c +++ b/Examples/MAX32655/Hello_World-riscv/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Hello_World-riscv/main_riscv.c b/Examples/MAX32655/Hello_World-riscv/main_riscv.c index 637d42ca653..9e8b0197bcf 100644 --- a/Examples/MAX32655/Hello_World-riscv/main_riscv.c +++ b/Examples/MAX32655/Hello_World-riscv/main_riscv.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Hello_World/.vscode/README.md b/Examples/MAX32655/Hello_World/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Hello_World/.vscode/README.md +++ b/Examples/MAX32655/Hello_World/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Hello_World/.vscode/settings.json b/Examples/MAX32655/Hello_World/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/Hello_World/.vscode/settings.json +++ b/Examples/MAX32655/Hello_World/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Hello_World/Makefile b/Examples/MAX32655/Hello_World/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/Hello_World/Makefile +++ b/Examples/MAX32655/Hello_World/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Hello_World/main.c b/Examples/MAX32655/Hello_World/main.c index b96987cdbed..5a4ce99ba9d 100644 --- a/Examples/MAX32655/Hello_World/main.c +++ b/Examples/MAX32655/Hello_World/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Hello_World/project.mk b/Examples/MAX32655/Hello_World/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/Hello_World/project.mk +++ b/Examples/MAX32655/Hello_World/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Hello_World_Cpp/.vscode/README.md b/Examples/MAX32655/Hello_World_Cpp/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Hello_World_Cpp/.vscode/README.md +++ b/Examples/MAX32655/Hello_World_Cpp/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Hello_World_Cpp/.vscode/settings.json b/Examples/MAX32655/Hello_World_Cpp/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/Hello_World_Cpp/.vscode/settings.json +++ b/Examples/MAX32655/Hello_World_Cpp/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Hello_World_Cpp/Makefile b/Examples/MAX32655/Hello_World_Cpp/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/Hello_World_Cpp/Makefile +++ b/Examples/MAX32655/Hello_World_Cpp/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Hello_World_Cpp/main.cpp b/Examples/MAX32655/Hello_World_Cpp/main.cpp index daade0e995d..fdf8363cde1 100644 --- a/Examples/MAX32655/Hello_World_Cpp/main.cpp +++ b/Examples/MAX32655/Hello_World_Cpp/main.cpp @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -66,7 +65,7 @@ class LED { int blink_count; }; -int main() +int main(void) { LED led = LED(0); diff --git a/Examples/MAX32655/Hello_World_Cpp/project.mk b/Examples/MAX32655/Hello_World_Cpp/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX32655/Hello_World_Cpp/project.mk +++ b/Examples/MAX32655/Hello_World_Cpp/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/I2C/.vscode/README.md b/Examples/MAX32655/I2C/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/I2C/.vscode/README.md +++ b/Examples/MAX32655/I2C/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/I2C/.vscode/settings.json b/Examples/MAX32655/I2C/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/I2C/.vscode/settings.json +++ b/Examples/MAX32655/I2C/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/I2C/Makefile b/Examples/MAX32655/I2C/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/I2C/Makefile +++ b/Examples/MAX32655/I2C/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/I2C/main.c b/Examples/MAX32655/I2C/main.c index 11fd7335f65..847e699a2ee 100644 --- a/Examples/MAX32655/I2C/main.c +++ b/Examples/MAX32655/I2C/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -184,7 +183,7 @@ int verifyData(void) } // ***************************************************************************** -int main() +int main(void) { printf("\n******** I2C Master-Slave Transaction Demo *********\n"); printf("\nThis example uses one I2C peripheral as a master to\n"); diff --git a/Examples/MAX32655/I2C/project.mk b/Examples/MAX32655/I2C/project.mk index 15632b49550..2da192ec43e 100644 --- a/Examples/MAX32655/I2C/project.mk +++ b/Examples/MAX32655/I2C/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/I2C_EEPROM/.vscode/README.md b/Examples/MAX32655/I2C_EEPROM/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/I2C_EEPROM/.vscode/README.md +++ b/Examples/MAX32655/I2C_EEPROM/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/I2C_EEPROM/.vscode/settings.json b/Examples/MAX32655/I2C_EEPROM/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/I2C_EEPROM/.vscode/settings.json +++ b/Examples/MAX32655/I2C_EEPROM/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/I2C_EEPROM/Makefile b/Examples/MAX32655/I2C_EEPROM/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/I2C_EEPROM/Makefile +++ b/Examples/MAX32655/I2C_EEPROM/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/I2C_EEPROM/project.mk b/Examples/MAX32655/I2C_EEPROM/project.mk index c37c63a3297..bf71ae863b1 100644 --- a/Examples/MAX32655/I2C_EEPROM/project.mk +++ b/Examples/MAX32655/I2C_EEPROM/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/I2C_MNGR/.vscode/README.md b/Examples/MAX32655/I2C_MNGR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/I2C_MNGR/.vscode/README.md +++ b/Examples/MAX32655/I2C_MNGR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/I2C_MNGR/.vscode/settings.json b/Examples/MAX32655/I2C_MNGR/.vscode/settings.json index 8ca186f9102..4f846649737 100755 --- a/Examples/MAX32655/I2C_MNGR/.vscode/settings.json +++ b/Examples/MAX32655/I2C_MNGR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/I2C_MNGR/FreeRTOSConfig.h b/Examples/MAX32655/I2C_MNGR/FreeRTOSConfig.h index b94aaa1cd42..b613e249236 100644 --- a/Examples/MAX32655/I2C_MNGR/FreeRTOSConfig.h +++ b/Examples/MAX32655/I2C_MNGR/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/I2C_MNGR/Makefile b/Examples/MAX32655/I2C_MNGR/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/I2C_MNGR/Makefile +++ b/Examples/MAX32655/I2C_MNGR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/I2C_MNGR/i2c_mngr/i2c_mngr.c b/Examples/MAX32655/I2C_MNGR/i2c_mngr/i2c_mngr.c index 2677dfbbda2..d2c41b1d609 100644 --- a/Examples/MAX32655/I2C_MNGR/i2c_mngr/i2c_mngr.c +++ b/Examples/MAX32655/I2C_MNGR/i2c_mngr/i2c_mngr.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +38,7 @@ typedef struct { static i2c_txn_mngr_t s_mngr; /******************************************************************************/ -int I2C_MNGR_Init() +int I2C_MNGR_Init(void) { s_mngr.inst0 = MXC_I2C0; s_mngr.inst1 = MXC_I2C1; diff --git a/Examples/MAX32655/I2C_MNGR/i2c_mngr/i2c_mngr.h b/Examples/MAX32655/I2C_MNGR/i2c_mngr/i2c_mngr.h index 3559e1080ea..bbfa976c8a6 100644 --- a/Examples/MAX32655/I2C_MNGR/i2c_mngr/i2c_mngr.h +++ b/Examples/MAX32655/I2C_MNGR/i2c_mngr/i2c_mngr.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +54,7 @@ typedef struct { * @brief Initializes I2C transaction manager * @return #E_NO_ERROR if succeeded, error code otherwise */ -int I2C_MNGR_Init(); +int I2C_MNGR_Init(void); /* * @brief Executes I2C transaction diff --git a/Examples/MAX32655/I2C_MNGR/main.c b/Examples/MAX32655/I2C_MNGR/main.c index 5eefeadcb6e..dc550beb572 100644 --- a/Examples/MAX32655/I2C_MNGR/main.c +++ b/Examples/MAX32655/I2C_MNGR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/I2C_MNGR/project.mk b/Examples/MAX32655/I2C_MNGR/project.mk index 27bedd89ca1..16e25548bc0 100644 --- a/Examples/MAX32655/I2C_MNGR/project.mk +++ b/Examples/MAX32655/I2C_MNGR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/I2C_SCAN/.vscode/README.md b/Examples/MAX32655/I2C_SCAN/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/I2C_SCAN/.vscode/README.md +++ b/Examples/MAX32655/I2C_SCAN/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/I2C_SCAN/.vscode/settings.json b/Examples/MAX32655/I2C_SCAN/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/I2C_SCAN/.vscode/settings.json +++ b/Examples/MAX32655/I2C_SCAN/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/I2C_SCAN/Makefile b/Examples/MAX32655/I2C_SCAN/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/I2C_SCAN/Makefile +++ b/Examples/MAX32655/I2C_SCAN/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/I2C_SCAN/main.c b/Examples/MAX32655/I2C_SCAN/main.c index 11cf89a03f8..d0146bc163b 100644 --- a/Examples/MAX32655/I2C_SCAN/main.c +++ b/Examples/MAX32655/I2C_SCAN/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -47,7 +46,7 @@ /***** Globals *****/ // ***************************************************************************** -int main() +int main(void) { uint8_t counter = 0; diff --git a/Examples/MAX32655/I2C_SCAN/project.mk b/Examples/MAX32655/I2C_SCAN/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/I2C_SCAN/project.mk +++ b/Examples/MAX32655/I2C_SCAN/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/I2C_Sensor/.vscode/README.md b/Examples/MAX32655/I2C_Sensor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/I2C_Sensor/.vscode/README.md +++ b/Examples/MAX32655/I2C_Sensor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/I2C_Sensor/.vscode/settings.json b/Examples/MAX32655/I2C_Sensor/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/I2C_Sensor/.vscode/settings.json +++ b/Examples/MAX32655/I2C_Sensor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/I2C_Sensor/Makefile b/Examples/MAX32655/I2C_Sensor/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/I2C_Sensor/Makefile +++ b/Examples/MAX32655/I2C_Sensor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/I2C_Sensor/main.c b/Examples/MAX32655/I2C_Sensor/main.c index 59cef950d03..51131833f6a 100644 --- a/Examples/MAX32655/I2C_Sensor/main.c +++ b/Examples/MAX32655/I2C_Sensor/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/I2C_Sensor/project.mk b/Examples/MAX32655/I2C_Sensor/project.mk index a6cddf8c378..1e6f18bc594 100644 --- a/Examples/MAX32655/I2C_Sensor/project.mk +++ b/Examples/MAX32655/I2C_Sensor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/I2C_Sensor_ADT7420/.vscode/README.md b/Examples/MAX32655/I2C_Sensor_ADT7420/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/I2C_Sensor_ADT7420/.vscode/README.md +++ b/Examples/MAX32655/I2C_Sensor_ADT7420/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/I2C_Sensor_ADT7420/.vscode/settings.json b/Examples/MAX32655/I2C_Sensor_ADT7420/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/I2C_Sensor_ADT7420/.vscode/settings.json +++ b/Examples/MAX32655/I2C_Sensor_ADT7420/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/I2C_Sensor_ADT7420/Makefile b/Examples/MAX32655/I2C_Sensor_ADT7420/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/I2C_Sensor_ADT7420/Makefile +++ b/Examples/MAX32655/I2C_Sensor_ADT7420/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/I2C_Sensor_ADT7420/main.c b/Examples/MAX32655/I2C_Sensor_ADT7420/main.c index 31aba4f5c02..b1319fae017 100644 --- a/Examples/MAX32655/I2C_Sensor_ADT7420/main.c +++ b/Examples/MAX32655/I2C_Sensor_ADT7420/main.c @@ -6,8 +6,7 @@ /****************************************************************************** * - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/I2C_Sensor_ADT7420/project.mk b/Examples/MAX32655/I2C_Sensor_ADT7420/project.mk index e1e0addd781..04e7f2f5cb4 100644 --- a/Examples/MAX32655/I2C_Sensor_ADT7420/project.mk +++ b/Examples/MAX32655/I2C_Sensor_ADT7420/project.mk @@ -1,21 +1,38 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -# ********************************************************** - -# Add your config here! - -# This example is only compatible with the MAX32655EVKIT -ifneq ($(BOARD),EvKit_V1) -$(error ERR_NOTSUPPORTED: This project is only supported on the MAX32655EVKIT. (see https://analogdevicesinc.github.io/msdk/USERGUIDE/#board-support-packages)) -endif - -# Include temperature sensor driver -SRCS+=adt7420_driver.c - -VPATH+=$(LIBS_DIR)/MiscDrivers/TempSensor/ADT7420 -IPATH+=$(LIBS_DIR)/MiscDrivers/TempSensor/ADT7420 +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Add your config here! + +# This example is only compatible with the MAX32655EVKIT +ifneq ($(BOARD),EvKit_V1) +$(error ERR_NOTSUPPORTED: This project is only supported on the MAX32655EVKIT. (see https://analogdevicesinc.github.io/msdk/USERGUIDE/#board-support-packages)) +endif + +# Include temperature sensor driver +SRCS+=adt7420_driver.c + +VPATH+=$(LIBS_DIR)/MiscDrivers/TempSensor/ADT7420 +IPATH+=$(LIBS_DIR)/MiscDrivers/TempSensor/ADT7420 diff --git a/Examples/MAX32655/I2S/.vscode/README.md b/Examples/MAX32655/I2S/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/I2S/.vscode/README.md +++ b/Examples/MAX32655/I2S/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/I2S/.vscode/settings.json b/Examples/MAX32655/I2S/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/I2S/.vscode/settings.json +++ b/Examples/MAX32655/I2S/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/I2S/Makefile b/Examples/MAX32655/I2S/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/I2S/Makefile +++ b/Examples/MAX32655/I2S/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/I2S/main.c b/Examples/MAX32655/I2S/main.c index 5de3e4df842..5436ab67deb 100644 --- a/Examples/MAX32655/I2S/main.c +++ b/Examples/MAX32655/I2S/main.c @@ -7,8 +7,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), * Copyright (C) 2023-2024 Analog Devices, Inc. All Rights Reserved. This software * is proprietary to Analog Devices, Inc. and its licensors. * @@ -198,7 +198,7 @@ void playback_audio(uint32_t eor_addr) } /*****************************************************************/ -int main() +int main(void) { int err; uint32_t eor_addr; diff --git a/Examples/MAX32655/I2S/max9867.c b/Examples/MAX32655/I2S/max9867.c index 8c47e6410d5..ed8cdd31f69 100644 --- a/Examples/MAX32655/I2S/max9867.c +++ b/Examples/MAX32655/I2S/max9867.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/I2S/max9867.h b/Examples/MAX32655/I2S/max9867.h index 1ce3b8359e2..3548b8d9745 100644 --- a/Examples/MAX32655/I2S/max9867.h +++ b/Examples/MAX32655/I2S/max9867.h @@ -1,7 +1,7 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), * Copyright (C) 2023-2024 Analog Devices, Inc. All Rights Reserved. This software * is proprietary to Analog Devices, Inc. and its licensors. * diff --git a/Examples/MAX32655/I2S/project.mk b/Examples/MAX32655/I2S/project.mk index f068448db8a..df25f6eb71c 100644 --- a/Examples/MAX32655/I2S/project.mk +++ b/Examples/MAX32655/I2S/project.mk @@ -1,9 +1,26 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://analog-devices-msdk.github.io/msdk/USERGUIDE/#build-system +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system # ********************************************************** diff --git a/Examples/MAX32655/ICC/.vscode/README.md b/Examples/MAX32655/ICC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/ICC/.vscode/README.md +++ b/Examples/MAX32655/ICC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/ICC/.vscode/settings.json b/Examples/MAX32655/ICC/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/ICC/.vscode/settings.json +++ b/Examples/MAX32655/ICC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/ICC/Makefile b/Examples/MAX32655/ICC/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/ICC/Makefile +++ b/Examples/MAX32655/ICC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/ICC/main.c b/Examples/MAX32655/ICC/main.c index 6d26a056e55..3c440870999 100644 --- a/Examples/MAX32655/ICC/main.c +++ b/Examples/MAX32655/ICC/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/ICC/project.mk b/Examples/MAX32655/ICC/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/ICC/project.mk +++ b/Examples/MAX32655/ICC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/LP/.vscode/README.md b/Examples/MAX32655/LP/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/LP/.vscode/README.md +++ b/Examples/MAX32655/LP/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/LP/.vscode/settings.json b/Examples/MAX32655/LP/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/LP/.vscode/settings.json +++ b/Examples/MAX32655/LP/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/LP/Makefile b/Examples/MAX32655/LP/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/LP/Makefile +++ b/Examples/MAX32655/LP/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/LP/main.c b/Examples/MAX32655/LP/main.c index be3a88285e1..b86e28996cf 100644 --- a/Examples/MAX32655/LP/main.c +++ b/Examples/MAX32655/LP/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/LP/project.mk b/Examples/MAX32655/LP/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/LP/project.mk +++ b/Examples/MAX32655/LP/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/LPCMP/.vscode/README.md b/Examples/MAX32655/LPCMP/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/LPCMP/.vscode/README.md +++ b/Examples/MAX32655/LPCMP/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/LPCMP/.vscode/settings.json b/Examples/MAX32655/LPCMP/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/LPCMP/.vscode/settings.json +++ b/Examples/MAX32655/LPCMP/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/LPCMP/Makefile b/Examples/MAX32655/LPCMP/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/LPCMP/Makefile +++ b/Examples/MAX32655/LPCMP/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/LPCMP/main.c b/Examples/MAX32655/LPCMP/main.c index ff1d9941ac1..80775f1d738 100644 --- a/Examples/MAX32655/LPCMP/main.c +++ b/Examples/MAX32655/LPCMP/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/LPCMP/project.mk b/Examples/MAX32655/LPCMP/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/LPCMP/project.mk +++ b/Examples/MAX32655/LPCMP/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Library_Generate/.vscode/README.md b/Examples/MAX32655/Library_Generate/.vscode/README.md index e2e9a1a6522..a740741c3ab 100644 --- a/Examples/MAX32655/Library_Generate/.vscode/README.md +++ b/Examples/MAX32655/Library_Generate/.vscode/README.md @@ -7,11 +7,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) * If it's not in the README, check the UG. * If it's not in the UG, open a ticket! -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -38,7 +38,7 @@ The steps below are also available in video form in "Understanding Artificial In 2. Run the installer executable, and ensure that "Visual Studio Code Support" is enabled for your installation. - ![Selected Components](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/installer_components.JPG) + ![Selected Components](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/installer_components.JPG) 3. Finish the MSDK installation, taking note of where the MSDK was installed. @@ -54,7 +54,7 @@ The steps below are also available in video form in "Understanding Artificial In 9. Type "open settings json" and select the "Preferences: Open Settings (JSON)" option (_not_ the "Preferences: Open _Default_ Settings (JSON)"). This will open your user settings.json file in VS Code's editor. - ![Open Settings JSON Command](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/open_settings_json.jpg) + ![Open Settings JSON Command](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/open_settings_json.jpg) 10. Add the entries below into your user settings.json file. @@ -82,7 +82,7 @@ This section covers basic usage of the VSCode-Maxim project files. For document Visual Studio Code is built around a "working directory" paradigm. The editor is always rooted in a working directory, and the main mechanism for changing that directory is `File -> Open Folder...`. -![File -> Open Folder](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/file_openfolder.JPG) +![File -> Open Folder](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/file_openfolder.JPG) As a result, you'll notice that there is no "New Project" mechanism. A "project" in VS Code is simply a folder. It will look inside of the opened folder for a `.vscode` _sub_-folder to load project-specific settings from. @@ -90,11 +90,11 @@ A project that is configured for VS Code will have, at minimum, a .vscode sub-fo Ex: -![Example Directory Contents](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/opening_projects_2.jpg) +![Example Directory Contents](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/opening_projects_2.jpg) ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MSDK installation. @@ -102,7 +102,7 @@ Additionally, empty project templates and a drag-and-drop folder for "injecting" Once a project is opened 4 available build tasks will become available via `Terminal > Run Build task...` or the shortcut `Ctrl+Shift+B`. These tasks are configured by the `.vscode/task.json` file. -![Build Tasks Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/buildtasks.JPG) +![Build Tasks Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/buildtasks.JPG) #### Build @@ -138,7 +138,7 @@ Once a project is opened 4 available build tasks will become available via `Term ### Debugging -![Debug Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger.JPG) +![Debug Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger.JPG) Debugging is enabled by Visual Studio Code's integrated debugger. Launch configurations can be found in the `.vscode/launch.json` file. @@ -162,11 +162,11 @@ In general, the MAX-series microcontrollers have the following debugger limitati 3. Launch the debugger with `Run > Start Debugging`, with the shortcut `F5`, or via the `Run and Debug` window (Ctrl + Shift + D) and the green "launch" arrow. - ![Debug Tab](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_window.JPG) + ![Debug Tab](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_window.JPG) 4. The debugger will launch a GDB client & OpenOCD server, reset the microcontroller, and should break on entry into `main`. - ![Debugger Break on Main](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_breakmain.JPG) + ![Debugger Break on Main](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_breakmain.JPG) #### Using the Debugger @@ -174,13 +174,13 @@ In general, the MAX-series microcontrollers have the following debugger limitati The main interface for the debugger is the debugger control bar: -![Debugger Control Bar Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_bar.JPG) +![Debugger Control Bar Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_bar.JPG) `Continue | Step Over | Step Into | Step Out | Restart | Stop` Breakpoints can be set by clicking in the space next to the line number in a source code file. A red dot indicates a line to break on. Breakpoints can be removed by clicking on them again. Ex: -![Breakpoint](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/breakpoint.JPG) +![Breakpoint](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/breakpoint.JPG) ## Project Configuration @@ -190,7 +190,7 @@ Breakpoints can be set by clicking in the space next to the line number in a sou **When a change is made to this file, VS Code should be reloaded with CTRL+SHIFT+P -> Reload Window (or alternatively restarted completely) to force a re-parse.** -![Reload Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/reload_window.JPG) +![Reload Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/reload_window.JPG) The default project configuration should work for most use cases as long as `"target"` and `"board"` are set correctly. @@ -227,7 +227,7 @@ The following configuration options are available: * ... can be found in the `Libraries/Boards` folder of the MSDK * For example, the supported options for the MAX78000 are `"EvKit_V1"`, `"FTHR_RevA"`, and `"MAXREFDES178"`. - ![MAX78000 Boards](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/78000_boards.JPG) + ![MAX78000 Boards](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/78000_boards.JPG) ### Advanced Config Options @@ -353,7 +353,7 @@ A project's build system is managed by two files found in the project's root dir * `Makefile` * `project.mk` -![Files are located in the root directory](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) +![Files are located in the root directory](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) When the command... @@ -416,7 +416,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the @@ -540,7 +540,7 @@ If you want to start from scratch, take this option. ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Library_Generate/Makefile b/Examples/MAX32655/Library_Generate/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/Library_Generate/Makefile +++ b/Examples/MAX32655/Library_Generate/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Library_Generate/gpiolib.c b/Examples/MAX32655/Library_Generate/gpiolib.c index 5c8845edc78..252f6df4c44 100644 --- a/Examples/MAX32655/Library_Generate/gpiolib.c +++ b/Examples/MAX32655/Library_Generate/gpiolib.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Library_Generate/gpiolib.h b/Examples/MAX32655/Library_Generate/gpiolib.h index f7dd074f48a..a6dd40b544c 100644 --- a/Examples/MAX32655/Library_Generate/gpiolib.h +++ b/Examples/MAX32655/Library_Generate/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Library_Generate/project.mk b/Examples/MAX32655/Library_Generate/project.mk index 01dcd9fbb2a..b5729be6ef0 100644 --- a/Examples/MAX32655/Library_Generate/project.mk +++ b/Examples/MAX32655/Library_Generate/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Library_Use/.vscode/README.md b/Examples/MAX32655/Library_Use/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Library_Use/.vscode/README.md +++ b/Examples/MAX32655/Library_Use/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Library_Use/.vscode/settings.json b/Examples/MAX32655/Library_Use/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/Library_Use/.vscode/settings.json +++ b/Examples/MAX32655/Library_Use/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Library_Use/Makefile b/Examples/MAX32655/Library_Use/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/Library_Use/Makefile +++ b/Examples/MAX32655/Library_Use/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Library_Use/lib/include/gpiolib.h b/Examples/MAX32655/Library_Use/lib/include/gpiolib.h index 3ba17c09b34..66ef83382d7 100644 --- a/Examples/MAX32655/Library_Use/lib/include/gpiolib.h +++ b/Examples/MAX32655/Library_Use/lib/include/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Library_Use/main.c b/Examples/MAX32655/Library_Use/main.c index a9c20ec444f..c686476d185 100644 --- a/Examples/MAX32655/Library_Use/main.c +++ b/Examples/MAX32655/Library_Use/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Library_Use/project.mk b/Examples/MAX32655/Library_Use/project.mk index 697d6809f88..8639a5f2593 100644 --- a/Examples/MAX32655/Library_Use/project.mk +++ b/Examples/MAX32655/Library_Use/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Pulse_Train/.vscode/README.md b/Examples/MAX32655/Pulse_Train/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Pulse_Train/.vscode/README.md +++ b/Examples/MAX32655/Pulse_Train/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Pulse_Train/.vscode/settings.json b/Examples/MAX32655/Pulse_Train/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/Pulse_Train/.vscode/settings.json +++ b/Examples/MAX32655/Pulse_Train/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Pulse_Train/Makefile b/Examples/MAX32655/Pulse_Train/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/Pulse_Train/Makefile +++ b/Examples/MAX32655/Pulse_Train/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Pulse_Train/main.c b/Examples/MAX32655/Pulse_Train/main.c index 6e14747e91c..a733c866a4f 100644 --- a/Examples/MAX32655/Pulse_Train/main.c +++ b/Examples/MAX32655/Pulse_Train/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Pulse_Train/project.mk b/Examples/MAX32655/Pulse_Train/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/Pulse_Train/project.mk +++ b/Examples/MAX32655/Pulse_Train/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/RTC/.vscode/README.md b/Examples/MAX32655/RTC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/RTC/.vscode/README.md +++ b/Examples/MAX32655/RTC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/RTC/.vscode/settings.json b/Examples/MAX32655/RTC/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/RTC/.vscode/settings.json +++ b/Examples/MAX32655/RTC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/RTC/Makefile b/Examples/MAX32655/RTC/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/RTC/Makefile +++ b/Examples/MAX32655/RTC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/RTC/main.c b/Examples/MAX32655/RTC/main.c index 60c5e933219..eaeb38ff7f7 100644 --- a/Examples/MAX32655/RTC/main.c +++ b/Examples/MAX32655/RTC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -111,12 +110,12 @@ void RTC_IRQHandler(void) } volatile int buttonPressed = 0; -void buttonHandler() +void buttonHandler(void) { buttonPressed = 1; } -void printTime() +void printTime(void) { int day, hr, min, err; uint32_t sec, rtc_readout; diff --git a/Examples/MAX32655/RTC/project.mk b/Examples/MAX32655/RTC/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/RTC/project.mk +++ b/Examples/MAX32655/RTC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/RTC_Backup/.vscode/README.md b/Examples/MAX32655/RTC_Backup/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/RTC_Backup/.vscode/README.md +++ b/Examples/MAX32655/RTC_Backup/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/RTC_Backup/.vscode/settings.json b/Examples/MAX32655/RTC_Backup/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/RTC_Backup/.vscode/settings.json +++ b/Examples/MAX32655/RTC_Backup/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/RTC_Backup/Makefile b/Examples/MAX32655/RTC_Backup/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/RTC_Backup/Makefile +++ b/Examples/MAX32655/RTC_Backup/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/RTC_Backup/main.c b/Examples/MAX32655/RTC_Backup/main.c index 448abb12adf..46c9c6abc76 100644 --- a/Examples/MAX32655/RTC_Backup/main.c +++ b/Examples/MAX32655/RTC_Backup/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -63,7 +62,7 @@ void RTC_IRQHandler(void) {} // ***************************************************************************** -void rescheduleAlarm() +void rescheduleAlarm(void) { uint32_t time; int flags = MXC_RTC_GetFlags(); @@ -89,7 +88,7 @@ void rescheduleAlarm() } // ***************************************************************************** -void printTime() +void printTime(void) { int day, hr, min; uint32_t sec; @@ -110,7 +109,7 @@ void printTime() } // ***************************************************************************** -int configureRTC() +int configureRTC(void) { int rtcTrim; MXC_Delay(MXC_DELAY_SEC(2)); // Delay to give debugger a window to connect diff --git a/Examples/MAX32655/RTC_Backup/project.mk b/Examples/MAX32655/RTC_Backup/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/RTC_Backup/project.mk +++ b/Examples/MAX32655/RTC_Backup/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/RV_ARM_Loader/.vscode/README.md b/Examples/MAX32655/RV_ARM_Loader/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/RV_ARM_Loader/.vscode/README.md +++ b/Examples/MAX32655/RV_ARM_Loader/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/RV_ARM_Loader/.vscode/settings.json b/Examples/MAX32655/RV_ARM_Loader/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/RV_ARM_Loader/.vscode/settings.json +++ b/Examples/MAX32655/RV_ARM_Loader/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/RV_ARM_Loader/Makefile b/Examples/MAX32655/RV_ARM_Loader/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/RV_ARM_Loader/Makefile +++ b/Examples/MAX32655/RV_ARM_Loader/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/RV_ARM_Loader/main.c b/Examples/MAX32655/RV_ARM_Loader/main.c index 1635acfc396..4340410ee41 100644 --- a/Examples/MAX32655/RV_ARM_Loader/main.c +++ b/Examples/MAX32655/RV_ARM_Loader/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/RV_ARM_Loader/project.mk b/Examples/MAX32655/RV_ARM_Loader/project.mk index 08efab2773d..f1c6ee092c5 100644 --- a/Examples/MAX32655/RV_ARM_Loader/project.mk +++ b/Examples/MAX32655/RV_ARM_Loader/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/SDHC_FTHR/.cproject b/Examples/MAX32655/SDHC_FTHR/.cproject new file mode 100644 index 00000000000..207fc85f00a --- /dev/null +++ b/Examples/MAX32655/SDHC_FTHR/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Examples/MAX32655/SDHC_FTHR/.project b/Examples/MAX32655/SDHC_FTHR/.project new file mode 100644 index 00000000000..af3e20d2563 --- /dev/null +++ b/Examples/MAX32655/SDHC_FTHR/.project @@ -0,0 +1,26 @@ + + + SDHC_FTHR + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32655/SDHC_FTHR/.settings/language.settings.xml b/Examples/MAX32655/SDHC_FTHR/.settings/language.settings.xml new file mode 100644 index 00000000000..7e2d73134e3 --- /dev/null +++ b/Examples/MAX32655/SDHC_FTHR/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32655/SDHC_FTHR/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32690/USB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32655/SDHC_FTHR/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32655/SDHC_FTHR/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32655/SDHC_FTHR/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..a06f3380cc9 --- /dev/null +++ b/Examples/MAX32655/SDHC_FTHR/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,20 @@ +doxygen/doxygen_new_line_after_brief=true +doxygen/doxygen_use_brief_tag=false +doxygen/doxygen_use_javadoc_tags=true +doxygen/doxygen_use_pre_tag=false +doxygen/doxygen_use_structural_commands=false +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=FTHR_Apps_P1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=SDHC_FTHR +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32655 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32655/SDHC_FTHR/.settings/org.eclipse.core.resources.prefs b/Examples/MAX32655/SDHC_FTHR/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 00000000000..99f26c0203a --- /dev/null +++ b/Examples/MAX32655/SDHC_FTHR/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/Examples/MAX32650/USB/USB_CDCACM/.vscode/README.md b/Examples/MAX32655/SDHC_FTHR/.vscode/README.md old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_CDCACM/.vscode/README.md rename to Examples/MAX32655/SDHC_FTHR/.vscode/README.md diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json b/Examples/MAX32655/SDHC_FTHR/.vscode/c_cpp_properties.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json rename to Examples/MAX32655/SDHC_FTHR/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/.vscode/flash.gdb b/Examples/MAX32655/SDHC_FTHR/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_HIDKeyboard/.vscode/flash.gdb rename to Examples/MAX32655/SDHC_FTHR/.vscode/flash.gdb diff --git a/Examples/MAX32665/USB/USB_MassStorage/.vscode/launch.json b/Examples/MAX32655/SDHC_FTHR/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32665/USB/USB_MassStorage/.vscode/launch.json rename to Examples/MAX32655/SDHC_FTHR/.vscode/launch.json diff --git a/Examples/MAX32655/SDHC_FTHR/.vscode/settings.json b/Examples/MAX32655/SDHC_FTHR/.vscode/settings.json new file mode 100644 index 00000000000..59e88f5ddcc --- /dev/null +++ b/Examples/MAX32655/SDHC_FTHR/.vscode/settings.json @@ -0,0 +1,81 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX78000", + "board":"FTHR_RevA", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max78000.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/CLI/inc" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/CLI/src" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/.vscode/tasks.json b/Examples/MAX32655/SDHC_FTHR/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_HIDKeyboard/.vscode/tasks.json rename to Examples/MAX32655/SDHC_FTHR/.vscode/tasks.json diff --git a/Examples/MAX32655/SDHC_FTHR/MAX32655_SDHC_FAT.launch b/Examples/MAX32655/SDHC_FTHR/MAX32655_SDHC_FAT.launch new file mode 100644 index 00000000000..39d45f4e5e8 --- /dev/null +++ b/Examples/MAX32655/SDHC_FTHR/MAX32655_SDHC_FAT.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32655/SDHC_FTHR/Makefile b/Examples/MAX32655/SDHC_FTHR/Makefile new file mode 100644 index 00000000000..ef798b6241c --- /dev/null +++ b/Examples/MAX32655/SDHC_FTHR/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32655 +TARGET_UC := MAX32655 +TARGET_LC := max32655 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= FTHR_Apps_P1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32655/SDHC_FTHR/README.md b/Examples/MAX32655/SDHC_FTHR/README.md new file mode 100644 index 00000000000..151090be095 --- /dev/null +++ b/Examples/MAX32655/SDHC_FTHR/README.md @@ -0,0 +1,158 @@ +## Description + +This example demonstrates the SDHC FAT Filesystem. The terminal prompts with a list of user-selectable tasks to run on the inserted Micro SD Card. + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +* This project comes pre-configured for the MAX78000FTHR. See [Board Support Packages](https://analogdevicesinc.github.io/msdk/USERGUIDE/#board-support-packages) in the UG for instructions on changing the target board. + +## Required Connections + +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Insert the SD card into the Micro SD Card Connector. + +## Expected Output + +``` +***** MAX78000 SDHC FAT Filesystem Example ***** +Card inserted. +CLI Initialized! Enter 'help' to see a list of available commands. + +$ help +help + +size: + Usage: size + Description: Find the Size of the SD Card and Free Space + +format: + Usage: format + Description: Format the Card + +mount: + Usage: mount + Description: Manually Mount Card + +ls: + Usage: ls + Description: list the contents of the current directory + +mkdir: + Usage: mkdir + Description: Create a directory + +file_create: + Usage: file_create + Description: Create a file of random data + +cd: + Usage: cd + Description: Move into a directory + +add_data: + Usage: add_data + Description: Add random Data to an Existing File + +del: + Usage: del + Description: Delete a file + +fatfs: + Usage: fatfs + Description: Format Card and Run Example of FatFS Operations + +unmount: + Usage: unmount + Description: Unmount card + + +$ format +format + + +*****THE DRIVE WILL BE FORMATTED IN 5 SECONDS***** +**************PRESS ANY KEY TO ABORT************** + +FORMATTING DRIVE +Drive formatted. +SD card mounted. +SD card unmounted. + +$ size +size +SD card mounted. +Disk Size: 7760896 bytes +Available: 7760864 bytes + +$ mount +mount +SD card mounted. + +$ mkdir Analog_Devices +mkdir Analog_Devices +Creating directory... +Directory Analog_Devices created. + +$ cd Analog_Devices +cd Analog_Devices +Changed to Analog_Devices + +$ file_create ADI 30 +file_create ADI 30 +Creating file ADI with length 30 +File opened! +30 bytes written to file! +File Closed! + +$ add_data ADI 25 +add_data ADI 25 +File opened! +25 bytes written to file +File closed. + +$ ls +ls +Listing Contents of 0:/Analog_Devices - +0:/Analog_Devices/ADI + +Finished listing contents + +$ del ADI +del ADI +Deleted file ADI + +$ fatfs +fatfs + + +*****THE DRIVE WILL BE FORMATTED IN 5 SECONDS***** +**************PRESS ANY KEY TO ABORT************** + +FORMATTING DRIVE +Drive formatted. +SD card mounted. +SD card unmounted. +SD card mounted. +SD Card Opened! +File opened! +256 bytes written to file! +File Closed! +Creating Directory... +Renaming File... +Attempting to read back file... +Read Back 256 bytes +Message: sjVNXdwfl-owoXGcTZ,5z,Sy8lfsNqDGrzio'O6vntRMoWODcIKP!C'y7tF.'W88ZjR81BpiibPhokQfa3w'cvmnr0EgE1MNDIhXKfBJGP6b?0tvHEPK-WNc7yuPdFNL6FPq10',Q,GSf3jSyY?MU0wv'FToTI!ct.E6Q4nbVuavg6h'48D5sR5mcepxf1l!MesddI7aZ9s?KIVnybRwZ.UBJpX1b?5oXP9wLKZcgW-k,gZ5HMIMwAcy!n9S?E57Analog_Devices +File Closed! + +$ unmount +unmount +SD card unmounted. +``` + diff --git a/Examples/MAX32655/SDHC_FTHR/include/sdhc.h b/Examples/MAX32655/SDHC_FTHR/include/sdhc.h new file mode 100644 index 00000000000..8325fd9c728 --- /dev/null +++ b/Examples/MAX32655/SDHC_FTHR/include/sdhc.h @@ -0,0 +1,71 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. + * (now owned by Analog Devices, Inc.), + * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software + * is proprietary to Analog Devices, Inc. and its licensors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#ifndef EXAMPLES_MAX32655_SDHC_FTHR_INCLUDE_SDHC_H_ +#define EXAMPLES_MAX32655_SDHC_FTHR_INCLUDE_SDHC_H_ + +/***** Includes *****/ +#include +#include +#include +#include + +#include "board.h" +#include "mxc_delay.h" +#include "mxc_device.h" +#include "gpio.h" +#include "uart.h" +#include "ff.h" + +/***** Definitions *****/ + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) +#define MAXLEN 256 + +/***** FUNCTION PROTOTYPES *****/ + +void generateMessage(unsigned length); + +int mount(); + +int umount(); + +int formatSDHC(); + +int getSize(); + +int ls(); + +int createFile(char *file_name, unsigned int length); + +int appendFile(char *file_name, unsigned int length); + +int mkdir(char *dir_name); + +int cd(char *dir_name); + +int deleteFile(char *file_name); + +int example(); + +void waitCardInserted(); + +#endif // EXAMPLES_MAX32655_SDHC_FTHR_INCLUDE_SDHC_H_ diff --git a/Examples/MAX32655/SDHC_FTHR/include/user-cli.h b/Examples/MAX32655/SDHC_FTHR/include/user-cli.h new file mode 100644 index 00000000000..a8167668a8f --- /dev/null +++ b/Examples/MAX32655/SDHC_FTHR/include/user-cli.h @@ -0,0 +1,55 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. + * (now owned by Analog Devices, Inc.), + * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software + * is proprietary to Analog Devices, Inc. and its licensors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#ifndef EXAMPLES_MAX32655_SDHC_FTHR_INCLUDE_USER_CLI_H_ +#define EXAMPLES_MAX32655_SDHC_FTHR_INCLUDE_USER_CLI_H_ + +/* -------------------------------------------------- */ +// GLOBAL VARIABLE +/* -------------------------------------------------- */ +extern const command_t user_commands[]; +extern const unsigned int num_user_commands; + +/* -------------------------------------------------- */ +// FUNCTION PROTOTYPES +/* -------------------------------------------------- */ +int handle_size(int argc, char *argv[]); + +int handle_format(int argc, char *argv[]); + +int handle_mount(int argc, char *argv[]); + +int handle_ls(int argc, char *argv[]); + +int handle_mkdir(int argc, char *argv[]); + +int handle_createfile(int argc, char *argv[]); + +int handle_cd(int argc, char *argv[]); + +int handle_add_data(int argc, char *argv[]); + +int handle_del(int argc, char *argv[]); + +int handle_fatfs(int argc, char *argv[]); + +int handle_unmount(int argc, char *argv[]); + +#endif // EXAMPLES_MAX32655_SDHC_FTHR_INCLUDE_USER_CLI_H_ diff --git a/Examples/MAX32655/SDHC_FTHR/main.c b/Examples/MAX32655/SDHC_FTHR/main.c new file mode 100644 index 00000000000..99225475a2d --- /dev/null +++ b/Examples/MAX32655/SDHC_FTHR/main.c @@ -0,0 +1,61 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. + * (now owned by Analog Devices, Inc.), + * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software + * is proprietary to Analog Devices, Inc. and its licensors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief read and write sdhc + * @details This example uses the sdhc and ffat to read/write the file system on + * an SD card. The Fat library used supports long filenames (see ffconf.h) + * the max length is 256 characters. It uses the CLI library for taking user + * user commands. + * + * You must connect an sd card to the sd card slot. + */ + +/***** Includes *****/ +#include "board.h" +#include "cli.h" +#include "nvic_table.h" +#include "sdhc.h" +#include "uart.h" +#include "user-cli.h" + +/******************************************************************************/ +int main(void) +{ + int err; + printf("\n\n***** MAX32655 SDHC FAT Filesystem Example *****\n"); + + // Wait for SD Card to be inserted + waitCardInserted(); + + printf("Card inserted.\n"); + while (MXC_UART_GetActive(MXC_UART_GET_UART(CONSOLE_UART))) {} + + // Initialize CLI + if ((err = MXC_CLI_Init(MXC_UART_GET_UART(CONSOLE_UART), user_commands, num_user_commands)) != + E_NO_ERROR) { + return err; + } + + // Run CLI + while (1) {} +} diff --git a/Examples/MAX32655/SDHC_FTHR/project.mk b/Examples/MAX32655/SDHC_FTHR/project.mk new file mode 100644 index 00000000000..26f3cfc6936 --- /dev/null +++ b/Examples/MAX32655/SDHC_FTHR/project.mk @@ -0,0 +1,42 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +#MXC_OPTIMIZE_CFLAGS = -Og +# ^ For example, you can uncomment this line to +# optimize the project for debugging + +# ********************************************************** + +# Add your config here! +ifneq ($(BOARD),FTHR_Apps_P1) +$(error ERR_NOTSUPPORTED: This project requires an SD card slot and is only supported for the MAX32655FTHR) +endif + +# Enable SDHC library +LIB_SDHC = 1 +# Use FatFS version R0.15 +FATFS_VERSION = ff15 + +# Enable CLI library +LIB_CLI = 1 diff --git a/Examples/MAX32655/SDHC_FTHR/src/sdhc.c b/Examples/MAX32655/SDHC_FTHR/src/sdhc.c new file mode 100644 index 00000000000..84cb9305965 --- /dev/null +++ b/Examples/MAX32655/SDHC_FTHR/src/sdhc.c @@ -0,0 +1,489 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. + * (now owned by Analog Devices, Inc.), + * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software + * is proprietary to Analog Devices, Inc. and its licensors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#include "sdhc.h" + +/***** Globals *****/ +FATFS *fs; //FFat Filesystem Object +FATFS fs_obj; +FIL file; //FFat File Object +FRESULT err; //FFat Result (Struct) +FILINFO fno; //FFat File Information Object +DIR dir; //FFat Directory Object +TCHAR *FF_ERRORS[20]; +BYTE work[4096]; + +DWORD clusters_free = 0, sectors_free = 0, sectors_total = 0, volume_sn = 0; +UINT bytes_written = 0, bytes_read = 0, mounted = 0; + +static char charset[] = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789,.-#'?!"; +TCHAR message[MAXLEN], directory[MAXLEN], cwd[MAXLEN], filename[MAXLEN], volume_label[24], + volume = '0'; +mxc_gpio_cfg_t SDPowerEnablePin = { MXC_GPIO1, MXC_GPIO_PIN_12, MXC_GPIO_FUNC_OUT, + MXC_GPIO_PAD_NONE, MXC_GPIO_VSSEL_VDDIO }; + +// /***** FUNCTIONS *****/ + +void generateMessage(unsigned length) +{ + for (int i = 0; i < length; i++) { + /*Generate some random data to put in file*/ + message[i] = charset[rand() % (sizeof(charset) - 1)]; + } +} + +int mount() +{ + fs = &fs_obj; + + if ((err = f_mount(fs, "", 1)) != FR_OK) { //Mount the default drive to fs now + printf("Error opening SD card: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + } else { + printf("SD card mounted.\n"); + mounted = 1; + } + + f_getcwd(cwd, sizeof(cwd)); //Set the Current working directory + + return err; +} + +int umount() +{ + if ((err = f_mount(NULL, "", 0)) != FR_OK) { //Unmount the default drive from its mount point + printf("Error unmounting volume: %s\n", FF_ERRORS[err]); + } else { + printf("SD card unmounted.\n"); + mounted = 0; + } + + return err; +} + +int formatSDHC() +{ + printf("\n\n*****THE DRIVE WILL BE FORMATTED IN 5 SECONDS*****\n"); + printf("**************PRESS ANY KEY TO ABORT**************\n\n"); + MXC_UART_ClearRXFIFO(MXC_UART0); + MXC_Delay(MSEC(5000)); + + if (MXC_UART_GetRXFIFOAvailable(MXC_UART0) > 0) { + return E_ABORT; + } + + printf("FORMATTING DRIVE\n"); + + MKFS_PARM format_options = { .fmt = FM_ANY }; + + if ((err = f_mkfs("", &format_options, work, sizeof(work))) != FR_OK) { + printf("Error formatting SD card: %s\n", FF_ERRORS[err]); + } else { + printf("Drive formatted.\n"); + } + + mount(); + + if ((err = f_setlabel("MAXIM")) != FR_OK) { + printf("Error setting drive label: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + } + + umount(); + + return err; +} + +int getSize() +{ + if (!mounted) { + mount(); + } + + if ((err = f_getfree(&volume, &clusters_free, &fs)) != FR_OK) { + printf("Error finding free size of card: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + } + + sectors_total = (fs->n_fatent - 2) * fs->csize; + sectors_free = clusters_free * fs->csize; + + printf("Disk Size: %u bytes\n", sectors_total / 2); + printf("Available: %u bytes\n", sectors_free / 2); + + return err; +} + +int ls() +{ + if (!mounted) { + mount(); + } + + printf("Listing Contents of %s - \n", cwd); + + if ((err = f_opendir(&dir, cwd)) == FR_OK) { + while (1) { + err = f_readdir(&dir, &fno); + + if (err != FR_OK || fno.fname[0] == 0) { + break; + } + + printf("%s/%s", cwd, fno.fname); + + if (fno.fattrib & AM_DIR) { + printf("/"); + } + + printf("\n"); + } + + f_closedir(&dir); + } else { + printf("Error opening directory!\n"); + return err; + } + + printf("\nFinished listing contents\n"); + + return err; +} + +int createFile(char *file_name, unsigned int length) +{ + // unsigned int length = 128; + + if (!mounted) { + mount(); + } + + snprintf(filename, MAXLEN, "%s", file_name); + + if (length > MAXLEN) { + printf("Error. File size limit for this example is %d bytes.\n", MAXLEN); + return FR_INVALID_PARAMETER; + } + + printf("Creating file %s with length %d\n", filename, length); + + if ((err = f_open(&file, (const TCHAR *)filename, FA_CREATE_ALWAYS | FA_WRITE)) != FR_OK) { + printf("Error opening file: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + printf("File opened!\n"); + + generateMessage(length); + + if ((err = f_write(&file, &message, length, &bytes_written)) != FR_OK) { + printf("Error writing file: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + printf("%d bytes written to file!\n", bytes_written); + + if ((err = f_close(&file)) != FR_OK) { + printf("Error closing file: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + printf("File Closed!\n"); + return err; +} + +int appendFile(char *file_name, unsigned int length) +{ + if (!mounted) { + mount(); + } + + snprintf(filename, MAXLEN, "%s", file_name); + + if ((err = f_stat((const TCHAR *)filename, &fno)) == FR_NO_FILE) { + printf("File %s doesn't exist!\n", (const TCHAR *)filename); + return err; + } + + if (length > MAXLEN) { + printf("Error. Size limit for this example is %d bytes.\n", MAXLEN); + return FR_INVALID_PARAMETER; + } + + if ((err = f_open(&file, (const TCHAR *)filename, FA_OPEN_APPEND | FA_WRITE)) != FR_OK) { + printf("Error opening file %s\n", FF_ERRORS[err]); + return err; + } + + printf("File opened!\n"); + + generateMessage(length); + + if ((err = f_write(&file, &message, length, &bytes_written)) != FR_OK) { + printf("Error writing file: %s\n", FF_ERRORS[err]); + return err; + } + + printf("%d bytes written to file\n", bytes_written); + + if ((err = f_close(&file)) != FR_OK) { + printf("Error closing file: %s\n", FF_ERRORS[err]); + return err; + } + + printf("File closed.\n"); + return err; +} + +int mkdir(char *dir_name) +{ + if (!mounted) { + mount(); + } + + snprintf(directory, MAXLEN, "%s", dir_name); + + err = f_stat((const TCHAR *)directory, &fno); + + if (err == FR_NO_FILE) { + printf("Creating directory...\n"); + + if ((err = f_mkdir((const TCHAR *)directory)) != FR_OK) { + printf("Error creating directory: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } else { + printf("Directory %s created.\n", directory); + } + + } else { + printf("Directory already exists.\n"); + } + + return err; +} + +int cd(char *dir_name) +{ + if (!mounted) { + mount(); + } + + snprintf(directory, MAXLEN, "%s", dir_name); + + if ((err = f_stat((const TCHAR *)directory, &fno)) == FR_NO_FILE) { + printf("Directory doesn't exist (Did you mean mkdir?)\n"); + return err; + } + + if ((err = f_chdir((const TCHAR *)directory)) != FR_OK) { + printf("Error in chdir: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + printf("Changed to %s\n", directory); + f_getcwd(cwd, sizeof(cwd)); + + return err; +} + +int deleteFile(char *file_name) +{ + if (!mounted) { + mount(); + } + + snprintf(filename, MAXLEN, "%s", file_name); + + if ((err = f_stat((const TCHAR *)filename, &fno)) == FR_NO_FILE) { + printf("File or directory doesn't exist\n"); + return err; + } + + if ((err = f_unlink(filename)) != FR_OK) { + printf("Error deleting file\n"); + return err; + } + + printf("Deleted file %s\n", filename); + return err; +} + +int example() +{ + unsigned int length = 256; + + if ((err = formatSDHC()) != FR_OK) { + printf("Error Formatting SD Card: %s\n", FF_ERRORS[err]); + return err; + } + + //open SD Card + if ((err = mount()) != FR_OK) { + printf("Error opening SD Card: %s\n", FF_ERRORS[err]); + return err; + } + + printf("SD Card Opened!\n"); + + if ((err = f_setlabel("MAXIM")) != FR_OK) { + printf("Error setting drive label: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + if ((err = f_getfree(&volume, &clusters_free, &fs)) != FR_OK) { + printf("Error finding free size of card: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + if ((err = f_getlabel(&volume, volume_label, &volume_sn)) != FR_OK) { + printf("Error reading drive label: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + if ((err = f_open(&file, "0:HelloWorld.txt", FA_CREATE_ALWAYS | FA_WRITE)) != FR_OK) { + printf("Error opening file: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + printf("File opened!\n"); + + generateMessage(length); + + if ((err = f_write(&file, &message, length, &bytes_written)) != FR_OK) { + printf("Error writing file: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + printf("%d bytes written to file!\n", bytes_written); + + if ((err = f_close(&file)) != FR_OK) { + printf("Error closing file: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + printf("File Closed!\n"); + + if ((err = f_chmod("HelloWorld.txt", 0, AM_RDO | AM_ARC | AM_SYS | AM_HID)) != FR_OK) { + printf("Error in chmod: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + err = f_stat("MaximSDHC", &fno); + + if (err == FR_NO_FILE) { + printf("Creating Directory...\n"); + + if ((err = f_mkdir("MaximSDHC")) != FR_OK) { + printf("Error creating directory: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + } + + printf("Renaming File...\n"); + + if ((err = f_rename("0:HelloWorld.txt", "0:MaximSDHC/HelloMaxim.txt")) != + FR_OK) { //cr: clearify 0:file notation + printf("Error moving file: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + if ((err = f_chdir("/MaximSDHC")) != FR_OK) { + printf("Error in chdir: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + printf("Attempting to read back file...\n"); + + if ((err = f_open(&file, "HelloMaxim.txt", FA_READ)) != FR_OK) { + printf("Error opening file: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + if ((err = f_read(&file, &message, bytes_written, &bytes_read)) != FR_OK) { + printf("Error reading file: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + printf("Read Back %d bytes\n", bytes_read); + printf("Message: "); + printf("%s", message); + printf("\n"); + + if ((err = f_close(&file)) != FR_OK) { + printf("Error closing file: %s\n", FF_ERRORS[err]); + f_mount(NULL, "", 0); + return err; + } + + printf("File Closed!\n"); + + //unmount SD Card + //f_mount(fs, "", 0); + if ((err = f_mount(NULL, "", 0)) != FR_OK) { + printf("Error unmounting volume: %s\n", FF_ERRORS[err]); + return err; + } + + return 0; +} + +void waitCardInserted() +{ + // On the MAX78000FTHR board, P0.12 will be pulled low when a card is inserted. + mxc_gpio_cfg_t cardDetect; + cardDetect.port = MXC_GPIO0; + cardDetect.mask = MXC_GPIO_PIN_12; + cardDetect.func = MXC_GPIO_FUNC_IN; + cardDetect.pad = MXC_GPIO_PAD_NONE; + cardDetect.vssel = MXC_GPIO_VSSEL_VDDIOH; + + MXC_GPIO_Config(&cardDetect); + + // Exit function if card is already inserted + if (MXC_GPIO_InGet(MXC_GPIO0, MXC_GPIO_PIN_12) == 0) { + return; + } + + printf("Insert SD card to continue.\n"); + + while (MXC_GPIO_InGet(MXC_GPIO0, MXC_GPIO_PIN_12) != 0) { + // Spin waiting for card to be inserted. + } + + // Card has been detected, exit the function. +} diff --git a/Examples/MAX32655/SDHC_FTHR/src/user-cli.c b/Examples/MAX32655/SDHC_FTHR/src/user-cli.c new file mode 100644 index 00000000000..f0ba36207ed --- /dev/null +++ b/Examples/MAX32655/SDHC_FTHR/src/user-cli.c @@ -0,0 +1,155 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. + * (now owned by Analog Devices, Inc.), + * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software + * is proprietary to Analog Devices, Inc. and its licensors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#include +#include "cli.h" +#include "sdhc.h" +#include "user-cli.h" + +const command_t user_commands[] = { + { "size", "size", "Find the Size of the SD Card and Free Space", handle_size }, + { "format", "format", "Format the Card", handle_format }, + { "mount", "mount", "Manually Mount Card", handle_mount }, + { "ls", "ls", "list the contents of the current directory", handle_ls }, + { "mkdir", "mkdir ", "Create a directory", handle_mkdir }, + { "file_create", "file_create ", + "Create a file of random data", handle_createfile }, + { "cd", "cd ", "Move into a directory", handle_cd }, + { "add_data", "add_data ", + "Add random Data to an Existing File", handle_add_data }, + { "del", "del ", "Delete a file", handle_del }, + { "fatfs", "fatfs", "Format Card and Run Example of FatFS Operations", handle_fatfs }, + { "unmount", "unmount", "Unmount card", handle_unmount }, +}; + +const unsigned int num_user_commands = sizeof(user_commands) / sizeof(command_t); + +int handle_size(int argc, char *argv[]) +{ + if (argc != 1) { + printf("Incorrect usage. Too many parameters.\n"); + return E_INVALID; + } + + return getSize(); +} + +int handle_format(int argc, char *argv[]) +{ + if (argc != 1) { + printf("Incorrect usage. Too many parameters.\n"); + return E_INVALID; + } + + return formatSDHC(); +} + +int handle_mount(int argc, char *argv[]) +{ + if (argc != 1) { + printf("Incorrect usage. Too many parameters.\n"); + return E_INVALID; + } + + return mount(); +} + +int handle_ls(int argc, char *argv[]) +{ + if (argc != 1) { + printf("Incorrect usage. Too many parameters.\n"); + return E_INVALID; + } + + return ls(); +} + +int handle_mkdir(int argc, char *argv[]) +{ + if (argc != 2) { + printf("Incorrect usage. Please provide directory name.\n"); + return E_INVALID; + } + + return mkdir(argv[1]); +} + +int handle_createfile(int argc, char *argv[]) +{ + if (argc != 3) { + printf("Incorrect usage. Please provide filename and length.\n"); + return E_INVALID; + } + + unsigned int length = atoi(argv[2]); + return createFile(argv[1], length); +} + +int handle_cd(int argc, char *argv[]) +{ + if (argc != 2) { + printf("Incorrect usage. Please provide directory name.\n"); + return E_INVALID; + } + + return cd(argv[1]); +} + +int handle_add_data(int argc, char *argv[]) +{ + if (argc != 3) { + printf("Incorrect usage. Please provide filename and length.\n"); + return E_INVALID; + } + + unsigned int length = atoi(argv[2]); + return appendFile(argv[1], length); +} + +int handle_del(int argc, char *argv[]) +{ + if (argc != 2) { + printf("Incorrect usage. Please provide filename.\n"); + return E_INVALID; + } + + return deleteFile(argv[1]); +} + +int handle_fatfs(int argc, char *argv[]) +{ + if (argc != 1) { + printf("Incorrect usage. Too many parameters.\n"); + return E_INVALID; + } + + return example(); +} + +int handle_unmount(int argc, char *argv[]) +{ + if (argc != 1) { + printf("Incorrect usage. Too many parameters.\n"); + return E_INVALID; + } + + return umount(); +} diff --git a/Examples/MAX32655/SPI/.vscode/README.md b/Examples/MAX32655/SPI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/SPI/.vscode/README.md +++ b/Examples/MAX32655/SPI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/SPI/.vscode/settings.json b/Examples/MAX32655/SPI/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/SPI/.vscode/settings.json +++ b/Examples/MAX32655/SPI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/SPI/Makefile b/Examples/MAX32655/SPI/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/SPI/Makefile +++ b/Examples/MAX32655/SPI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/SPI/main.c b/Examples/MAX32655/SPI/main.c index c37bc59328d..c18c749991c 100644 --- a/Examples/MAX32655/SPI/main.c +++ b/Examples/MAX32655/SPI/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/SPI/project.mk b/Examples/MAX32655/SPI/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/SPI/project.mk +++ b/Examples/MAX32655/SPI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/TFT_Demo/.vscode/README.md b/Examples/MAX32655/TFT_Demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/TFT_Demo/.vscode/README.md +++ b/Examples/MAX32655/TFT_Demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/TFT_Demo/.vscode/settings.json b/Examples/MAX32655/TFT_Demo/.vscode/settings.json index 1faa9a80b88..62d5012c84b 100755 --- a/Examples/MAX32655/TFT_Demo/.vscode/settings.json +++ b/Examples/MAX32655/TFT_Demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/TFT_Demo/Makefile b/Examples/MAX32655/TFT_Demo/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/TFT_Demo/Makefile +++ b/Examples/MAX32655/TFT_Demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/TFT_Demo/include/keypad.h b/Examples/MAX32655/TFT_Demo/include/keypad.h index 947eaeb0376..2ed3f877138 100644 --- a/Examples/MAX32655/TFT_Demo/include/keypad.h +++ b/Examples/MAX32655/TFT_Demo/include/keypad.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/TFT_Demo/include/state.h b/Examples/MAX32655/TFT_Demo/include/state.h index bfc80f4d848..56d0f80d426 100644 --- a/Examples/MAX32655/TFT_Demo/include/state.h +++ b/Examples/MAX32655/TFT_Demo/include/state.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/TFT_Demo/include/utils.h b/Examples/MAX32655/TFT_Demo/include/utils.h index 4c84e627924..a429ff800e5 100644 --- a/Examples/MAX32655/TFT_Demo/include/utils.h +++ b/Examples/MAX32655/TFT_Demo/include/utils.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/TFT_Demo/main.c b/Examples/MAX32655/TFT_Demo/main.c index f60b742ae07..1ee06e2029e 100644 --- a/Examples/MAX32655/TFT_Demo/main.c +++ b/Examples/MAX32655/TFT_Demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/TFT_Demo/project.mk b/Examples/MAX32655/TFT_Demo/project.mk index c74e85066c5..0407a1faf02 100644 --- a/Examples/MAX32655/TFT_Demo/project.mk +++ b/Examples/MAX32655/TFT_Demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/TFT_Demo/resources/all_imgs.c b/Examples/MAX32655/TFT_Demo/resources/all_imgs.c index d1cb49fb623..1c59ff8903d 100644 --- a/Examples/MAX32655/TFT_Demo/resources/all_imgs.c +++ b/Examples/MAX32655/TFT_Demo/resources/all_imgs.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/TFT_Demo/resources/bitmap.h b/Examples/MAX32655/TFT_Demo/resources/bitmap.h index e5296645d33..ab8fe5edfdc 100644 --- a/Examples/MAX32655/TFT_Demo/resources/bitmap.h +++ b/Examples/MAX32655/TFT_Demo/resources/bitmap.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/TFT_Demo/src/state.c b/Examples/MAX32655/TFT_Demo/src/state.c index 9348c5eccb4..3b8e8034274 100644 --- a/Examples/MAX32655/TFT_Demo/src/state.c +++ b/Examples/MAX32655/TFT_Demo/src/state.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/TFT_Demo/src/state_home.c b/Examples/MAX32655/TFT_Demo/src/state_home.c index 2d92d84cb63..dcbc03ecc1c 100644 --- a/Examples/MAX32655/TFT_Demo/src/state_home.c +++ b/Examples/MAX32655/TFT_Demo/src/state_home.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/TFT_Demo/src/state_info.c b/Examples/MAX32655/TFT_Demo/src/state_info.c index b5e63b5fdae..1b711387c4b 100644 --- a/Examples/MAX32655/TFT_Demo/src/state_info.c +++ b/Examples/MAX32655/TFT_Demo/src/state_info.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/TFT_Demo/src/state_keypad.c b/Examples/MAX32655/TFT_Demo/src/state_keypad.c index 239e9136a7d..998b53104ba 100644 --- a/Examples/MAX32655/TFT_Demo/src/state_keypad.c +++ b/Examples/MAX32655/TFT_Demo/src/state_keypad.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/TFT_Demo/src/utils.c b/Examples/MAX32655/TFT_Demo/src/utils.c index 06f2c1d7e37..dd3ee82e0cd 100644 --- a/Examples/MAX32655/TFT_Demo/src/utils.c +++ b/Examples/MAX32655/TFT_Demo/src/utils.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/TMR/.vscode/README.md b/Examples/MAX32655/TMR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/TMR/.vscode/README.md +++ b/Examples/MAX32655/TMR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/TMR/.vscode/settings.json b/Examples/MAX32655/TMR/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/TMR/.vscode/settings.json +++ b/Examples/MAX32655/TMR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/TMR/Makefile b/Examples/MAX32655/TMR/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/TMR/Makefile +++ b/Examples/MAX32655/TMR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/TMR/main.c b/Examples/MAX32655/TMR/main.c index 5baeb29e12c..765e491defd 100644 --- a/Examples/MAX32655/TMR/main.c +++ b/Examples/MAX32655/TMR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -48,9 +47,9 @@ #define PB2 1 // Parameters for PWM output -#define OST_CLOCK_SOURCE MXC_TMR_32K_CLK // \ref mxc_tmr_clock_t +#define OST_CLOCK_SOURCE MXC_TMR_ERTCO_CLK // \ref mxc_tmr_clock_t #define PWM_CLOCK_SOURCE MXC_TMR_APB_CLK // \ref mxc_tmr_clock_t -#define CONT_CLOCK_SOURCE MXC_TMR_8M_CLK // \ref mxc_tmr_clock_t +#define CONT_CLOCK_SOURCE MXC_TMR_IBRO_CLK // \ref mxc_tmr_clock_t // Parameters for Continuous timer #define OST_FREQ 1 // (Hz) @@ -86,7 +85,7 @@ #endif /***** Functions *****/ -void PWMTimer() +void PWMTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; // to configure timer diff --git a/Examples/MAX32655/TMR/project.mk b/Examples/MAX32655/TMR/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/TMR/project.mk +++ b/Examples/MAX32655/TMR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/TRNG/.vscode/README.md b/Examples/MAX32655/TRNG/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/TRNG/.vscode/README.md +++ b/Examples/MAX32655/TRNG/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/TRNG/.vscode/settings.json b/Examples/MAX32655/TRNG/.vscode/settings.json index e708e360563..4268da2a7df 100755 --- a/Examples/MAX32655/TRNG/.vscode/settings.json +++ b/Examples/MAX32655/TRNG/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/TRNG/Makefile b/Examples/MAX32655/TRNG/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/TRNG/Makefile +++ b/Examples/MAX32655/TRNG/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/TRNG/main.c b/Examples/MAX32655/TRNG/main.c index ba6489b9847..595adaabb3f 100644 --- a/Examples/MAX32655/TRNG/main.c +++ b/Examples/MAX32655/TRNG/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/TRNG/project.mk b/Examples/MAX32655/TRNG/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/TRNG/project.mk +++ b/Examples/MAX32655/TRNG/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Temp_Monitor/.vscode/README.md b/Examples/MAX32655/Temp_Monitor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Temp_Monitor/.vscode/README.md +++ b/Examples/MAX32655/Temp_Monitor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Temp_Monitor/.vscode/settings.json b/Examples/MAX32655/Temp_Monitor/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/Temp_Monitor/.vscode/settings.json +++ b/Examples/MAX32655/Temp_Monitor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Temp_Monitor/Makefile b/Examples/MAX32655/Temp_Monitor/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/Temp_Monitor/Makefile +++ b/Examples/MAX32655/Temp_Monitor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Temp_Monitor/main.c b/Examples/MAX32655/Temp_Monitor/main.c index 138d45e35da..0247767617a 100644 --- a/Examples/MAX32655/Temp_Monitor/main.c +++ b/Examples/MAX32655/Temp_Monitor/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Temp_Monitor/project.mk b/Examples/MAX32655/Temp_Monitor/project.mk index b26b07b395a..a1dba904c8b 100644 --- a/Examples/MAX32655/Temp_Monitor/project.mk +++ b/Examples/MAX32655/Temp_Monitor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Temp_Monitor/temp_monitor.c b/Examples/MAX32655/Temp_Monitor/temp_monitor.c index de3e9449f10..e9ea61a92c1 100644 --- a/Examples/MAX32655/Temp_Monitor/temp_monitor.c +++ b/Examples/MAX32655/Temp_Monitor/temp_monitor.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/Temp_Monitor/temp_monitor.h b/Examples/MAX32655/Temp_Monitor/temp_monitor.h index 422642703d7..3a872e9d2d9 100644 --- a/Examples/MAX32655/Temp_Monitor/temp_monitor.h +++ b/Examples/MAX32655/Temp_Monitor/temp_monitor.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/UART/.vscode/README.md b/Examples/MAX32655/UART/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/UART/.vscode/README.md +++ b/Examples/MAX32655/UART/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/UART/.vscode/settings.json b/Examples/MAX32655/UART/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/UART/.vscode/settings.json +++ b/Examples/MAX32655/UART/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/UART/Makefile b/Examples/MAX32655/UART/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/UART/Makefile +++ b/Examples/MAX32655/UART/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/UART/main.c b/Examples/MAX32655/UART/main.c index 6cb53ba9b75..ef018815481 100644 --- a/Examples/MAX32655/UART/main.c +++ b/Examples/MAX32655/UART/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/UART/project.mk b/Examples/MAX32655/UART/project.mk index 15632b49550..2da192ec43e 100644 --- a/Examples/MAX32655/UART/project.mk +++ b/Examples/MAX32655/UART/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/UART_DMA/.cproject b/Examples/MAX32655/UART_DMA/.cproject new file mode 100644 index 00000000000..bbbb2e72e57 --- /dev/null +++ b/Examples/MAX32655/UART_DMA/.cproject @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32655/UART_DMA/.project b/Examples/MAX32655/UART_DMA/.project new file mode 100644 index 00000000000..523d770068f --- /dev/null +++ b/Examples/MAX32655/UART_DMA/.project @@ -0,0 +1,26 @@ + + + UART_DMA + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/.settings/language.settings.xml b/Examples/MAX32655/UART_DMA/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32690/USB/USB_HIDKeyboard/.settings/language.settings.xml rename to Examples/MAX32655/UART_DMA/.settings/language.settings.xml diff --git a/Examples/MAX32690/USB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32655/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX32690/USB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32655/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32655/UART_DMA/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32655/UART_DMA/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..b577731d791 --- /dev/null +++ b/Examples/MAX32655/UART_DMA/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=UART_DMA +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32655 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32655/UART_DMA/.settings/org.eclipse.core.resources.prefs b/Examples/MAX32655/UART_DMA/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 00000000000..99f26c0203a --- /dev/null +++ b/Examples/MAX32655/UART_DMA/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/Examples/MAX32655/UART_DMA/.vscode/README.md b/Examples/MAX32655/UART_DMA/.vscode/README.md new file mode 100755 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32655/UART_DMA/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/.vscode/c_cpp_properties.json b/Examples/MAX32655/UART_DMA/.vscode/c_cpp_properties.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_HIDKeyboard/.vscode/c_cpp_properties.json rename to Examples/MAX32655/UART_DMA/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32690/USB/USB_MassStorage/.vscode/flash.gdb b/Examples/MAX32655/UART_DMA/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_MassStorage/.vscode/flash.gdb rename to Examples/MAX32655/UART_DMA/.vscode/flash.gdb diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/.vscode/launch.json b/Examples/MAX32655/UART_DMA/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/Bluetooth/BLE_fcc/.vscode/launch.json rename to Examples/MAX32655/UART_DMA/.vscode/launch.json diff --git a/Examples/MAX32655/UART_DMA/.vscode/settings.json b/Examples/MAX32655/UART_DMA/.vscode/settings.json new file mode 100755 index 00000000000..4a8f72d173e --- /dev/null +++ b/Examples/MAX32655/UART_DMA/.vscode/settings.json @@ -0,0 +1,84 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32655", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32655.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/USB/USB_MassStorage/.vscode/tasks.json b/Examples/MAX32655/UART_DMA/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_MassStorage/.vscode/tasks.json rename to Examples/MAX32655/UART_DMA/.vscode/tasks.json diff --git a/Examples/MAX32655/UART_DMA/Makefile b/Examples/MAX32655/UART_DMA/Makefile new file mode 100644 index 00000000000..be2ad0e6c98 --- /dev/null +++ b/Examples/MAX32655/UART_DMA/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32655 +TARGET_UC := MAX32655 +TARGET_LC := max32655 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32655/UART_DMA/README.md b/Examples/MAX32655/UART_DMA/README.md new file mode 100644 index 00000000000..c951e461dfc --- /dev/null +++ b/Examples/MAX32655/UART_DMA/README.md @@ -0,0 +1,71 @@ +## Description + +To demonstrate the use of the UART peripheral with DMA, data is sent between two UART ports on the MAX32655. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +(None - this project builds as a standard example) + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. +- Open an terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect P2.6 (UART 3 RX) and P2.7 (UART 3 TX). + +## Expected Output + +The Console UART of the device will output these messages: + +``` +**************** UART Example ****************** +This example sends data from one UART to another + +Connect RX(Px.xx) of UARTx and TX(Px.xx) of UARTx. + +To indicate a successful UART transfer, LED1 will illuminate. + +Push SW2 to continue + +UART Baud : 115200 Hz +Test Length : 512 bytes + +-->UART Initialized + +-->Data verified + +-->Example Succeeded + +``` + +or + +``` +**************** UART Example ****************** +This example sends data from one UART to another + +Connect RX(Px.xx) of UARTx and TX(Px.xx) of UARTx. + +To indicate a successful UART transfer, LED1 will illuminate. + +Push SW2 to continue + +UART Baud : 115200 Hz +Test Length : 512 bytes + +Acquired DMA channel 0 for RX transaction +Acquired DMA channel 1 for TX transaction + +-->UART Initialized + +-->Data verified + +-->Example Succeeded + +``` \ No newline at end of file diff --git a/Examples/MAX32655/UART_DMA/UART_DMA.launch b/Examples/MAX32655/UART_DMA/UART_DMA.launch new file mode 100644 index 00000000000..78572048ec4 --- /dev/null +++ b/Examples/MAX32655/UART_DMA/UART_DMA.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32655/UART_DMA/main.c b/Examples/MAX32655/UART_DMA/main.c new file mode 100644 index 00000000000..c9e8753cdfe --- /dev/null +++ b/Examples/MAX32655/UART_DMA/main.c @@ -0,0 +1,235 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Main for UART with DMA example. + * @details This example demonstrates how to use DMA with UART for data transfer. + * The example sets up DMA channels to handle UART transmissions and receptions, + * looping back the TX to the RX on UART0 with DMA. A jumper must be + * connected between P2.6 (UART 3 RX) -> P2.7 (UART 3 TX). + * The example uses either automatic or manual DMA handler configuration + * depending on the AUTOHANDLERS macro definition. + */ + +/***** Includes *****/ +#include +#include +#include +#include "mxc_device.h" +#include "pb.h" +#include "board.h" +#include "mxc_delay.h" +#include "uart.h" +#include "dma.h" +#include "nvic_table.h" +#include "led.h" + +/***** Definitions *****/ +#define AUTOHANDLERS + +#define UART_BAUD 115200 +#define BUFF_SIZE 512 + +#define UART MXC_UART3 + +/***** Globals *****/ +volatile int READ_FLAG; +volatile int buttonPressed; +static mxc_uart_req_t loop_req; + +/***** Functions *****/ +#ifndef AUTOHANDLERS +void DMA_RX_Handler(void) +{ + MXC_DMA_Handler(); +} + +void DMA_TX_Handler(void) +{ + MXC_DMA_Handler(); +} +#endif + +void readCallback(mxc_uart_req_t *req, int error) +{ + READ_FLAG = error; +} + +void buttonHandler(void) +{ + buttonPressed = 1; +} + +#ifdef AUTOHANDLERS +int exampleDMAAutoHandlers(void) +{ + int error = 0; + + // Auto DMA handlers will automatically initialize DMA, acquire & assign channels, + // and guarantee that each transaction's callback function is executed when + // the transaction is complete. + MXC_UART_SetAutoDMAHandlers(UART, true); + + // "READ_FLAG" is set in the read transaction's callback. It will be set to 0 when + // the read request completes successfully. We use it to wait for the DMA transaction + // to complete, since the DMA APIs are asynchronous (non-blocking) + READ_FLAG = 1; + + error = MXC_UART_TransactionDMA(&loop_req); + if (error) { + printf("-->Error starting DMA read: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + while (READ_FLAG) {} + + printf("-->Transaction completed\n"); + return READ_FLAG; +} +#else +int exampleDMAManualHandlers(void) +{ + int error = 0; + + // Manally initialize DMA + MXC_DMA_Init(); + + // Manually acquire a channel for the read request and assign it to the drivers. + int rx_channel = MXC_DMA_AcquireChannel(); + if (rx_channel >= 0) { + printf("Acquired DMA channel %i for RX transaction\n", rx_channel); + } else { + printf("Failed to acquire RX DMA channel with error %i\n", rx_channel); + return rx_channel; + } + MXC_UART_SetRXDMAChannel(UART, rx_channel); + + // Additionally, assign the NVIC IRQ to a function that calls "MXC_DMA_Handler()". + // This is required for any assigned callbacks to work. + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(rx_channel)); + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(rx_channel), DMA_RX_Handler); + + // Do the same for the write request. + int tx_channel = MXC_DMA_AcquireChannel(); + if (tx_channel >= 0) { + printf("Acquired DMA channel %i for RX transaction\n", tx_channel); + } else { + printf("Failed to acquire RX DMA channel with error %i\n", tx_channel); + return tx_channel; + } + MXC_UART_SetTXDMAChannel(UART, tx_channel); + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(tx_channel)); + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(tx_channel), DMA_TX_Handler); + + // Initialize flags. We will use these to monitor when the read/write requests + // have completed, since the DMA APIs are asynchronous. + READ_FLAG = 1; + + error = MXC_UART_TransactionDMA(&loop_req); + if (error) { + printf("-->Error starting DMA read: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + while (READ_FLAG) {} + + printf("-->Transaction completed\n"); + return READ_FLAG; +} +#endif // AUTOHANDLERS + +/******************************************************************************/ +int main(void) +{ + int error, i, fail = 0; + uint8_t TxData[BUFF_SIZE]; + uint8_t RxData[BUFF_SIZE]; + + printf("\n\n**************** UART Example ******************\n"); + printf("This example sends data from one UART to another\n"); + printf("\nConnect P2.6 (UART3 RX) and P2.7 (UART3 TX).\n\n"); + printf("To indicate a successful UART transfer, LED1 will illuminate.\n"); + printf("\nPush SW2 to continue\n"); + + buttonPressed = 0; + PB_RegisterCallback(0, buttonHandler); + while (!buttonPressed) {} + + printf("\nUART Baud \t: %d Hz\n", UART_BAUD); + printf("Test Length \t: %d bytes\n\n", BUFF_SIZE); + + // Initialize the data buffers + for (i = 0; i < BUFF_SIZE; i++) { + TxData[i] = i; + } + memset(RxData, 0x0, BUFF_SIZE); + + // Initialize the UART + error = MXC_UART_Init(UART, UART_BAUD, MXC_UART_IBRO_CLK); + if (error < E_NO_ERROR) { + printf("-->Error initializing UART: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + // Setup request structs describing the transactions. + // Request structs are placed in the global scope so they + // don't go out of context. This can happen when a req struct + // is declared inside a function and the function completes. + // The memory would be freed, invalidating the UART driver's + // pointers to it. + loop_req.uart = UART; + loop_req.rxData = RxData; + loop_req.rxLen = BUFF_SIZE; + loop_req.txData = TxData; + loop_req.txLen = BUFF_SIZE; + loop_req.callback = readCallback; + + printf("-->UART Initialized\n\n"); + +#ifdef AUTOHANDLERS + error = exampleDMAAutoHandlers(); +#else + error = exampleDMAManualHandlers(); +#endif + + if (READ_FLAG != E_NO_ERROR) { + printf("-->Error with read callback; %d\n", READ_FLAG); + fail++; + } + + if ((error = memcmp(RxData, TxData, BUFF_SIZE)) != 0) { + printf("-->Error verifying Data: %d\n", error); + fail++; + } else { + printf("-->Data verified\n"); + } + + if (fail != 0) { + printf("\n-->Example Failed\n"); + LED_On(0); // indicates FAIL + return E_FAIL; + } + + LED_On(1); // indicates SUCCESS + printf("\n-->Example Succeeded\n"); + return E_NO_ERROR; +} diff --git a/Examples/MAX32655/UART_DMA/project.mk b/Examples/MAX32655/UART_DMA/project.mk new file mode 100644 index 00000000000..7ef1c79dfa2 --- /dev/null +++ b/Examples/MAX32655/UART_DMA/project.mk @@ -0,0 +1,10 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Add your config here! \ No newline at end of file diff --git a/Examples/MAX32655/UCL/.vscode/README.md b/Examples/MAX32655/UCL/.vscode/README.md index f57d4364851..cc0783881d1 100644 --- a/Examples/MAX32655/UCL/.vscode/README.md +++ b/Examples/MAX32655/UCL/.vscode/README.md @@ -4,14 +4,14 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) -* [Wiki](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/wiki) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) +* [Wiki](https://github.com/analogdevicesinc/VSCode-Maxim/wiki) * If it's not in the readme, check the wiki. * If it's not in the wiki, open a ticket! ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. The following features are supported: @@ -91,7 +91,7 @@ Ex: ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MaximSDK installation. @@ -413,7 +413,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the diff --git a/Examples/MAX32655/UCL/Makefile b/Examples/MAX32655/UCL/Makefile index 4f0b5125395..bca50d543b0 100644 --- a/Examples/MAX32655/UCL/Makefile +++ b/Examples/MAX32655/UCL/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -25,7 +24,7 @@ # in "project.mk", on the command-line, or with system environment # variables. -# See https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# See https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # for more detailed instructions on how to use this system. # The detailed instructions mentioned above are easier to read than @@ -375,7 +374,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/UCL/project.mk b/Examples/MAX32655/UCL/project.mk index 62c6aa45bf9..63192db80bd 100644 --- a/Examples/MAX32655/UCL/project.mk +++ b/Examples/MAX32655/UCL/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/WUT/.vscode/README.md b/Examples/MAX32655/WUT/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/WUT/.vscode/README.md +++ b/Examples/MAX32655/WUT/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/WUT/.vscode/settings.json b/Examples/MAX32655/WUT/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/WUT/.vscode/settings.json +++ b/Examples/MAX32655/WUT/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/WUT/Makefile b/Examples/MAX32655/WUT/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/WUT/Makefile +++ b/Examples/MAX32655/WUT/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/WUT/main.c b/Examples/MAX32655/WUT/main.c index 7b46fb5ece7..5178e4f3fe3 100644 --- a/Examples/MAX32655/WUT/main.c +++ b/Examples/MAX32655/WUT/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -37,7 +36,7 @@ /***** Definitions *****/ #define MILLISECONDS_WUT 5000 -void WUT_IRQHandler() +void WUT_IRQHandler(void) { MXC_WUT_IntClear(MXC_WUT0); } diff --git a/Examples/MAX32655/WUT/project.mk b/Examples/MAX32655/WUT/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/WUT/project.mk +++ b/Examples/MAX32655/WUT/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/Watchdog/.vscode/README.md b/Examples/MAX32655/Watchdog/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/Watchdog/.vscode/README.md +++ b/Examples/MAX32655/Watchdog/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/Watchdog/.vscode/settings.json b/Examples/MAX32655/Watchdog/.vscode/settings.json index 08713863364..4a8f72d173e 100755 --- a/Examples/MAX32655/Watchdog/.vscode/settings.json +++ b/Examples/MAX32655/Watchdog/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/Watchdog/Makefile b/Examples/MAX32655/Watchdog/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/Watchdog/Makefile +++ b/Examples/MAX32655/Watchdog/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/Watchdog/main.c b/Examples/MAX32655/Watchdog/main.c index e73b919f90d..1d52bc268f8 100644 --- a/Examples/MAX32655/Watchdog/main.c +++ b/Examples/MAX32655/Watchdog/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -57,7 +56,7 @@ static mxc_wdt_cfg_t cfg; /***** Functions *****/ // ***************************************************************************** -void watchdogHandler() +void watchdogHandler(void) { MXC_WDT_ClearIntFlag(MXC_WDT0); printf("\nTIMEOUT! \n"); diff --git a/Examples/MAX32655/Watchdog/project.mk b/Examples/MAX32655/Watchdog/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32655/Watchdog/project.mk +++ b/Examples/MAX32655/Watchdog/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/WearLeveling/.vscode/README.md b/Examples/MAX32655/WearLeveling/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32655/WearLeveling/.vscode/README.md +++ b/Examples/MAX32655/WearLeveling/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32655/WearLeveling/.vscode/settings.json b/Examples/MAX32655/WearLeveling/.vscode/settings.json index 66de4b18dd1..2cea366e708 100755 --- a/Examples/MAX32655/WearLeveling/.vscode/settings.json +++ b/Examples/MAX32655/WearLeveling/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32655/WearLeveling/Makefile b/Examples/MAX32655/WearLeveling/Makefile index a6c275d93a2..be2ad0e6c98 100644 --- a/Examples/MAX32655/WearLeveling/Makefile +++ b/Examples/MAX32655/WearLeveling/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32655/WearLeveling/include/cli.h b/Examples/MAX32655/WearLeveling/include/cli.h index 6905c27a6de..b35c801e944 100644 --- a/Examples/MAX32655/WearLeveling/include/cli.h +++ b/Examples/MAX32655/WearLeveling/include/cli.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/WearLeveling/include/file.h b/Examples/MAX32655/WearLeveling/include/file.h index ce0283e0a90..14dfbcca42a 100644 --- a/Examples/MAX32655/WearLeveling/include/file.h +++ b/Examples/MAX32655/WearLeveling/include/file.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/WearLeveling/include/flash.h b/Examples/MAX32655/WearLeveling/include/flash.h index 40168a16995..6a118fba457 100644 --- a/Examples/MAX32655/WearLeveling/include/flash.h +++ b/Examples/MAX32655/WearLeveling/include/flash.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/WearLeveling/include/main.h b/Examples/MAX32655/WearLeveling/include/main.h index e0064c21aba..e54c56ebc2e 100644 --- a/Examples/MAX32655/WearLeveling/include/main.h +++ b/Examples/MAX32655/WearLeveling/include/main.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/WearLeveling/main.c b/Examples/MAX32655/WearLeveling/main.c index e0fed8e6f2a..4a4ef4a2705 100644 --- a/Examples/MAX32655/WearLeveling/main.c +++ b/Examples/MAX32655/WearLeveling/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/WearLeveling/project.mk b/Examples/MAX32655/WearLeveling/project.mk index 68501672c81..ab1e35b73c8 100644 --- a/Examples/MAX32655/WearLeveling/project.mk +++ b/Examples/MAX32655/WearLeveling/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32655/WearLeveling/src/cli.c b/Examples/MAX32655/WearLeveling/src/cli.c index 488f3413dee..ea27a00faa5 100644 --- a/Examples/MAX32655/WearLeveling/src/cli.c +++ b/Examples/MAX32655/WearLeveling/src/cli.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/WearLeveling/src/file.c b/Examples/MAX32655/WearLeveling/src/file.c index dec9a57200f..ddb03186181 100644 --- a/Examples/MAX32655/WearLeveling/src/file.c +++ b/Examples/MAX32655/WearLeveling/src/file.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32655/WearLeveling/src/flash.c b/Examples/MAX32655/WearLeveling/src/flash.c index b778eb62f55..160cf912742 100644 --- a/Examples/MAX32655/WearLeveling/src/flash.c +++ b/Examples/MAX32655/WearLeveling/src/flash.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32657/Hello_World/.cproject b/Examples/MAX32657/Hello_World/.cproject new file mode 100644 index 00000000000..3a8a4199e81 --- /dev/null +++ b/Examples/MAX32657/Hello_World/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32657/Hello_World/.project b/Examples/MAX32657/Hello_World/.project new file mode 100644 index 00000000000..d21c0a970b7 --- /dev/null +++ b/Examples/MAX32657/Hello_World/.project @@ -0,0 +1,26 @@ + + + Hello_World + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32690/USB/USB_MassStorage/.settings/language.settings.xml b/Examples/MAX32657/Hello_World/.settings/language.settings.xml similarity index 100% rename from Examples/MAX32690/USB/USB_MassStorage/.settings/language.settings.xml rename to Examples/MAX32657/Hello_World/.settings/language.settings.xml diff --git a/Examples/MAX78002/USB/USB_CDCACM/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32657/Hello_World/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX78002/USB/USB_CDCACM/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32657/Hello_World/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32657/Hello_World/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32657/Hello_World/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..7634acd5b10 --- /dev/null +++ b/Examples/MAX32657/Hello_World/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=Hello_World +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32657 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32657/Hello_World/.vscode/README.md b/Examples/MAX32657/Hello_World/.vscode/README.md new file mode 100755 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32657/Hello_World/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/USB_MassStorage/.vscode/c_cpp_properties.json b/Examples/MAX32657/Hello_World/.vscode/c_cpp_properties.json similarity index 100% rename from Examples/MAX32690/USB/USB_MassStorage/.vscode/c_cpp_properties.json rename to Examples/MAX32657/Hello_World/.vscode/c_cpp_properties.json diff --git a/Examples/MAX78002/USB/USB_CDCACM/.vscode/flash.gdb b/Examples/MAX32657/Hello_World/.vscode/flash.gdb similarity index 100% rename from Examples/MAX78002/USB/USB_CDCACM/.vscode/flash.gdb rename to Examples/MAX32657/Hello_World/.vscode/flash.gdb diff --git a/Examples/MAX32690/USB/USB_CDCACM/.vscode/launch.json b/Examples/MAX32657/Hello_World/.vscode/launch.json similarity index 100% rename from Examples/MAX32690/USB/USB_CDCACM/.vscode/launch.json rename to Examples/MAX32657/Hello_World/.vscode/launch.json diff --git a/Examples/MAX32657/Hello_World/.vscode/settings.json b/Examples/MAX32657/Hello_World/.vscode/settings.json new file mode 100755 index 00000000000..66194c6a77c --- /dev/null +++ b/Examples/MAX32657/Hello_World/.vscode/settings.json @@ -0,0 +1,80 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32657", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32657.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/5.9.0/Core/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX78002/USB/USB_CDCACM/.vscode/tasks.json b/Examples/MAX32657/Hello_World/.vscode/tasks.json similarity index 100% rename from Examples/MAX78002/USB/USB_CDCACM/.vscode/tasks.json rename to Examples/MAX32657/Hello_World/.vscode/tasks.json diff --git a/Examples/MAX32657/Hello_World/Hello_World.launch b/Examples/MAX32657/Hello_World/Hello_World.launch new file mode 100644 index 00000000000..208feecdd1f --- /dev/null +++ b/Examples/MAX32657/Hello_World/Hello_World.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32657/Hello_World/Makefile b/Examples/MAX32657/Hello_World/Makefile new file mode 100644 index 00000000000..1ca7ba1a49a --- /dev/null +++ b/Examples/MAX32657/Hello_World/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32657 +TARGET_UC := MAX32657 +TARGET_LC := max32657 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32657/Hello_World/README.md b/Examples/MAX32657/Hello_World/README.md new file mode 100644 index 00000000000..c64b76a6473 --- /dev/null +++ b/Examples/MAX32657/Hello_World/README.md @@ -0,0 +1,32 @@ +## Description + +A basic getting started program. + +This version of Hello_World prints an incrementing count to the console UART and toggles a LED0 every 500 ms. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +* This project comes pre-configured for the MAX32657EVKIT. See [Board Support Packages](https://analogdevicesinc.github.io/msdk/USERGUIDE/#board-support-packages) in the MSDK User Guide for instructions on changing the target board. + +## Required Connections + +## Expected Output + +The Console UART of the device will output these messages: + +``` +Hello World! +count : 0 +count : 1 +count : 2 +count : 3 +``` + +You will also observe LED0 blinking at a rate of 2Hz. diff --git a/Examples/MAX32657/Hello_World/main.c b/Examples/MAX32657/Hello_World/main.c new file mode 100644 index 00000000000..843e085dce8 --- /dev/null +++ b/Examples/MAX32657/Hello_World/main.c @@ -0,0 +1,54 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Hello World! + * @details This example uses the UART to print to a terminal and flashes an LED. + */ + +/***** Includes *****/ +#include +#include +#include "mxc_device.h" +#include "led.h" +#include "pb.h" +#include "board.h" +#include "mxc_delay.h" + +/***** Definitions *****/ + +/***** Globals *****/ + +/***** Functions *****/ + +// ***************************************************************************** +int main(void) +{ + int count = 0; + + printf("Hello World!\n"); + + while (1) { + LED_On(LED_RED); + MXC_Delay(500000); + LED_Off(LED_RED); + MXC_Delay(500000); + printf("count = %d\n", count++); + } +} diff --git a/Examples/MAX32657/Hello_World/project.mk b/Examples/MAX32657/Hello_World/project.mk new file mode 100644 index 00000000000..df25f6eb71c --- /dev/null +++ b/Examples/MAX32657/Hello_World/project.mk @@ -0,0 +1,27 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Add your config here! diff --git a/Examples/MAX32657/Hello_World_TZ/NonSecure/.cproject b/Examples/MAX32657/Hello_World_TZ/NonSecure/.cproject new file mode 100644 index 00000000000..b4f8045283a --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/NonSecure/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32657/Hello_World_TZ/NonSecure/.project b/Examples/MAX32657/Hello_World_TZ/NonSecure/.project new file mode 100644 index 00000000000..f8bf123ecf9 --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/NonSecure/.project @@ -0,0 +1,26 @@ + + + NonSecure + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX78002/USB/USB_CDCACM/.settings/language.settings.xml b/Examples/MAX32657/Hello_World_TZ/NonSecure/.settings/language.settings.xml similarity index 100% rename from Examples/MAX78002/USB/USB_CDCACM/.settings/language.settings.xml rename to Examples/MAX32657/Hello_World_TZ/NonSecure/.settings/language.settings.xml diff --git a/Examples/MAX78002/USB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32657/Hello_World_TZ/NonSecure/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX78002/USB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32657/Hello_World_TZ/NonSecure/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32657/Hello_World_TZ/NonSecure/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32657/Hello_World_TZ/NonSecure/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..e95acaeb99f --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/NonSecure/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=NonSecure +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32657 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32657/Hello_World_TZ/NonSecure/.vscode/README.md b/Examples/MAX32657/Hello_World_TZ/NonSecure/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/NonSecure/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX78002/USB/USB_CDCACM/.vscode/c_cpp_properties.json b/Examples/MAX32657/Hello_World_TZ/NonSecure/.vscode/c_cpp_properties.json similarity index 100% rename from Examples/MAX78002/USB/USB_CDCACM/.vscode/c_cpp_properties.json rename to Examples/MAX32657/Hello_World_TZ/NonSecure/.vscode/c_cpp_properties.json diff --git a/Examples/MAX78002/USB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb b/Examples/MAX32657/Hello_World_TZ/NonSecure/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb rename to Examples/MAX32657/Hello_World_TZ/NonSecure/.vscode/flash.gdb diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.vscode/launch.json b/Examples/MAX32657/Hello_World_TZ/NonSecure/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.vscode/launch.json rename to Examples/MAX32657/Hello_World_TZ/NonSecure/.vscode/launch.json diff --git a/Examples/MAX32657/Hello_World_TZ/NonSecure/.vscode/settings.json b/Examples/MAX32657/Hello_World_TZ/NonSecure/.vscode/settings.json new file mode 100644 index 00000000000..86620b5cc05 --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/NonSecure/.vscode/settings.json @@ -0,0 +1,79 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32657", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"${config:target}.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX78002/USB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json b/Examples/MAX32657/Hello_World_TZ/NonSecure/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json rename to Examples/MAX32657/Hello_World_TZ/NonSecure/.vscode/tasks.json diff --git a/Examples/MAX32657/Hello_World_TZ/NonSecure/Makefile b/Examples/MAX32657/Hello_World_TZ/NonSecure/Makefile new file mode 100644 index 00000000000..2de2e35fdc6 --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/NonSecure/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32657 +TARGET_UC := MAX32657 +TARGET_LC := max32657 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32657/Hello_World_TZ/NonSecure/NonSecure.launch b/Examples/MAX32657/Hello_World_TZ/NonSecure/NonSecure.launch new file mode 100644 index 00000000000..cc20fbb1dfe --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/NonSecure/NonSecure.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32657/Hello_World_TZ/NonSecure/README.md b/Examples/MAX32657/Hello_World_TZ/NonSecure/README.md new file mode 100644 index 00000000000..d7222aab8ee --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/NonSecure/README.md @@ -0,0 +1,31 @@ +## Description + +A basic getting started program using Cortex-M33 TrustZone feature. + +This version of Hello_World prints an incrementing count to the console UART and toggles a LED0 every 500 ms from the non-secure world. Incrementing the count is done in the Secure world. + +Under the **Hello_World_TZ** example, the **Secure** and **NonSecure** projects demonstrate building the secure and non-secure code into a single image. You do not build directly in the **NonSecure** project. + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +The Non-Secure Project must set these flags: +- `TRUSTZONE=1` +- `MSECURITY_MODE=NONSECURE` + +## Required Connections + +TODO + +## Expected Output + +TODO + +``` +TODO +``` diff --git a/Examples/MAX32657/Hello_World_TZ/NonSecure/main.c b/Examples/MAX32657/Hello_World_TZ/NonSecure/main.c new file mode 100644 index 00000000000..f197a75512e --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/NonSecure/main.c @@ -0,0 +1,62 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Hello World - Non-Secure. + * @details This TrustZone-enabled exampled splits Hello_World into two partitions. + * The Secure world setups the transition to the Non-Secure world, and + * increments the counter. The Non-Secure world prints the count, + * and toggles the LED. + */ + +/***** Includes *****/ +#include +#include +#include "mxc_device.h" +#include "led.h" +#include "pb.h" +#include "board.h" +#include "mxc_delay.h" + +/***** Definitions *****/ + +/***** Globals *****/ + +/***** Functions *****/ + +// From the Secure code, loaded into Non-Secure project through secure_implib.o object file. +extern int IncrementCount_S(volatile int *count_ns); + +// ***************************************************************************** +int main(void) +{ + int count = 0; + + printf("Hello from Non-Secure World!\n"); + + while (1) { + LED_On(LED_RED); + MXC_Delay(500000); + LED_Off(LED_RED); + MXC_Delay(500000); + + IncrementCount_S(&count); + printf("count = %d\n", count); + } +} diff --git a/Examples/MAX32657/Hello_World_TZ/NonSecure/project.mk b/Examples/MAX32657/Hello_World_TZ/NonSecure/project.mk new file mode 100644 index 00000000000..ad2149f0137 --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/NonSecure/project.mk @@ -0,0 +1,15 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Add your config here! + +# TrustZone project with secure and non-secure code. +TRUSTZONE=1 + +MSECURITY_MODE=NONSECURE diff --git a/Examples/MAX32657/Hello_World_TZ/README.md b/Examples/MAX32657/Hello_World_TZ/README.md new file mode 100644 index 00000000000..eb28178ec54 --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/README.md @@ -0,0 +1,38 @@ +## Description + +A basic getting started program using the Cortex-M33 TrustZone feature. + +This version of Hello_World prints an incrementing count to the console UART and toggles a LED0 every 500 ms from the Non-Secure world. Incrementing the count is done in the Secure world. + +Under the **Hello_World_TZ** example, the **Secure** and **NonSecure** projects demonstrate building the secure and non-secure code into a single image. You do not build directly in the **NonSecure** project. + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +The **Secure** project must have the **partition_max32657.h** file included for the SAU setup done in `SystemInit()` at startup. + +The Secure Project must set these flags: +- `TRUSTZONE=1` +- `MSECURITY_MODE=SECURE` +- `NONSECURE_CODE_DIR=path/to/nonsecure/project` + +The Non-Secure Project must set these flags: +- `TRUSTZONE=1` +- `MSECURITY_MODE=NONSECURE` + +## Required Connections + +TODO + +## Expected Output + +TODO + +``` +TODO +``` diff --git a/Examples/MAX32657/Hello_World_TZ/Secure/.cproject b/Examples/MAX32657/Hello_World_TZ/Secure/.cproject new file mode 100644 index 00000000000..0eeca628fef --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/Secure/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32657/Hello_World_TZ/Secure/.project b/Examples/MAX32657/Hello_World_TZ/Secure/.project new file mode 100644 index 00000000000..65da42ba98e --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/Secure/.project @@ -0,0 +1,26 @@ + + + Secure + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX78002/USB/USB_CompositeDevice_MSC_CDC/.settings/language.settings.xml b/Examples/MAX32657/Hello_World_TZ/Secure/.settings/language.settings.xml similarity index 100% rename from Examples/MAX78002/USB/USB_CompositeDevice_MSC_CDC/.settings/language.settings.xml rename to Examples/MAX32657/Hello_World_TZ/Secure/.settings/language.settings.xml diff --git a/Examples/MAX78002/USB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32657/Hello_World_TZ/Secure/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX78002/USB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32657/Hello_World_TZ/Secure/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32657/Hello_World_TZ/Secure/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32657/Hello_World_TZ/Secure/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..7c28de8c89f --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/Secure/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=Secure +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32657 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32657/Hello_World_TZ/Secure/.vscode/README.md b/Examples/MAX32657/Hello_World_TZ/Secure/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/Secure/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX78002/USB/USB_CompositeDevice_MSC_CDC/.vscode/c_cpp_properties.json b/Examples/MAX32657/Hello_World_TZ/Secure/.vscode/c_cpp_properties.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_CompositeDevice_MSC_CDC/.vscode/c_cpp_properties.json rename to Examples/MAX32657/Hello_World_TZ/Secure/.vscode/c_cpp_properties.json diff --git a/Examples/MAX78002/USB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb b/Examples/MAX32657/Hello_World_TZ/Secure/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb rename to Examples/MAX32657/Hello_World_TZ/Secure/.vscode/flash.gdb diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.vscode/launch.json b/Examples/MAX32657/Hello_World_TZ/Secure/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.vscode/launch.json rename to Examples/MAX32657/Hello_World_TZ/Secure/.vscode/launch.json diff --git a/Examples/MAX32657/Hello_World_TZ/Secure/.vscode/settings.json b/Examples/MAX32657/Hello_World_TZ/Secure/.vscode/settings.json new file mode 100644 index 00000000000..86620b5cc05 --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/Secure/.vscode/settings.json @@ -0,0 +1,79 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32657", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"${config:target}.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX78002/USB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json b/Examples/MAX32657/Hello_World_TZ/Secure/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json rename to Examples/MAX32657/Hello_World_TZ/Secure/.vscode/tasks.json diff --git a/Examples/MAX32657/Hello_World_TZ/Secure/Makefile b/Examples/MAX32657/Hello_World_TZ/Secure/Makefile new file mode 100644 index 00000000000..2de2e35fdc6 --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/Secure/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32657 +TARGET_UC := MAX32657 +TARGET_LC := max32657 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32657/Hello_World_TZ/Secure/README.md b/Examples/MAX32657/Hello_World_TZ/Secure/README.md new file mode 100644 index 00000000000..c7cc4d0b268 --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/Secure/README.md @@ -0,0 +1,34 @@ +## Description + +A basic getting started program using the Cortex-M33 TrustZone feature. + +This version of Hello_World prints an incrementing count to the console UART and toggles a LED0 every 500 ms from the Non-Secure world. Incrementing the count is done in the Secure world. + +Under the **Hello_World_TZ** example, the **Secure** and **NonSecure** projects demonstrate building the secure and non-secure code into a single image. You do not build directly in the **NonSecure** project. + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +The **Secure** project must have the **partition_max32657.h** file included for the SAU setup done in `SystemInit()` at startup. + +The Secure Project must set these flags: +- `TRUSTZONE=1` +- `MSECURITY_MODE=SECURE` +- `NONSECURE_CODE_DIR=path/to/nonsecure/project` + +## Required Connections + +TODO + +## Expected Output + +TODO + +``` +TODO +``` diff --git a/Examples/MAX32657/Hello_World_TZ/Secure/Secure.launch b/Examples/MAX32657/Hello_World_TZ/Secure/Secure.launch new file mode 100644 index 00000000000..b0ced9208f0 --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/Secure/Secure.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32657/Hello_World_TZ/Secure/main.c b/Examples/MAX32657/Hello_World_TZ/Secure/main.c new file mode 100644 index 00000000000..2372c05096c --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/Secure/main.c @@ -0,0 +1,105 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Hello World - Secure. + * @details This TrustZone-enabled exampled splits Hello_World into two partitions. + * The Secure world setups the transition to the Non-Secure world, and + * increments the counter. The Non-Secure world prints the count, + * and toggles the LED. + */ + +/***** Includes *****/ +#include +#include +#include +#include "mxc_device.h" +#include "mxc_errors.h" +#include "mxc_delay.h" +#include "led.h" +#include "pb.h" +#include "board.h" +#include "spc.h" + +/***** Definitions *****/ + +/***** Globals *****/ + +/***** Functions *****/ + +/** + * Brief: Increment counter in Secure context from Non-Secure world. + * + * Warning: Prevent leaks by checking pointers passed into + * Secure functions before dereferencing them, or the Non-Secure + * world can access all of Secure memory. Secure code must also + * handle non-secure memory as volatile. + * + * By design, illegal accesses would trigger a hardfault unless + * handled by the MPC/PPC. + * + * Param: *count Pointer of counter value to increment. + * Return: Error code. + */ +__ns_entry int IncrementCount_S(volatile int *count_ns) +{ + // CMSE intrinsic function. Check permissions before derefencing pointer. + count_ns = cmse_check_pointed_object((int *)count_ns, CMSE_NONSECURE); + + // count_ns will be NULL on a failed check. + if (count_ns == NULL) { + return E_NULL_PTR; + } + + (*count_ns)++; + + return E_NO_ERROR; +} + +// ***************************************************************************** +int main(void) +{ + printf("**** Hello_World example with TrustZone ****\n"); + printf("Currently in the secure world.\n"); + + // Add any Secure World software initialization and routines here + // before NonSecure_Init(); + + printf("Beginning transition to the non-secure world.\n"); + + // Set UART (serial console) and GPIO (LED) peripheral to Non-Secure. + MXC_SPC_SetNonSecure(MXC_SPC_PERIPH_UART); + MXC_SPC_SetNonSecure(MXC_SPC_PERIPH_GPIO0); + + // Set LED pins to be accessible in Non-Secure code. + MXC_SPC_GPIO_SetNonSecure(MXC_GPIO0, led_pin[0].mask); + + // Set Flash (Code region) as Non-Secure Callable for the IncrementCount_S function. + MXC_SPC_SetCode_NSC(true); + + // Transition to Non-Secure world. + // Defined in system_max32657.c as a weak function. + printf("Transitioning to non-secure world.\n"); + NonSecure_Init(); + + // Should never reach here. + printf("Error: Code should not reach here. Transition not successful.\n"); + + while (1) {} +} diff --git a/Examples/MAX32657/Hello_World_TZ/Secure/partition_max32657.h b/Examples/MAX32657/Hello_World_TZ/Secure/partition_max32657.h new file mode 100644 index 00000000000..c3fa050aaf8 --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/Secure/partition_max32657.h @@ -0,0 +1,1298 @@ +/***************************************************************************** + * @file partition_max32657.h + * @brief CMSIS-Core(M) Device Initial Setup for Secure/Non-Secure Zones for + * MAX32657 + * @version V1.0.0 + * @date 20. January 2021 + *****************************************************************************/ +/* + * Copyright (c) 2009-2021 Arm Limited. All rights reserved. + * + * Portions Copyright (C) 2024 Analog Devices, Inc. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef EXAMPLES_MAX32657_HELLO_WORLD_TZ_SECURE_PARTITION_MAX32657_H_ +#define EXAMPLES_MAX32657_HELLO_WORLD_TZ_SECURE_PARTITION_MAX32657_H_ + +#include "mxc_device.h" + +// clang-format off +#if IS_SECURE_ENVIRONMENT + +/* +//-------- <<< Use Configuration Wizard in Context Menu >>> ----------------- +*/ + +/* +// Enable SAU +// Value for SAU->CTRL register bit ENABLE +*/ +#define SAU_INIT_CTRL_ENABLE 1 + +/* +// When SAU is disabled +// <0=> All Memory is Secure +// <1=> All Memory is Non-Secure +// Value for SAU->CTRL register bit ALLNS +// When all Memory is Non-Secure (ALLNS is 1), IDAU can override memory map configuration. +*/ +#define SAU_INIT_CTRL_ALLNS 0 + +/* +// +*/ + +/* +// Initialize Security Attribution Unit (SAU) Address Regions +// SAU configuration specifies regions to be one of: +// - Secure and Non-Secure Callable +// - Non-Secure +// Note: All memory regions not configured by SAU are Secure +*/ +/** + * Analog Devices, Inc. + * 4 Memory Spaces in the MAX32657. + * 1. Non-Secure Flash + * 2. Secure Flash + * 3. Non-Secure SRAM + * 4. Secure SRAM + * + * Finer grain control can be achieved depending on the application + * requirements by updating the regions of this file. + * + * Non-Secure Flash (1MB) 0x0100.0000 - 0x010F.FFFF + * Non-Secure SRAM0 (32kB) 0x2000.0000 - 0x2000.7FFF + * Non-Secure SRAM1 (32kB) 0x2000.8000 - 0x2000.FFFF + * Non-Secure SRAM2 (64kB) 0x2001.0000 - 0x2001.FFFF + * Non-Secure SRAM3 (64kB) 0x2002.0000 - 0x2002.FFFF + * Non-Secure SRAM4 (64kB) 0x2003.0000 - 0x2003.FFFF + * + * Secure Flash (1MB) 0x1100.0000 - 0x110F.FFFF + * Secure SRAM0 (32kB) 0x3000.0000 - 0x3000.7FFF + * Secure SRAM1 (32kB) 0x3000.8000 - 0x3000.FFFF + * Secure SRAM2 (64kB) 0x3001.0000 - 0x3001.FFFF + * Secure SRAM3 (64kB) 0x3002.0000 - 0x3002.FFFF + * Secure SRAM4 (64kB) 0x3003.0000 - 0x3003.FFFF + * + * Note: The total physical space for Flash is 1MB, and SRAM is 256KB. + * The total size between the non-secure and secure Flash regions + * should be 1MB. + * The total size between the non-secure and secure SRAM regions + * should be 256KB. + * - By default, this file sets the following regions: + * Secure Flash (504KB): 0x1100.0000 - 0x1107.DFFF + * Non-Secure Callable Flash (8KB): 0x1107.E000 - 0x1107.FFFF + * Non-Secure Flash (512KB): 0x0108.0000 - 0x010F.FFFF + * Secure SRAM (0-2) (128KB): 0x3000.0000 - 0x3001.FFFF + * Non-Secure SRAM (3-4) (128KB): 0x2002.0000 - 0x2003.FFFF + */ +#define SAU_REGIONS_MAX 4 /* Max. number of SAU regions */ + +/* +// Initialize SAU Region 0 (Secure Flash) +// Setup SAU Region 0 memory attributes +*/ +#define SAU_INIT_REGION0 1 + +/* +// Start Address <0-0xFFFFFFE0> +*/ +#define SAU_INIT_START0 0x11000000 /* start address of SAU region 0 (ROM) */ + +/* +// End Address <0x1F-0xFFFFFFFF> +*/ +#define SAU_INIT_END0 0x1107ffff /* end address of SAU region 0 */ + +/* +// Region is +// <0=>Non-Secure +// <1=>Secure, Non-Secure Callable +*/ +#define SAU_INIT_NSC0 1 +/* +// +*/ + +/* +// Initialize SAU Region 1 (Non-Secure Flash) +// Setup SAU Region 1 memory attributes +*/ +#define SAU_INIT_REGION1 1 + +/* +// Start Address <0-0xFFFFFFE0> +*/ +#define SAU_INIT_START1 0x01080000 + +/* +// End Address <0x1F-0xFFFFFFFF> +*/ +#define SAU_INIT_END1 0x010fffff + +/* +// Region is +// <0=>Non-Secure +// <1=>Secure, Non-Secure Callable +*/ +#define SAU_INIT_NSC1 0 +/* +// +*/ + +/* +// Initialize SAU Region 2 (Secure SRAM (0-2)) +// Setup SAU Region 2 memory attributes +*/ +#define SAU_INIT_REGION2 1 + +/* +// Start Address <0-0xFFFFFFE0> +*/ +#define SAU_INIT_START2 0x30000000 + +/* +// End Address <0x1F-0xFFFFFFFF> +*/ +#define SAU_INIT_END2 0x3001ffff + +/* +// Region is +// <0=>Non-Secure +// <1=>Secure, Non-Secure Callable +*/ +#define SAU_INIT_NSC2 1 +/* +// +*/ + +/* +// Initialize SAU Region 3 (Non-Secure SRAM (3-4)) +// Setup SAU Region 3 memory attributes +*/ +#define SAU_INIT_REGION3 1 + +/* +// Start Address <0-0xFFFFFFE0> +*/ +#define SAU_INIT_START3 0x20020000 + +/* +// End Address <0x1F-0xFFFFFFFF> +*/ +#define SAU_INIT_END3 0x2003ffff + +/* +// Region is +// <0=>Non-Secure +// <1=>Secure, Non-Secure Callable +*/ +#define SAU_INIT_NSC3 0 +/* +// +*/ + +/* +// Initialize SAU Region 4 (Non-Secure SRAM) +// Setup SAU Region 4 memory attributes +*/ +#define SAU_INIT_REGION4 0 + +/* +// Start Address <0-0xFFFFFFE0> +*/ +#define SAU_INIT_START4 0x00000000 /* start address of SAU region 4 */ + +/* +// End Address <0x1F-0xFFFFFFFF> +*/ +#define SAU_INIT_END4 0x00000000 /* end address of SAU region 4 */ + +/* +// Region is +// <0=>Non-Secure +// <1=>Secure, Non-Secure Callable +*/ +#define SAU_INIT_NSC4 0 +/* +// +*/ + +/* +// Initialize SAU Region 5 +// Setup SAU Region 5 memory attributes +*/ +#define SAU_INIT_REGION5 0 + +/* +// Start Address <0-0xFFFFFFE0> +*/ +#define SAU_INIT_START5 0x00000000 + +/* +// End Address <0x1F-0xFFFFFFFF> +*/ +#define SAU_INIT_END5 0x00000000 + +/* +// Region is +// <0=>Non-Secure +// <1=>Secure, Non-Secure Callable +*/ +#define SAU_INIT_NSC5 0 +/* +// +*/ + +/* +// Initialize SAU Region 6 +// Setup SAU Region 6 memory attributes +*/ +#define SAU_INIT_REGION6 0 + +/* +// Start Address <0-0xFFFFFFE0> +*/ +#define SAU_INIT_START6 0x00000000 + +/* +// End Address <0x1F-0xFFFFFFFF> +*/ +#define SAU_INIT_END6 0x00000000 + +/* +// Region is +// <0=>Non-Secure +// <1=>Secure, Non-Secure Callable +*/ +#define SAU_INIT_NSC6 0 +/* +// +*/ + +/* +// Initialize SAU Region 7 +// Setup SAU Region 7 memory attributes +*/ +#define SAU_INIT_REGION7 0 + +/* +// Start Address <0-0xFFFFFFE0> +*/ +#define SAU_INIT_START7 0x00000000 + +/* +// End Address <0x1F-0xFFFFFFFF> +*/ +#define SAU_INIT_END7 0x00000000 + +/* +// Region is +// <0=>Non-Secure +// <1=>Secure, Non-Secure Callable +*/ +#define SAU_INIT_NSC7 0 +/* +// +*/ + +/* +// +*/ + +/* +// Setup behaviour of Sleep and Exception Handling +*/ +#define SCB_CSR_AIRCR_INIT 1 + +/* +// Deep Sleep can be enabled by +// <0=>Secure and Non-Secure state +// <1=>Secure state only +// Value for SCB->CSR register bit DEEPSLEEPS +*/ +#define SCB_CSR_DEEPSLEEPS_VAL 1 + +/* +// System reset request accessible from +// <0=> Secure and Non-Secure state +// <1=> Secure state only +// Value for SCB->AIRCR register bit SYSRESETREQS +*/ +#define SCB_AIRCR_SYSRESETREQS_VAL 1 + +/* +// Priority of Non-Secure exceptions is +// <0=> Not altered +// <1=> Lowered to 0x80-0xFF +// Value for SCB->AIRCR register bit PRIS +*/ +#define SCB_AIRCR_PRIS_VAL 1 + +/* +// BusFault, HardFault, and NMI target +// <0=> Secure state +// <1=> Non-Secure state +// Value for SCB->AIRCR register bit BFHFNMINS +*/ +#define SCB_AIRCR_BFHFNMINS_VAL 0 + +/* +// +*/ + +/* +// Setup behaviour of Floating Point and Vector Unit (FPU/MVE) +*/ +#define TZ_FPU_NS_USAGE 1 + +/* +// Floating Point and Vector Unit usage +// <0=> Secure state only +// <3=> Secure and Non-Secure state +// Value for SCB->NSACR register bits CP10, CP11 +*/ +#define SCB_NSACR_CP10_11_VAL 3 + +/* +// Treat floating-point registers as Secure +// <0=> Disabled +// <1=> Enabled +// Value for FPU->FPCCR register bit TS +*/ +#define FPU_FPCCR_TS_VAL 0 + +/* +// Clear on return (CLRONRET) accessibility +// <0=> Secure and Non-Secure state +// <1=> Secure state only +// Value for FPU->FPCCR register bit CLRONRETS +*/ +#define FPU_FPCCR_CLRONRETS_VAL 0 + +/* +// Clear floating-point caller saved registers on exception return +// <0=> Disabled +// <1=> Enabled +// Value for FPU->FPCCR register bit CLRONRET +*/ +#define FPU_FPCCR_CLRONRET_VAL 1 + +/* +// +*/ + +/* +// Setup Interrupt Target +*/ + +/* +// Initialize ITNS 0 (Interrupts 0..31) +*/ +#define NVIC_INIT_ITNS0 1 + +/* +// Interrupts 0..31 +// ICE Unlock <0=> Secure state <1=> Non-Secure state +// Watchdog Timer <0=> Secure state <1=> Non-Secure state +// Real Time Clock <0=> Secure state <1=> Non-Secure state +// True Random Number Generator <0=> Secure state <1=> Non-Secure state +// Timer 0 <0=> Secure state <1=> Non-Secure state +// Timer 1 <0=> Secure state <1=> Non-Secure state +// Timer 2 <0=> Secure state <1=> Non-Secure state +// Timer 3 <0=> Secure state <1=> Non-Secure state +// Timer 4 <0=> Secure state <1=> Non-Secure state +// Timer 5 <0=> Secure state <1=> Non-Secure state +// I3C <0=> Secure state <1=> Non-Secure state +// UART <0=> Secure state <1=> Non-Secure state +// SPI <0=> Secure state <1=> Non-Secure state +// Flash Controller <0=> Secure state <1=> Non-Secure state +// GPIO0 <0=> Secure state <1=> Non-Secure state +// Reserved (15) <0=> Secure state <1=> Non-Secure state +// DMA0 Channel 0 <0=> Secure state <1=> Non-Secure state +// DMA0 Channel 1 <0=> Secure state <1=> Non-Secure state +// DMA0 Channel 2 <0=> Secure state <1=> Non-Secure state +// DMA0 Channel 3 <0=> Secure state <1=> Non-Secure state +// DMA1 Channel 0 <0=> Secure state <1=> Non-Secure state +// DMA1 Channel 1 <0=> Secure state <1=> Non-Secure state +// DMA1 Channel 2 <0=> Secure state <1=> Non-Secure state +// DMA1 Channel 3 <0=> Secure state <1=> Non-Secure state +// Wakeup Timer 0 <0=> Secure state <1=> Non-Secure state +// Wakeup Timer 1 <0=> Secure state <1=> Non-Secure state +// GPIO Wake <0=> Secure state <1=> Non-Secure state +// CRC <0=> Secure state <1=> Non-Secure state +// AES <0=> Secure state <1=> Non-Secure state +// ERFO Ready <0=> Secure state <1=> Non-Secure state +// Boost Controller <0=> Secure state <1=> Non-Secure state +// ECC <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS0_VAL 0x00000000 + +/* +// +*/ + +/* +// Initialize ITNS 1 (Interrupts 32..63) +*/ +#define NVIC_INIT_ITNS1 1 + +/* +// Interrupts 32..63 +// BTLE XXXX0 <0=> Secure state <1=> Non-Secure state +// BTLE XXXX1 <0=> Secure state <1=> Non-Secure state +// BTLE XXXX2 <0=> Secure state <1=> Non-Secure state +// BTLE XXXX3 <0=> Secure state <1=> Non-Secure state +// BTLE XXXX4 <0=> Secure state <1=> Non-Secure state +// BTLE XXXX5 <0=> Secure state <1=> Non-Secure state +// BTLE XXXX6 <0=> Secure state <1=> Non-Secure state +// BTLE XXXX7 <0=> Secure state <1=> Non-Secure state +// BTLE XXXX8 <0=> Secure state <1=> Non-Secure state +// BTLE XXXX9 <0=> Secure state <1=> Non-Secure state +// BTLE XXXXA <0=> Secure state <1=> Non-Secure state +// BTLE XXXXB <0=> Secure state <1=> Non-Secure state +// BTLE XXXXC <0=> Secure state <1=> Non-Secure state +// BTLE XXXXD <0=> Secure state <1=> Non-Secure state +// BTLE XXXXE <0=> Secure state <1=> Non-Secure state +// Reserved (47) <0=> Secure state <1=> Non-Secure state +// MPC Combined (Secure) <0=> Secure state <1=> Non-Secure state +// PPC Combined (Secure) <0=> Secure state <1=> Non-Secure state +// Reserved (50) <0=> Secure state <1=> Non-Secure state +// Reserved (51) <0=> Secure state <1=> Non-Secure state +// Reserved (52) <0=> Secure state <1=> Non-Secure state +// Reserved (53) <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS1_VAL 0x00000000 + +/* +// +*/ + +/* +// Initialize ITNS 2 (Interrupts 64..95) +*/ +#define NVIC_INIT_ITNS2 0 + +/* +// Interrupts 64..95 +// Interrupt 64 <0=> Secure state <1=> Non-Secure state +// Interrupt 65 <0=> Secure state <1=> Non-Secure state +// Interrupt 66 <0=> Secure state <1=> Non-Secure state +// Interrupt 67 <0=> Secure state <1=> Non-Secure state +// Interrupt 68 <0=> Secure state <1=> Non-Secure state +// Interrupt 69 <0=> Secure state <1=> Non-Secure state +// Interrupt 70 <0=> Secure state <1=> Non-Secure state +// Interrupt 71 <0=> Secure state <1=> Non-Secure state +// Interrupt 72 <0=> Secure state <1=> Non-Secure state +// Interrupt 73 <0=> Secure state <1=> Non-Secure state +// Interrupt 74 <0=> Secure state <1=> Non-Secure state +// Interrupt 75 <0=> Secure state <1=> Non-Secure state +// Interrupt 76 <0=> Secure state <1=> Non-Secure state +// Interrupt 77 <0=> Secure state <1=> Non-Secure state +// Interrupt 78 <0=> Secure state <1=> Non-Secure state +// Interrupt 79 <0=> Secure state <1=> Non-Secure state +// Interrupt 80 <0=> Secure state <1=> Non-Secure state +// Interrupt 81 <0=> Secure state <1=> Non-Secure state +// Interrupt 82 <0=> Secure state <1=> Non-Secure state +// Interrupt 83 <0=> Secure state <1=> Non-Secure state +// Interrupt 84 <0=> Secure state <1=> Non-Secure state +// Interrupt 85 <0=> Secure state <1=> Non-Secure state +// Interrupt 86 <0=> Secure state <1=> Non-Secure state +// Interrupt 87 <0=> Secure state <1=> Non-Secure state +// Interrupt 88 <0=> Secure state <1=> Non-Secure state +// Interrupt 89 <0=> Secure state <1=> Non-Secure state +// Interrupt 90 <0=> Secure state <1=> Non-Secure state +// Interrupt 91 <0=> Secure state <1=> Non-Secure state +// Interrupt 92 <0=> Secure state <1=> Non-Secure state +// Interrupt 93 <0=> Secure state <1=> Non-Secure state +// Interrupt 94 <0=> Secure state <1=> Non-Secure state +// Interrupt 95 <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS2_VAL 0x00000000 + +/* +// +*/ + +/* +// Initialize ITNS 3 (Interrupts 96..127) +*/ +#define NVIC_INIT_ITNS3 0 + +/* +// Interrupts 96..127 +// Interrupt 96 <0=> Secure state <1=> Non-Secure state +// Interrupt 97 <0=> Secure state <1=> Non-Secure state +// Interrupt 98 <0=> Secure state <1=> Non-Secure state +// Interrupt 99 <0=> Secure state <1=> Non-Secure state +// Interrupt 100 <0=> Secure state <1=> Non-Secure state +// Interrupt 101 <0=> Secure state <1=> Non-Secure state +// Interrupt 102 <0=> Secure state <1=> Non-Secure state +// Interrupt 103 <0=> Secure state <1=> Non-Secure state +// Interrupt 104 <0=> Secure state <1=> Non-Secure state +// Interrupt 105 <0=> Secure state <1=> Non-Secure state +// Interrupt 106 <0=> Secure state <1=> Non-Secure state +// Interrupt 107 <0=> Secure state <1=> Non-Secure state +// Interrupt 108 <0=> Secure state <1=> Non-Secure state +// Interrupt 109 <0=> Secure state <1=> Non-Secure state +// Interrupt 110 <0=> Secure state <1=> Non-Secure state +// Interrupt 111 <0=> Secure state <1=> Non-Secure state +// Interrupt 112 <0=> Secure state <1=> Non-Secure state +// Interrupt 113 <0=> Secure state <1=> Non-Secure state +// Interrupt 114 <0=> Secure state <1=> Non-Secure state +// Interrupt 115 <0=> Secure state <1=> Non-Secure state +// Interrupt 116 <0=> Secure state <1=> Non-Secure state +// Interrupt 117 <0=> Secure state <1=> Non-Secure state +// Interrupt 118 <0=> Secure state <1=> Non-Secure state +// Interrupt 119 <0=> Secure state <1=> Non-Secure state +// Interrupt 120 <0=> Secure state <1=> Non-Secure state +// Interrupt 121 <0=> Secure state <1=> Non-Secure state +// Interrupt 122 <0=> Secure state <1=> Non-Secure state +// Interrupt 123 <0=> Secure state <1=> Non-Secure state +// Interrupt 124 <0=> Secure state <1=> Non-Secure state +// Interrupt 125 <0=> Secure state <1=> Non-Secure state +// Interrupt 126 <0=> Secure state <1=> Non-Secure state +// Interrupt 127 <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS3_VAL 0x00000000 + +/* +// +*/ + +/* +// Initialize ITNS 4 (Interrupts 128..159) +*/ +#define NVIC_INIT_ITNS4 0 + +/* +// Interrupts 128..159 +// Interrupt 128 <0=> Secure state <1=> Non-Secure state +// Interrupt 129 <0=> Secure state <1=> Non-Secure state +// Interrupt 130 <0=> Secure state <1=> Non-Secure state +// Interrupt 131 <0=> Secure state <1=> Non-Secure state +// Interrupt 132 <0=> Secure state <1=> Non-Secure state +// Interrupt 133 <0=> Secure state <1=> Non-Secure state +// Interrupt 134 <0=> Secure state <1=> Non-Secure state +// Interrupt 135 <0=> Secure state <1=> Non-Secure state +// Interrupt 136 <0=> Secure state <1=> Non-Secure state +// Interrupt 137 <0=> Secure state <1=> Non-Secure state +// Interrupt 138 <0=> Secure state <1=> Non-Secure state +// Interrupt 139 <0=> Secure state <1=> Non-Secure state +// Interrupt 140 <0=> Secure state <1=> Non-Secure state +// Interrupt 141 <0=> Secure state <1=> Non-Secure state +// Interrupt 142 <0=> Secure state <1=> Non-Secure state +// Interrupt 143 <0=> Secure state <1=> Non-Secure state +// Interrupt 144 <0=> Secure state <1=> Non-Secure state +// Interrupt 145 <0=> Secure state <1=> Non-Secure state +// Interrupt 146 <0=> Secure state <1=> Non-Secure state +// Interrupt 147 <0=> Secure state <1=> Non-Secure state +// Interrupt 148 <0=> Secure state <1=> Non-Secure state +// Interrupt 149 <0=> Secure state <1=> Non-Secure state +// Interrupt 150 <0=> Secure state <1=> Non-Secure state +// Interrupt 151 <0=> Secure state <1=> Non-Secure state +// Interrupt 152 <0=> Secure state <1=> Non-Secure state +// Interrupt 153 <0=> Secure state <1=> Non-Secure state +// Interrupt 154 <0=> Secure state <1=> Non-Secure state +// Interrupt 155 <0=> Secure state <1=> Non-Secure state +// Interrupt 156 <0=> Secure state <1=> Non-Secure state +// Interrupt 157 <0=> Secure state <1=> Non-Secure state +// Interrupt 158 <0=> Secure state <1=> Non-Secure state +// Interrupt 159 <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS4_VAL 0x00000000 + +/* +// +*/ + +/* +// Initialize ITNS 5 (Interrupts 160..191) +*/ +#define NVIC_INIT_ITNS5 0 + +/* +// Interrupts 160..191 +// Interrupt 160 <0=> Secure state <1=> Non-Secure state +// Interrupt 161 <0=> Secure state <1=> Non-Secure state +// Interrupt 162 <0=> Secure state <1=> Non-Secure state +// Interrupt 163 <0=> Secure state <1=> Non-Secure state +// Interrupt 164 <0=> Secure state <1=> Non-Secure state +// Interrupt 165 <0=> Secure state <1=> Non-Secure state +// Interrupt 166 <0=> Secure state <1=> Non-Secure state +// Interrupt 167 <0=> Secure state <1=> Non-Secure state +// Interrupt 168 <0=> Secure state <1=> Non-Secure state +// Interrupt 169 <0=> Secure state <1=> Non-Secure state +// Interrupt 170 <0=> Secure state <1=> Non-Secure state +// Interrupt 171 <0=> Secure state <1=> Non-Secure state +// Interrupt 172 <0=> Secure state <1=> Non-Secure state +// Interrupt 173 <0=> Secure state <1=> Non-Secure state +// Interrupt 174 <0=> Secure state <1=> Non-Secure state +// Interrupt 175 <0=> Secure state <1=> Non-Secure state +// Interrupt 176 <0=> Secure state <1=> Non-Secure state +// Interrupt 177 <0=> Secure state <1=> Non-Secure state +// Interrupt 178 <0=> Secure state <1=> Non-Secure state +// Interrupt 179 <0=> Secure state <1=> Non-Secure state +// Interrupt 180 <0=> Secure state <1=> Non-Secure state +// Interrupt 181 <0=> Secure state <1=> Non-Secure state +// Interrupt 182 <0=> Secure state <1=> Non-Secure state +// Interrupt 183 <0=> Secure state <1=> Non-Secure state +// Interrupt 184 <0=> Secure state <1=> Non-Secure state +// Interrupt 185 <0=> Secure state <1=> Non-Secure state +// Interrupt 186 <0=> Secure state <1=> Non-Secure state +// Interrupt 187 <0=> Secure state <1=> Non-Secure state +// Interrupt 188 <0=> Secure state <1=> Non-Secure state +// Interrupt 189 <0=> Secure state <1=> Non-Secure state +// Interrupt 190 <0=> Secure state <1=> Non-Secure state +// Interrupt 191 <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS5_VAL 0x00000000 + +/* +// +*/ + +/* +// Initialize ITNS 6 (Interrupts 192..223) +*/ +#define NVIC_INIT_ITNS6 0 + +/* +// Interrupts 192..223 +// Interrupt 192 <0=> Secure state <1=> Non-Secure state +// Interrupt 193 <0=> Secure state <1=> Non-Secure state +// Interrupt 194 <0=> Secure state <1=> Non-Secure state +// Interrupt 195 <0=> Secure state <1=> Non-Secure state +// Interrupt 196 <0=> Secure state <1=> Non-Secure state +// Interrupt 197 <0=> Secure state <1=> Non-Secure state +// Interrupt 198 <0=> Secure state <1=> Non-Secure state +// Interrupt 199 <0=> Secure state <1=> Non-Secure state +// Interrupt 200 <0=> Secure state <1=> Non-Secure state +// Interrupt 201 <0=> Secure state <1=> Non-Secure state +// Interrupt 202 <0=> Secure state <1=> Non-Secure state +// Interrupt 203 <0=> Secure state <1=> Non-Secure state +// Interrupt 204 <0=> Secure state <1=> Non-Secure state +// Interrupt 205 <0=> Secure state <1=> Non-Secure state +// Interrupt 206 <0=> Secure state <1=> Non-Secure state +// Interrupt 207 <0=> Secure state <1=> Non-Secure state +// Interrupt 208 <0=> Secure state <1=> Non-Secure state +// Interrupt 209 <0=> Secure state <1=> Non-Secure state +// Interrupt 210 <0=> Secure state <1=> Non-Secure state +// Interrupt 211 <0=> Secure state <1=> Non-Secure state +// Interrupt 212 <0=> Secure state <1=> Non-Secure state +// Interrupt 213 <0=> Secure state <1=> Non-Secure state +// Interrupt 214 <0=> Secure state <1=> Non-Secure state +// Interrupt 215 <0=> Secure state <1=> Non-Secure state +// Interrupt 216 <0=> Secure state <1=> Non-Secure state +// Interrupt 217 <0=> Secure state <1=> Non-Secure state +// Interrupt 218 <0=> Secure state <1=> Non-Secure state +// Interrupt 219 <0=> Secure state <1=> Non-Secure state +// Interrupt 220 <0=> Secure state <1=> Non-Secure state +// Interrupt 221 <0=> Secure state <1=> Non-Secure state +// Interrupt 222 <0=> Secure state <1=> Non-Secure state +// Interrupt 223 <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS6_VAL 0x00000000 + +/* +// +*/ + +/* +// Initialize ITNS 7 (Interrupts 224..255) +*/ +#define NVIC_INIT_ITNS7 0 + +/* +// Interrupts 224..255 +// Interrupt 224 <0=> Secure state <1=> Non-Secure state +// Interrupt 225 <0=> Secure state <1=> Non-Secure state +// Interrupt 226 <0=> Secure state <1=> Non-Secure state +// Interrupt 227 <0=> Secure state <1=> Non-Secure state +// Interrupt 228 <0=> Secure state <1=> Non-Secure state +// Interrupt 229 <0=> Secure state <1=> Non-Secure state +// Interrupt 230 <0=> Secure state <1=> Non-Secure state +// Interrupt 231 <0=> Secure state <1=> Non-Secure state +// Interrupt 232 <0=> Secure state <1=> Non-Secure state +// Interrupt 233 <0=> Secure state <1=> Non-Secure state +// Interrupt 234 <0=> Secure state <1=> Non-Secure state +// Interrupt 235 <0=> Secure state <1=> Non-Secure state +// Interrupt 236 <0=> Secure state <1=> Non-Secure state +// Interrupt 237 <0=> Secure state <1=> Non-Secure state +// Interrupt 238 <0=> Secure state <1=> Non-Secure state +// Interrupt 239 <0=> Secure state <1=> Non-Secure state +// Interrupt 240 <0=> Secure state <1=> Non-Secure state +// Interrupt 241 <0=> Secure state <1=> Non-Secure state +// Interrupt 242 <0=> Secure state <1=> Non-Secure state +// Interrupt 243 <0=> Secure state <1=> Non-Secure state +// Interrupt 244 <0=> Secure state <1=> Non-Secure state +// Interrupt 245 <0=> Secure state <1=> Non-Secure state +// Interrupt 246 <0=> Secure state <1=> Non-Secure state +// Interrupt 247 <0=> Secure state <1=> Non-Secure state +// Interrupt 248 <0=> Secure state <1=> Non-Secure state +// Interrupt 249 <0=> Secure state <1=> Non-Secure state +// Interrupt 250 <0=> Secure state <1=> Non-Secure state +// Interrupt 251 <0=> Secure state <1=> Non-Secure state +// Interrupt 252 <0=> Secure state <1=> Non-Secure state +// Interrupt 253 <0=> Secure state <1=> Non-Secure state +// Interrupt 254 <0=> Secure state <1=> Non-Secure state +// Interrupt 255 <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS7_VAL 0x00000000 + +/* +// +*/ + +/* +// Initialize ITNS 8 (Interrupts 256..287) +*/ +#define NVIC_INIT_ITNS8 0 + +/* +// Interrupts 256..287 +// Interrupt 256 <0=> Secure state <1=> Non-Secure state +// Interrupt 257 <0=> Secure state <1=> Non-Secure state +// Interrupt 258 <0=> Secure state <1=> Non-Secure state +// Interrupt 259 <0=> Secure state <1=> Non-Secure state +// Interrupt 260 <0=> Secure state <1=> Non-Secure state +// Interrupt 261 <0=> Secure state <1=> Non-Secure state +// Interrupt 262 <0=> Secure state <1=> Non-Secure state +// Interrupt 263 <0=> Secure state <1=> Non-Secure state +// Interrupt 264 <0=> Secure state <1=> Non-Secure state +// Interrupt 265 <0=> Secure state <1=> Non-Secure state +// Interrupt 266 <0=> Secure state <1=> Non-Secure state +// Interrupt 267 <0=> Secure state <1=> Non-Secure state +// Interrupt 268 <0=> Secure state <1=> Non-Secure state +// Interrupt 269 <0=> Secure state <1=> Non-Secure state +// Interrupt 270 <0=> Secure state <1=> Non-Secure state +// Interrupt 271 <0=> Secure state <1=> Non-Secure state +// Interrupt 272 <0=> Secure state <1=> Non-Secure state +// Interrupt 273 <0=> Secure state <1=> Non-Secure state +// Interrupt 274 <0=> Secure state <1=> Non-Secure state +// Interrupt 275 <0=> Secure state <1=> Non-Secure state +// Interrupt 276 <0=> Secure state <1=> Non-Secure state +// Interrupt 277 <0=> Secure state <1=> Non-Secure state +// Interrupt 278 <0=> Secure state <1=> Non-Secure state +// Interrupt 279 <0=> Secure state <1=> Non-Secure state +// Interrupt 280 <0=> Secure state <1=> Non-Secure state +// Interrupt 281 <0=> Secure state <1=> Non-Secure state +// Interrupt 282 <0=> Secure state <1=> Non-Secure state +// Interrupt 283 <0=> Secure state <1=> Non-Secure state +// Interrupt 284 <0=> Secure state <1=> Non-Secure state +// Interrupt 285 <0=> Secure state <1=> Non-Secure state +// Interrupt 286 <0=> Secure state <1=> Non-Secure state +// Interrupt 287 <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS8_VAL 0x00000000 + +/* +// +*/ + +/* +// Initialize ITNS 9 (Interrupts 288..319) +*/ +#define NVIC_INIT_ITNS9 0 + +/* +// Interrupts 288..319 +// Interrupt 288 <0=> Secure state <1=> Non-Secure state +// Interrupt 289 <0=> Secure state <1=> Non-Secure state +// Interrupt 290 <0=> Secure state <1=> Non-Secure state +// Interrupt 291 <0=> Secure state <1=> Non-Secure state +// Interrupt 292 <0=> Secure state <1=> Non-Secure state +// Interrupt 293 <0=> Secure state <1=> Non-Secure state +// Interrupt 294 <0=> Secure state <1=> Non-Secure state +// Interrupt 295 <0=> Secure state <1=> Non-Secure state +// Interrupt 296 <0=> Secure state <1=> Non-Secure state +// Interrupt 297 <0=> Secure state <1=> Non-Secure state +// Interrupt 298 <0=> Secure state <1=> Non-Secure state +// Interrupt 299 <0=> Secure state <1=> Non-Secure state +// Interrupt 300 <0=> Secure state <1=> Non-Secure state +// Interrupt 301 <0=> Secure state <1=> Non-Secure state +// Interrupt 302 <0=> Secure state <1=> Non-Secure state +// Interrupt 303 <0=> Secure state <1=> Non-Secure state +// Interrupt 304 <0=> Secure state <1=> Non-Secure state +// Interrupt 305 <0=> Secure state <1=> Non-Secure state +// Interrupt 306 <0=> Secure state <1=> Non-Secure state +// Interrupt 307 <0=> Secure state <1=> Non-Secure state +// Interrupt 308 <0=> Secure state <1=> Non-Secure state +// Interrupt 309 <0=> Secure state <1=> Non-Secure state +// Interrupt 310 <0=> Secure state <1=> Non-Secure state +// Interrupt 311 <0=> Secure state <1=> Non-Secure state +// Interrupt 312 <0=> Secure state <1=> Non-Secure state +// Interrupt 313 <0=> Secure state <1=> Non-Secure state +// Interrupt 314 <0=> Secure state <1=> Non-Secure state +// Interrupt 315 <0=> Secure state <1=> Non-Secure state +// Interrupt 316 <0=> Secure state <1=> Non-Secure state +// Interrupt 317 <0=> Secure state <1=> Non-Secure state +// Interrupt 318 <0=> Secure state <1=> Non-Secure state +// Interrupt 319 <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS9_VAL 0x00000000 + +/* +// +*/ + +/* +// Initialize ITNS 10 (Interrupts 320..351) +*/ +#define NVIC_INIT_ITNS10 0 + +/* +// Interrupts 320..351 +// Interrupt 320 <0=> Secure state <1=> Non-Secure state +// Interrupt 321 <0=> Secure state <1=> Non-Secure state +// Interrupt 322 <0=> Secure state <1=> Non-Secure state +// Interrupt 323 <0=> Secure state <1=> Non-Secure state +// Interrupt 324 <0=> Secure state <1=> Non-Secure state +// Interrupt 325 <0=> Secure state <1=> Non-Secure state +// Interrupt 326 <0=> Secure state <1=> Non-Secure state +// Interrupt 327 <0=> Secure state <1=> Non-Secure state +// Interrupt 328 <0=> Secure state <1=> Non-Secure state +// Interrupt 329 <0=> Secure state <1=> Non-Secure state +// Interrupt 330 <0=> Secure state <1=> Non-Secure state +// Interrupt 331 <0=> Secure state <1=> Non-Secure state +// Interrupt 332 <0=> Secure state <1=> Non-Secure state +// Interrupt 333 <0=> Secure state <1=> Non-Secure state +// Interrupt 334 <0=> Secure state <1=> Non-Secure state +// Interrupt 335 <0=> Secure state <1=> Non-Secure state +// Interrupt 336 <0=> Secure state <1=> Non-Secure state +// Interrupt 337 <0=> Secure state <1=> Non-Secure state +// Interrupt 338 <0=> Secure state <1=> Non-Secure state +// Interrupt 339 <0=> Secure state <1=> Non-Secure state +// Interrupt 340 <0=> Secure state <1=> Non-Secure state +// Interrupt 341 <0=> Secure state <1=> Non-Secure state +// Interrupt 342 <0=> Secure state <1=> Non-Secure state +// Interrupt 343 <0=> Secure state <1=> Non-Secure state +// Interrupt 344 <0=> Secure state <1=> Non-Secure state +// Interrupt 345 <0=> Secure state <1=> Non-Secure state +// Interrupt 346 <0=> Secure state <1=> Non-Secure state +// Interrupt 347 <0=> Secure state <1=> Non-Secure state +// Interrupt 348 <0=> Secure state <1=> Non-Secure state +// Interrupt 349 <0=> Secure state <1=> Non-Secure state +// Interrupt 350 <0=> Secure state <1=> Non-Secure state +// Interrupt 351 <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS10_VAL 0x00000000 + +/* +// +*/ + +/* +// Initialize ITNS 11 (Interrupts 352..383) +*/ +#define NVIC_INIT_ITNS11 0 + +/* +// Interrupts 352..383 +// Interrupt 352 <0=> Secure state <1=> Non-Secure state +// Interrupt 353 <0=> Secure state <1=> Non-Secure state +// Interrupt 354 <0=> Secure state <1=> Non-Secure state +// Interrupt 355 <0=> Secure state <1=> Non-Secure state +// Interrupt 356 <0=> Secure state <1=> Non-Secure state +// Interrupt 357 <0=> Secure state <1=> Non-Secure state +// Interrupt 358 <0=> Secure state <1=> Non-Secure state +// Interrupt 359 <0=> Secure state <1=> Non-Secure state +// Interrupt 360 <0=> Secure state <1=> Non-Secure state +// Interrupt 361 <0=> Secure state <1=> Non-Secure state +// Interrupt 362 <0=> Secure state <1=> Non-Secure state +// Interrupt 363 <0=> Secure state <1=> Non-Secure state +// Interrupt 364 <0=> Secure state <1=> Non-Secure state +// Interrupt 365 <0=> Secure state <1=> Non-Secure state +// Interrupt 366 <0=> Secure state <1=> Non-Secure state +// Interrupt 367 <0=> Secure state <1=> Non-Secure state +// Interrupt 368 <0=> Secure state <1=> Non-Secure state +// Interrupt 369 <0=> Secure state <1=> Non-Secure state +// Interrupt 370 <0=> Secure state <1=> Non-Secure state +// Interrupt 371 <0=> Secure state <1=> Non-Secure state +// Interrupt 372 <0=> Secure state <1=> Non-Secure state +// Interrupt 373 <0=> Secure state <1=> Non-Secure state +// Interrupt 374 <0=> Secure state <1=> Non-Secure state +// Interrupt 375 <0=> Secure state <1=> Non-Secure state +// Interrupt 376 <0=> Secure state <1=> Non-Secure state +// Interrupt 377 <0=> Secure state <1=> Non-Secure state +// Interrupt 378 <0=> Secure state <1=> Non-Secure state +// Interrupt 379 <0=> Secure state <1=> Non-Secure state +// Interrupt 380 <0=> Secure state <1=> Non-Secure state +// Interrupt 381 <0=> Secure state <1=> Non-Secure state +// Interrupt 382 <0=> Secure state <1=> Non-Secure state +// Interrupt 383 <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS11_VAL 0x00000000 + +/* +// +*/ + +/* +// Initialize ITNS 12 (Interrupts 384..415) +*/ +#define NVIC_INIT_ITNS12 0 + +/* +// Interrupts 384..415 +// Interrupt 384 <0=> Secure state <1=> Non-Secure state +// Interrupt 385 <0=> Secure state <1=> Non-Secure state +// Interrupt 386 <0=> Secure state <1=> Non-Secure state +// Interrupt 387 <0=> Secure state <1=> Non-Secure state +// Interrupt 388 <0=> Secure state <1=> Non-Secure state +// Interrupt 389 <0=> Secure state <1=> Non-Secure state +// Interrupt 390 <0=> Secure state <1=> Non-Secure state +// Interrupt 391 <0=> Secure state <1=> Non-Secure state +// Interrupt 392 <0=> Secure state <1=> Non-Secure state +// Interrupt 393 <0=> Secure state <1=> Non-Secure state +// Interrupt 394 <0=> Secure state <1=> Non-Secure state +// Interrupt 395 <0=> Secure state <1=> Non-Secure state +// Interrupt 396 <0=> Secure state <1=> Non-Secure state +// Interrupt 397 <0=> Secure state <1=> Non-Secure state +// Interrupt 398 <0=> Secure state <1=> Non-Secure state +// Interrupt 399 <0=> Secure state <1=> Non-Secure state +// Interrupt 400 <0=> Secure state <1=> Non-Secure state +// Interrupt 401 <0=> Secure state <1=> Non-Secure state +// Interrupt 402 <0=> Secure state <1=> Non-Secure state +// Interrupt 403 <0=> Secure state <1=> Non-Secure state +// Interrupt 404 <0=> Secure state <1=> Non-Secure state +// Interrupt 405 <0=> Secure state <1=> Non-Secure state +// Interrupt 406 <0=> Secure state <1=> Non-Secure state +// Interrupt 407 <0=> Secure state <1=> Non-Secure state +// Interrupt 408 <0=> Secure state <1=> Non-Secure state +// Interrupt 409 <0=> Secure state <1=> Non-Secure state +// Interrupt 410 <0=> Secure state <1=> Non-Secure state +// Interrupt 411 <0=> Secure state <1=> Non-Secure state +// Interrupt 412 <0=> Secure state <1=> Non-Secure state +// Interrupt 413 <0=> Secure state <1=> Non-Secure state +// Interrupt 414 <0=> Secure state <1=> Non-Secure state +// Interrupt 415 <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS12_VAL 0x00000000 + +/* +// +*/ + +/* +// Initialize ITNS 13 (Interrupts 416..447) +*/ +#define NVIC_INIT_ITNS13 0 + +/* +// Interrupts 416..447 +// Interrupt 416 <0=> Secure state <1=> Non-Secure state +// Interrupt 417 <0=> Secure state <1=> Non-Secure state +// Interrupt 418 <0=> Secure state <1=> Non-Secure state +// Interrupt 419 <0=> Secure state <1=> Non-Secure state +// Interrupt 420 <0=> Secure state <1=> Non-Secure state +// Interrupt 421 <0=> Secure state <1=> Non-Secure state +// Interrupt 422 <0=> Secure state <1=> Non-Secure state +// Interrupt 423 <0=> Secure state <1=> Non-Secure state +// Interrupt 424 <0=> Secure state <1=> Non-Secure state +// Interrupt 425 <0=> Secure state <1=> Non-Secure state +// Interrupt 426 <0=> Secure state <1=> Non-Secure state +// Interrupt 427 <0=> Secure state <1=> Non-Secure state +// Interrupt 428 <0=> Secure state <1=> Non-Secure state +// Interrupt 429 <0=> Secure state <1=> Non-Secure state +// Interrupt 430 <0=> Secure state <1=> Non-Secure state +// Interrupt 431 <0=> Secure state <1=> Non-Secure state +// Interrupt 432 <0=> Secure state <1=> Non-Secure state +// Interrupt 433 <0=> Secure state <1=> Non-Secure state +// Interrupt 434 <0=> Secure state <1=> Non-Secure state +// Interrupt 435 <0=> Secure state <1=> Non-Secure state +// Interrupt 436 <0=> Secure state <1=> Non-Secure state +// Interrupt 437 <0=> Secure state <1=> Non-Secure state +// Interrupt 438 <0=> Secure state <1=> Non-Secure state +// Interrupt 439 <0=> Secure state <1=> Non-Secure state +// Interrupt 440 <0=> Secure state <1=> Non-Secure state +// Interrupt 441 <0=> Secure state <1=> Non-Secure state +// Interrupt 442 <0=> Secure state <1=> Non-Secure state +// Interrupt 443 <0=> Secure state <1=> Non-Secure state +// Interrupt 444 <0=> Secure state <1=> Non-Secure state +// Interrupt 445 <0=> Secure state <1=> Non-Secure state +// Interrupt 446 <0=> Secure state <1=> Non-Secure state +// Interrupt 447 <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS13_VAL 0x00000000 + +/* +// +*/ + +/* +// Initialize ITNS 14 (Interrupts 448..479) +*/ +#define NVIC_INIT_ITNS14 0 + +/* +// Interrupts 448..479 +// Interrupt 448 <0=> Secure state <1=> Non-Secure state +// Interrupt 449 <0=> Secure state <1=> Non-Secure state +// Interrupt 450 <0=> Secure state <1=> Non-Secure state +// Interrupt 451 <0=> Secure state <1=> Non-Secure state +// Interrupt 452 <0=> Secure state <1=> Non-Secure state +// Interrupt 453 <0=> Secure state <1=> Non-Secure state +// Interrupt 454 <0=> Secure state <1=> Non-Secure state +// Interrupt 455 <0=> Secure state <1=> Non-Secure state +// Interrupt 456 <0=> Secure state <1=> Non-Secure state +// Interrupt 457 <0=> Secure state <1=> Non-Secure state +// Interrupt 458 <0=> Secure state <1=> Non-Secure state +// Interrupt 459 <0=> Secure state <1=> Non-Secure state +// Interrupt 460 <0=> Secure state <1=> Non-Secure state +// Interrupt 461 <0=> Secure state <1=> Non-Secure state +// Interrupt 462 <0=> Secure state <1=> Non-Secure state +// Interrupt 463 <0=> Secure state <1=> Non-Secure state +// Interrupt 464 <0=> Secure state <1=> Non-Secure state +// Interrupt 465 <0=> Secure state <1=> Non-Secure state +// Interrupt 466 <0=> Secure state <1=> Non-Secure state +// Interrupt 467 <0=> Secure state <1=> Non-Secure state +// Interrupt 468 <0=> Secure state <1=> Non-Secure state +// Interrupt 469 <0=> Secure state <1=> Non-Secure state +// Interrupt 470 <0=> Secure state <1=> Non-Secure state +// Interrupt 471 <0=> Secure state <1=> Non-Secure state +// Interrupt 472 <0=> Secure state <1=> Non-Secure state +// Interrupt 473 <0=> Secure state <1=> Non-Secure state +// Interrupt 474 <0=> Secure state <1=> Non-Secure state +// Interrupt 475 <0=> Secure state <1=> Non-Secure state +// Interrupt 476 <0=> Secure state <1=> Non-Secure state +// Interrupt 477 <0=> Secure state <1=> Non-Secure state +// Interrupt 478 <0=> Secure state <1=> Non-Secure state +// Interrupt 479 <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS14_VAL 0x00000000 + +/* +// +*/ + +/* +// Initialize ITNS 15 (Interrupts 480..511) +*/ +#define NVIC_INIT_ITNS15 0 + +/* +// Interrupts 480..511 +// Interrupt 480 <0=> Secure state <1=> Non-Secure state +// Interrupt 481 <0=> Secure state <1=> Non-Secure state +// Interrupt 482 <0=> Secure state <1=> Non-Secure state +// Interrupt 483 <0=> Secure state <1=> Non-Secure state +// Interrupt 484 <0=> Secure state <1=> Non-Secure state +// Interrupt 485 <0=> Secure state <1=> Non-Secure state +// Interrupt 486 <0=> Secure state <1=> Non-Secure state +// Interrupt 487 <0=> Secure state <1=> Non-Secure state +// Interrupt 488 <0=> Secure state <1=> Non-Secure state +// Interrupt 489 <0=> Secure state <1=> Non-Secure state +// Interrupt 490 <0=> Secure state <1=> Non-Secure state +// Interrupt 491 <0=> Secure state <1=> Non-Secure state +// Interrupt 492 <0=> Secure state <1=> Non-Secure state +// Interrupt 493 <0=> Secure state <1=> Non-Secure state +// Interrupt 494 <0=> Secure state <1=> Non-Secure state +// Interrupt 495 <0=> Secure state <1=> Non-Secure state +// Interrupt 496 <0=> Secure state <1=> Non-Secure state +// Interrupt 497 <0=> Secure state <1=> Non-Secure state +// Interrupt 498 <0=> Secure state <1=> Non-Secure state +// Interrupt 499 <0=> Secure state <1=> Non-Secure state +// Interrupt 500 <0=> Secure state <1=> Non-Secure state +// Interrupt 501 <0=> Secure state <1=> Non-Secure state +// Interrupt 502 <0=> Secure state <1=> Non-Secure state +// Interrupt 503 <0=> Secure state <1=> Non-Secure state +// Interrupt 504 <0=> Secure state <1=> Non-Secure state +// Interrupt 505 <0=> Secure state <1=> Non-Secure state +// Interrupt 506 <0=> Secure state <1=> Non-Secure state +// Interrupt 507 <0=> Secure state <1=> Non-Secure state +// Interrupt 508 <0=> Secure state <1=> Non-Secure state +// Interrupt 509 <0=> Secure state <1=> Non-Secure state +// Interrupt 510 <0=> Secure state <1=> Non-Secure state +// Interrupt 511 <0=> Secure state <1=> Non-Secure state +*/ +#define NVIC_INIT_ITNS15_VAL 0x00000000 + +/* +// +*/ + +/* +// +*/ + + + +/* + max 128 SAU regions. + SAU regions are defined in partition.h + */ + +#define SAU_INIT_REGION(n) \ + SAU->RNR = (n & SAU_RNR_REGION_Msk); \ + SAU->RBAR = (SAU_INIT_START##n & SAU_RBAR_BADDR_Msk); \ + SAU->RLAR = (SAU_INIT_END##n & SAU_RLAR_LADDR_Msk) | \ + ((SAU_INIT_NSC##n << SAU_RLAR_NSC_Pos) & SAU_RLAR_NSC_Msk) | 1U + +/** + \brief Setup a SAU Region + \details Writes the region information contained in SAU_Region to the + registers SAU_RNR, SAU_RBAR, and SAU_RLAR + */ +__STATIC_INLINE void TZ_SAU_Setup (void) +{ + +#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) + + #if defined (SAU_INIT_REGION0) && (SAU_INIT_REGION0 == 1U) + SAU_INIT_REGION(0); + #endif + + #if defined (SAU_INIT_REGION1) && (SAU_INIT_REGION1 == 1U) + SAU_INIT_REGION(1); + #endif + + #if defined (SAU_INIT_REGION2) && (SAU_INIT_REGION2 == 1U) + SAU_INIT_REGION(2); + #endif + + #if defined (SAU_INIT_REGION3) && (SAU_INIT_REGION3 == 1U) + SAU_INIT_REGION(3); + #endif + + #if defined (SAU_INIT_REGION4) && (SAU_INIT_REGION4 == 1U) + SAU_INIT_REGION(4); + #endif + + #if defined (SAU_INIT_REGION5) && (SAU_INIT_REGION5 == 1U) + SAU_INIT_REGION(5); + #endif + + #if defined (SAU_INIT_REGION6) && (SAU_INIT_REGION6 == 1U) + SAU_INIT_REGION(6); + #endif + + #if defined (SAU_INIT_REGION7) && (SAU_INIT_REGION7 == 1U) + SAU_INIT_REGION(7); + #endif + + /* repeat this for all possible SAU regions */ + +#endif /* defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U) */ + + + #if defined (SAU_INIT_CTRL) && (SAU_INIT_CTRL == 1U) + SAU->CTRL = ((SAU_INIT_CTRL_ENABLE << SAU_CTRL_ENABLE_Pos) & SAU_CTRL_ENABLE_Msk) | + ((SAU_INIT_CTRL_ALLNS << SAU_CTRL_ALLNS_Pos) & SAU_CTRL_ALLNS_Msk); + #endif + + #if defined (SCB_CSR_AIRCR_INIT) && (SCB_CSR_AIRCR_INIT == 1U) + SCB->SCR = (SCB->SCR & ~(SCB_SCR_SLEEPDEEPS_Msk )) | + ((SCB_CSR_DEEPSLEEPS_VAL << SCB_SCR_SLEEPDEEPS_Pos) & SCB_SCR_SLEEPDEEPS_Msk); + + SCB->AIRCR = (SCB->AIRCR & ~(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_SYSRESETREQS_Msk | + SCB_AIRCR_BFHFNMINS_Msk | SCB_AIRCR_PRIS_Msk )) | + ((0x05FAU << SCB_AIRCR_VECTKEY_Pos) & SCB_AIRCR_VECTKEY_Msk) | + ((SCB_AIRCR_SYSRESETREQS_VAL << SCB_AIRCR_SYSRESETREQS_Pos) & SCB_AIRCR_SYSRESETREQS_Msk) | + ((SCB_AIRCR_PRIS_VAL << SCB_AIRCR_PRIS_Pos) & SCB_AIRCR_PRIS_Msk) | + ((SCB_AIRCR_BFHFNMINS_VAL << SCB_AIRCR_BFHFNMINS_Pos) & SCB_AIRCR_BFHFNMINS_Msk); + #endif /* defined (SCB_CSR_AIRCR_INIT) && (SCB_CSR_AIRCR_INIT == 1U) */ + + #if (((defined (__FPU_USED) && (__FPU_USED == 1U)) || \ + (defined (__ARM_FEATURE_MVE) && (__ARM_FEATURE_MVE > 0))) && \ + (defined (TZ_FPU_NS_USAGE) && (TZ_FPU_NS_USAGE == 1U))) + + SCB->NSACR = (SCB->NSACR & ~(SCB_NSACR_CP10_Msk | SCB_NSACR_CP11_Msk)) | + ((SCB_NSACR_CP10_11_VAL << SCB_NSACR_CP10_Pos) & (SCB_NSACR_CP10_Msk | SCB_NSACR_CP11_Msk)); + + FPU->FPCCR = (FPU->FPCCR & ~(FPU_FPCCR_TS_Msk | FPU_FPCCR_CLRONRETS_Msk | FPU_FPCCR_CLRONRET_Msk)) | + ((FPU_FPCCR_TS_VAL << FPU_FPCCR_TS_Pos ) & FPU_FPCCR_TS_Msk ) | + ((FPU_FPCCR_CLRONRETS_VAL << FPU_FPCCR_CLRONRETS_Pos) & FPU_FPCCR_CLRONRETS_Msk) | + ((FPU_FPCCR_CLRONRET_VAL << FPU_FPCCR_CLRONRET_Pos ) & FPU_FPCCR_CLRONRET_Msk ); + #endif + + #if defined (NVIC_INIT_ITNS0) && (NVIC_INIT_ITNS0 == 1U) + NVIC->ITNS[0] = NVIC_INIT_ITNS0_VAL; + #endif + + #if defined (NVIC_INIT_ITNS1) && (NVIC_INIT_ITNS1 == 1U) + NVIC->ITNS[1] = NVIC_INIT_ITNS1_VAL; + #endif + + #if defined (NVIC_INIT_ITNS2) && (NVIC_INIT_ITNS2 == 1U) + NVIC->ITNS[2] = NVIC_INIT_ITNS2_VAL; + #endif + + #if defined (NVIC_INIT_ITNS3) && (NVIC_INIT_ITNS3 == 1U) + NVIC->ITNS[3] = NVIC_INIT_ITNS3_VAL; + #endif + + #if defined (NVIC_INIT_ITNS4) && (NVIC_INIT_ITNS4 == 1U) + NVIC->ITNS[4] = NVIC_INIT_ITNS4_VAL; + #endif + + #if defined (NVIC_INIT_ITNS5) && (NVIC_INIT_ITNS5 == 1U) + NVIC->ITNS[5] = NVIC_INIT_ITNS5_VAL; + #endif + + #if defined (NVIC_INIT_ITNS6) && (NVIC_INIT_ITNS6 == 1U) + NVIC->ITNS[6] = NVIC_INIT_ITNS6_VAL; + #endif + + #if defined (NVIC_INIT_ITNS7) && (NVIC_INIT_ITNS7 == 1U) + NVIC->ITNS[7] = NVIC_INIT_ITNS7_VAL; + #endif + + #if defined (NVIC_INIT_ITNS8) && (NVIC_INIT_ITNS8 == 1U) + NVIC->ITNS[8] = NVIC_INIT_ITNS8_VAL; + #endif + + #if defined (NVIC_INIT_ITNS9) && (NVIC_INIT_ITNS9 == 1U) + NVIC->ITNS[9] = NVIC_INIT_ITNS9_VAL; + #endif + + #if defined (NVIC_INIT_ITNS10) && (NVIC_INIT_ITNS10 == 1U) + NVIC->ITNS[10] = NVIC_INIT_ITNS10_VAL; + #endif + + #if defined (NVIC_INIT_ITNS11) && (NVIC_INIT_ITNS11 == 1U) + NVIC->ITNS[11] = NVIC_INIT_ITNS11_VAL; + #endif + + #if defined (NVIC_INIT_ITNS12) && (NVIC_INIT_ITNS12 == 1U) + NVIC->ITNS[12] = NVIC_INIT_ITNS12_VAL; + #endif + + #if defined (NVIC_INIT_ITNS13) && (NVIC_INIT_ITNS13 == 1U) + NVIC->ITNS[13] = NVIC_INIT_ITNS13_VAL; + #endif + + #if defined (NVIC_INIT_ITNS14) && (NVIC_INIT_ITNS14 == 1U) + NVIC->ITNS[14] = NVIC_INIT_ITNS14_VAL; + #endif + + #if defined (NVIC_INIT_ITNS15) && (NVIC_INIT_ITNS15 == 1U) + NVIC->ITNS[15] = NVIC_INIT_ITNS15_VAL; + #endif + + /* repeat this for all possible ITNS elements */ + +} + +#endif // IS_SECURE_EVIRONMENT + +#endif // EXAMPLES_MAX32657_HELLO_WORLD_TZ_SECURE_PARTITION_MAX32657_H_ diff --git a/Examples/MAX32657/Hello_World_TZ/Secure/project.mk b/Examples/MAX32657/Hello_World_TZ/Secure/project.mk new file mode 100644 index 00000000000..52c4d65c9e8 --- /dev/null +++ b/Examples/MAX32657/Hello_World_TZ/Secure/project.mk @@ -0,0 +1,56 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Add your config here! + +# TrustZone project with secure and non-secure code. +TRUSTZONE=1 + +# This is a secure project. +MSECURITY_MODE=SECURE + +# Add path to Non-Secure project. +NONSECURE_CODE_DIR=../NonSecure +SECURE_CODE_DIR=. + +# Set up custom memory settings if enabled +# 1 - enabled, 0 - disabled. +USE_CUSTOM_MEMORY_SETTINGS = 0 + +################################################################################ +# +# If 'USE_CUSTOM_MEMORY_SETTINGS = 1': +# + +# Select which type of memory the main code will execute from. +# Possible options: FLASH or SRAM +EXECUTE_CODE_MEM=FLASH + +# *_SIZE required if USE_CUSTOM_MEMORY_SETTINGS=1 +# Total of *_FLASH_SIZE and *_SRAM_SIZE regions must equal their respective physical size constraints. +# FLASH: 1MB = 0x00100000 +# SRAM: 256KB = 0x00040000 +S_FLASH_SIZE=0x00080000 +NS_FLASH_SIZE=0x00080000 +S_SRAM_SIZE=0x00020000 +NS_SRAM_SIZE=0x00020000 + +# Depending on what type of memory the main code will execute from, a portion +# of the secure region would be used for the Non-Secure Callable Region. +# This sets the size of that region. +NSC_SIZE=0x00008000 # Not required. + +# Optional for finer grain control, but all *_START variables must be set if provided. +# Note: bit 28 of the starting address indicates the security state of the region. +# If not provided, by default, the secure regions start in first half of memory, and the non- +# secure regions start in the second half. +# S_FLASH_START=0x11000000 +# NS_FLASH_START=0x01080000 +# S_SRAM_START=0x30000000 +# NS_SRAM_START=0x20020000 diff --git a/Examples/MAX32660/ARM-DSP/README.md b/Examples/MAX32660/ARM-DSP/README.md index 9bb2d50bedc..5e1d116671b 100644 --- a/Examples/MAX32660/ARM-DSP/README.md +++ b/Examples/MAX32660/ARM-DSP/README.md @@ -8,7 +8,7 @@ The projects in this folder are ports of ARM's DSP example projects that can be Debug launch configurations are included in each project, and should appear in the "Favorites" menu in Eclipse. -Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop) +Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop) ## Software diff --git a/Examples/MAX32660/ARM-DSP/arm_bayes_example/.vscode/README.md b/Examples/MAX32660/ARM-DSP/arm_bayes_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/ARM-DSP/arm_bayes_example/.vscode/README.md +++ b/Examples/MAX32660/ARM-DSP/arm_bayes_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/ARM-DSP/arm_bayes_example/.vscode/settings.json b/Examples/MAX32660/ARM-DSP/arm_bayes_example/.vscode/settings.json index eae4ae3c80c..8dd545f5e9c 100755 --- a/Examples/MAX32660/ARM-DSP/arm_bayes_example/.vscode/settings.json +++ b/Examples/MAX32660/ARM-DSP/arm_bayes_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/ARM-DSP/arm_bayes_example/Makefile b/Examples/MAX32660/ARM-DSP/arm_bayes_example/Makefile index bf8b51a36db..3d3bbedf05d 100644 --- a/Examples/MAX32660/ARM-DSP/arm_bayes_example/Makefile +++ b/Examples/MAX32660/ARM-DSP/arm_bayes_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/ARM-DSP/arm_bayes_example/project.mk b/Examples/MAX32660/ARM-DSP/arm_bayes_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32660/ARM-DSP/arm_bayes_example/project.mk +++ b/Examples/MAX32660/ARM-DSP/arm_bayes_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/ARM-DSP/arm_class_marks_example/.vscode/README.md b/Examples/MAX32660/ARM-DSP/arm_class_marks_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/ARM-DSP/arm_class_marks_example/.vscode/README.md +++ b/Examples/MAX32660/ARM-DSP/arm_class_marks_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/ARM-DSP/arm_class_marks_example/.vscode/settings.json b/Examples/MAX32660/ARM-DSP/arm_class_marks_example/.vscode/settings.json index eae4ae3c80c..8dd545f5e9c 100755 --- a/Examples/MAX32660/ARM-DSP/arm_class_marks_example/.vscode/settings.json +++ b/Examples/MAX32660/ARM-DSP/arm_class_marks_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/ARM-DSP/arm_class_marks_example/Makefile b/Examples/MAX32660/ARM-DSP/arm_class_marks_example/Makefile index bf8b51a36db..3d3bbedf05d 100644 --- a/Examples/MAX32660/ARM-DSP/arm_class_marks_example/Makefile +++ b/Examples/MAX32660/ARM-DSP/arm_class_marks_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c b/Examples/MAX32660/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c index 30f548bc888..2ea5e90d59a 100644 --- a/Examples/MAX32660/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c +++ b/Examples/MAX32660/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c @@ -139,7 +139,7 @@ uint32_t student_num; * Main f32 test function. It returns maximum marks secured and student number * ------------------------------------------------------------------------------- */ -int main() +int main(void) { #ifndef USE_STATIC_INIT diff --git a/Examples/MAX32660/ARM-DSP/arm_class_marks_example/project.mk b/Examples/MAX32660/ARM-DSP/arm_class_marks_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32660/ARM-DSP/arm_class_marks_example/project.mk +++ b/Examples/MAX32660/ARM-DSP/arm_class_marks_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/ARM-DSP/arm_convolution_example/.vscode/README.md b/Examples/MAX32660/ARM-DSP/arm_convolution_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/ARM-DSP/arm_convolution_example/.vscode/README.md +++ b/Examples/MAX32660/ARM-DSP/arm_convolution_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/ARM-DSP/arm_convolution_example/.vscode/settings.json b/Examples/MAX32660/ARM-DSP/arm_convolution_example/.vscode/settings.json index eae4ae3c80c..8dd545f5e9c 100755 --- a/Examples/MAX32660/ARM-DSP/arm_convolution_example/.vscode/settings.json +++ b/Examples/MAX32660/ARM-DSP/arm_convolution_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/ARM-DSP/arm_convolution_example/Makefile b/Examples/MAX32660/ARM-DSP/arm_convolution_example/Makefile index bf8b51a36db..3d3bbedf05d 100644 --- a/Examples/MAX32660/ARM-DSP/arm_convolution_example/Makefile +++ b/Examples/MAX32660/ARM-DSP/arm_convolution_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/ARM-DSP/arm_convolution_example/project.mk b/Examples/MAX32660/ARM-DSP/arm_convolution_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32660/ARM-DSP/arm_convolution_example/project.mk +++ b/Examples/MAX32660/ARM-DSP/arm_convolution_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md b/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md +++ b/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json b/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json index eae4ae3c80c..8dd545f5e9c 100755 --- a/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json +++ b/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/Makefile b/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/Makefile index bf8b51a36db..3d3bbedf05d 100644 --- a/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/Makefile +++ b/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/project.mk b/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/project.mk +++ b/Examples/MAX32660/ARM-DSP/arm_dotproduct_example_f32/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/.vscode/README.md b/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/.vscode/README.md +++ b/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/.vscode/settings.json b/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/.vscode/settings.json index eae4ae3c80c..8dd545f5e9c 100755 --- a/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/.vscode/settings.json +++ b/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/Makefile b/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/Makefile index bf8b51a36db..3d3bbedf05d 100644 --- a/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/Makefile +++ b/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/project.mk b/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/project.mk +++ b/Examples/MAX32660/ARM-DSP/arm_fft_bin_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/ARM-DSP/arm_fir_example/.vscode/README.md b/Examples/MAX32660/ARM-DSP/arm_fir_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/ARM-DSP/arm_fir_example/.vscode/README.md +++ b/Examples/MAX32660/ARM-DSP/arm_fir_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/ARM-DSP/arm_fir_example/.vscode/settings.json b/Examples/MAX32660/ARM-DSP/arm_fir_example/.vscode/settings.json index eae4ae3c80c..8dd545f5e9c 100755 --- a/Examples/MAX32660/ARM-DSP/arm_fir_example/.vscode/settings.json +++ b/Examples/MAX32660/ARM-DSP/arm_fir_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/ARM-DSP/arm_fir_example/Makefile b/Examples/MAX32660/ARM-DSP/arm_fir_example/Makefile index bf8b51a36db..3d3bbedf05d 100644 --- a/Examples/MAX32660/ARM-DSP/arm_fir_example/Makefile +++ b/Examples/MAX32660/ARM-DSP/arm_fir_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/ARM-DSP/arm_fir_example/project.mk b/Examples/MAX32660/ARM-DSP/arm_fir_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32660/ARM-DSP/arm_fir_example/project.mk +++ b/Examples/MAX32660/ARM-DSP/arm_fir_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md b/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md +++ b/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json b/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json index eae4ae3c80c..8dd545f5e9c 100755 --- a/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json +++ b/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/Makefile b/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/Makefile index bf8b51a36db..3d3bbedf05d 100644 --- a/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/Makefile +++ b/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/project.mk b/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/project.mk +++ b/Examples/MAX32660/ARM-DSP/arm_graphic_equalizer_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/.vscode/README.md b/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/.vscode/README.md +++ b/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/.vscode/settings.json b/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/.vscode/settings.json index eae4ae3c80c..8dd545f5e9c 100755 --- a/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/.vscode/settings.json +++ b/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/Makefile b/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/Makefile index bf8b51a36db..3d3bbedf05d 100644 --- a/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/Makefile +++ b/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/project.mk b/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/project.mk +++ b/Examples/MAX32660/ARM-DSP/arm_linear_interp_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/ARM-DSP/arm_matrix_example/.vscode/README.md b/Examples/MAX32660/ARM-DSP/arm_matrix_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/ARM-DSP/arm_matrix_example/.vscode/README.md +++ b/Examples/MAX32660/ARM-DSP/arm_matrix_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/ARM-DSP/arm_matrix_example/.vscode/settings.json b/Examples/MAX32660/ARM-DSP/arm_matrix_example/.vscode/settings.json index eae4ae3c80c..8dd545f5e9c 100755 --- a/Examples/MAX32660/ARM-DSP/arm_matrix_example/.vscode/settings.json +++ b/Examples/MAX32660/ARM-DSP/arm_matrix_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/ARM-DSP/arm_matrix_example/Makefile b/Examples/MAX32660/ARM-DSP/arm_matrix_example/Makefile index bf8b51a36db..3d3bbedf05d 100644 --- a/Examples/MAX32660/ARM-DSP/arm_matrix_example/Makefile +++ b/Examples/MAX32660/ARM-DSP/arm_matrix_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/ARM-DSP/arm_matrix_example/project.mk b/Examples/MAX32660/ARM-DSP/arm_matrix_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32660/ARM-DSP/arm_matrix_example/project.mk +++ b/Examples/MAX32660/ARM-DSP/arm_matrix_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/.vscode/README.md b/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/.vscode/README.md +++ b/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/.vscode/settings.json b/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/.vscode/settings.json index eae4ae3c80c..8dd545f5e9c 100755 --- a/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/.vscode/settings.json +++ b/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/Makefile b/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/Makefile index bf8b51a36db..3d3bbedf05d 100644 --- a/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/Makefile +++ b/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/project.mk b/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/project.mk +++ b/Examples/MAX32660/ARM-DSP/arm_signal_converge_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/.vscode/README.md b/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/.vscode/README.md +++ b/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/.vscode/settings.json b/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/.vscode/settings.json index eae4ae3c80c..8dd545f5e9c 100755 --- a/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/.vscode/settings.json +++ b/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/Makefile b/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/Makefile index bf8b51a36db..3d3bbedf05d 100644 --- a/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/Makefile +++ b/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/project.mk b/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/project.mk +++ b/Examples/MAX32660/ARM-DSP/arm_sin_cos_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/ARM-DSP/arm_svm_example/.vscode/README.md b/Examples/MAX32660/ARM-DSP/arm_svm_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/ARM-DSP/arm_svm_example/.vscode/README.md +++ b/Examples/MAX32660/ARM-DSP/arm_svm_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/ARM-DSP/arm_svm_example/.vscode/settings.json b/Examples/MAX32660/ARM-DSP/arm_svm_example/.vscode/settings.json index eae4ae3c80c..8dd545f5e9c 100755 --- a/Examples/MAX32660/ARM-DSP/arm_svm_example/.vscode/settings.json +++ b/Examples/MAX32660/ARM-DSP/arm_svm_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/ARM-DSP/arm_svm_example/Makefile b/Examples/MAX32660/ARM-DSP/arm_svm_example/Makefile index bf8b51a36db..3d3bbedf05d 100644 --- a/Examples/MAX32660/ARM-DSP/arm_svm_example/Makefile +++ b/Examples/MAX32660/ARM-DSP/arm_svm_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/ARM-DSP/arm_svm_example/project.mk b/Examples/MAX32660/ARM-DSP/arm_svm_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32660/ARM-DSP/arm_svm_example/project.mk +++ b/Examples/MAX32660/ARM-DSP/arm_svm_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/ARM-DSP/arm_variance_example/.vscode/README.md b/Examples/MAX32660/ARM-DSP/arm_variance_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/ARM-DSP/arm_variance_example/.vscode/README.md +++ b/Examples/MAX32660/ARM-DSP/arm_variance_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/ARM-DSP/arm_variance_example/.vscode/settings.json b/Examples/MAX32660/ARM-DSP/arm_variance_example/.vscode/settings.json index eae4ae3c80c..8dd545f5e9c 100755 --- a/Examples/MAX32660/ARM-DSP/arm_variance_example/.vscode/settings.json +++ b/Examples/MAX32660/ARM-DSP/arm_variance_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/ARM-DSP/arm_variance_example/Makefile b/Examples/MAX32660/ARM-DSP/arm_variance_example/Makefile index bf8b51a36db..3d3bbedf05d 100644 --- a/Examples/MAX32660/ARM-DSP/arm_variance_example/Makefile +++ b/Examples/MAX32660/ARM-DSP/arm_variance_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/ARM-DSP/arm_variance_example/project.mk b/Examples/MAX32660/ARM-DSP/arm_variance_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32660/ARM-DSP/arm_variance_example/project.mk +++ b/Examples/MAX32660/ARM-DSP/arm_variance_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/Bootloader_Host/.vscode/README.md b/Examples/MAX32660/Bootloader_Host/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/Bootloader_Host/.vscode/README.md +++ b/Examples/MAX32660/Bootloader_Host/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/Bootloader_Host/.vscode/settings.json b/Examples/MAX32660/Bootloader_Host/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/Bootloader_Host/.vscode/settings.json +++ b/Examples/MAX32660/Bootloader_Host/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/Bootloader_Host/Makefile b/Examples/MAX32660/Bootloader_Host/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/Bootloader_Host/Makefile +++ b/Examples/MAX32660/Bootloader_Host/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/Bootloader_Host/bootloader/bootloader.c b/Examples/MAX32660/Bootloader_Host/bootloader/bootloader.c index 1859f4877e6..7d738f6547f 100644 --- a/Examples/MAX32660/Bootloader_Host/bootloader/bootloader.c +++ b/Examples/MAX32660/Bootloader_Host/bootloader/bootloader.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Bootloader_Host/bootloader/bootloader.h b/Examples/MAX32660/Bootloader_Host/bootloader/bootloader.h index 27567a1047d..e311c07cc7d 100644 --- a/Examples/MAX32660/Bootloader_Host/bootloader/bootloader.h +++ b/Examples/MAX32660/Bootloader_Host/bootloader/bootloader.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Bootloader_Host/bootloader/bootloader_cmd.h b/Examples/MAX32660/Bootloader_Host/bootloader/bootloader_cmd.h index 5681f281624..934b4f56fca 100644 --- a/Examples/MAX32660/Bootloader_Host/bootloader/bootloader_cmd.h +++ b/Examples/MAX32660/Bootloader_Host/bootloader/bootloader_cmd.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Bootloader_Host/include/platform.h b/Examples/MAX32660/Bootloader_Host/include/platform.h index 5a0ec9dbb6a..398caf4873b 100644 --- a/Examples/MAX32660/Bootloader_Host/include/platform.h +++ b/Examples/MAX32660/Bootloader_Host/include/platform.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Bootloader_Host/include/terminal.h b/Examples/MAX32660/Bootloader_Host/include/terminal.h index 3b35e170766..ffdbc32c28c 100644 --- a/Examples/MAX32660/Bootloader_Host/include/terminal.h +++ b/Examples/MAX32660/Bootloader_Host/include/terminal.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Bootloader_Host/project.mk b/Examples/MAX32660/Bootloader_Host/project.mk index fbdf6f49842..80ed9bd32e0 100644 --- a/Examples/MAX32660/Bootloader_Host/project.mk +++ b/Examples/MAX32660/Bootloader_Host/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/Bootloader_Host/src/bootloader_menu.c b/Examples/MAX32660/Bootloader_Host/src/bootloader_menu.c index 38862c41a36..9cf3ec6cf98 100644 --- a/Examples/MAX32660/Bootloader_Host/src/bootloader_menu.c +++ b/Examples/MAX32660/Bootloader_Host/src/bootloader_menu.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Bootloader_Host/src/main.c b/Examples/MAX32660/Bootloader_Host/src/main.c index 2ec221673c3..772df52b7f9 100644 --- a/Examples/MAX32660/Bootloader_Host/src/main.c +++ b/Examples/MAX32660/Bootloader_Host/src/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Bootloader_Host/src/platform_max32660.c b/Examples/MAX32660/Bootloader_Host/src/platform_max32660.c index da8b171ce79..2ed93b65684 100644 --- a/Examples/MAX32660/Bootloader_Host/src/platform_max32660.c +++ b/Examples/MAX32660/Bootloader_Host/src/platform_max32660.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Bootloader_Host/src/terminal.c b/Examples/MAX32660/Bootloader_Host/src/terminal.c index 164fa2c5de2..103d586c7d0 100644 --- a/Examples/MAX32660/Bootloader_Host/src/terminal.c +++ b/Examples/MAX32660/Bootloader_Host/src/terminal.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_fast_P0_13.c b/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_fast_P0_13.c index 5aefc9da2ea..f0164ac6b02 100644 --- a/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_fast_P0_13.c +++ b/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_fast_P0_13.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_slow_P0_13.c b/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_slow_P0_13.c index 71b513dd77a..11bf3626eab 100644 --- a/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_slow_P0_13.c +++ b/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_slow_P0_13.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_fast_P0_13.c b/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_fast_P0_13.c index 8e2d3a7d068..ebcfdd4064c 100644 --- a/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_fast_P0_13.c +++ b/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_fast_P0_13.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_slow_P0_13.c b/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_slow_P0_13.c index 363034a2f56..a063981a5e2 100644 --- a/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_slow_P0_13.c +++ b/Examples/MAX32660/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_slow_P0_13.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_22.c b/Examples/MAX32660/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_22.c index 85fe8990c22..b76a312e4c9 100644 --- a/Examples/MAX32660/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_22.c +++ b/Examples/MAX32660/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_22.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_23.c b/Examples/MAX32660/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_23.c index 5f45d875d19..7de7b4ece57 100644 --- a/Examples/MAX32660/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_23.c +++ b/Examples/MAX32660/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_23.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Bootloader_Host/test_images/test_images.h b/Examples/MAX32660/Bootloader_Host/test_images/test_images.h index 0932ca67cf6..f30f1d7bd05 100644 --- a/Examples/MAX32660/Bootloader_Host/test_images/test_images.h +++ b/Examples/MAX32660/Bootloader_Host/test_images/test_images.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Coremark/.vscode/README.md b/Examples/MAX32660/Coremark/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/Coremark/.vscode/README.md +++ b/Examples/MAX32660/Coremark/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/Coremark/.vscode/settings.json b/Examples/MAX32660/Coremark/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/Coremark/.vscode/settings.json +++ b/Examples/MAX32660/Coremark/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/Coremark/Makefile b/Examples/MAX32660/Coremark/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/Coremark/Makefile +++ b/Examples/MAX32660/Coremark/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/Coremark/project.mk b/Examples/MAX32660/Coremark/project.mk index 9ded8091069..a6efc624169 100644 --- a/Examples/MAX32660/Coremark/project.mk +++ b/Examples/MAX32660/Coremark/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/DMA/.vscode/README.md b/Examples/MAX32660/DMA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/DMA/.vscode/README.md +++ b/Examples/MAX32660/DMA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/DMA/.vscode/settings.json b/Examples/MAX32660/DMA/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/DMA/.vscode/settings.json +++ b/Examples/MAX32660/DMA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/DMA/Makefile b/Examples/MAX32660/DMA/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/DMA/Makefile +++ b/Examples/MAX32660/DMA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/DMA/main.c b/Examples/MAX32660/DMA/main.c index f96eeb02ea8..762cc854afd 100644 --- a/Examples/MAX32660/DMA/main.c +++ b/Examples/MAX32660/DMA/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -56,7 +55,7 @@ void memCpyComplete(void *dest) flag++; } -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); } diff --git a/Examples/MAX32660/DMA/project.mk b/Examples/MAX32660/DMA/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/DMA/project.mk +++ b/Examples/MAX32660/DMA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/EEPROM_Emulator/.vscode/README.md b/Examples/MAX32660/EEPROM_Emulator/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/EEPROM_Emulator/.vscode/README.md +++ b/Examples/MAX32660/EEPROM_Emulator/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/EEPROM_Emulator/.vscode/settings.json b/Examples/MAX32660/EEPROM_Emulator/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/EEPROM_Emulator/.vscode/settings.json +++ b/Examples/MAX32660/EEPROM_Emulator/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/EEPROM_Emulator/Makefile b/Examples/MAX32660/EEPROM_Emulator/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/EEPROM_Emulator/Makefile +++ b/Examples/MAX32660/EEPROM_Emulator/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/EEPROM_Emulator/include/cache.h b/Examples/MAX32660/EEPROM_Emulator/include/cache.h index 548399aa00e..0b7e40964d3 100644 --- a/Examples/MAX32660/EEPROM_Emulator/include/cache.h +++ b/Examples/MAX32660/EEPROM_Emulator/include/cache.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/EEPROM_Emulator/include/eeprom.h b/Examples/MAX32660/EEPROM_Emulator/include/eeprom.h index c9a04705e4a..69e09d6ccb5 100644 --- a/Examples/MAX32660/EEPROM_Emulator/include/eeprom.h +++ b/Examples/MAX32660/EEPROM_Emulator/include/eeprom.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/EEPROM_Emulator/main.c b/Examples/MAX32660/EEPROM_Emulator/main.c index ab6c60ca637..bea9f2513d6 100644 --- a/Examples/MAX32660/EEPROM_Emulator/main.c +++ b/Examples/MAX32660/EEPROM_Emulator/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/EEPROM_Emulator/project.mk b/Examples/MAX32660/EEPROM_Emulator/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32660/EEPROM_Emulator/project.mk +++ b/Examples/MAX32660/EEPROM_Emulator/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/EEPROM_Emulator/src/cache.c b/Examples/MAX32660/EEPROM_Emulator/src/cache.c index 17bc7b57c13..adf98b89839 100644 --- a/Examples/MAX32660/EEPROM_Emulator/src/cache.c +++ b/Examples/MAX32660/EEPROM_Emulator/src/cache.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/EEPROM_Emulator/src/eeprom.c b/Examples/MAX32660/EEPROM_Emulator/src/eeprom.c index 1325a7d4135..8b8d209ad46 100644 --- a/Examples/MAX32660/EEPROM_Emulator/src/eeprom.c +++ b/Examples/MAX32660/EEPROM_Emulator/src/eeprom.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Flash/.vscode/README.md b/Examples/MAX32660/Flash/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/Flash/.vscode/README.md +++ b/Examples/MAX32660/Flash/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/Flash/.vscode/settings.json b/Examples/MAX32660/Flash/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/Flash/.vscode/settings.json +++ b/Examples/MAX32660/Flash/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/Flash/Makefile b/Examples/MAX32660/Flash/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/Flash/Makefile +++ b/Examples/MAX32660/Flash/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/Flash/main.c b/Examples/MAX32660/Flash/main.c index 20427419ca1..ea4d39ab98f 100644 --- a/Examples/MAX32660/Flash/main.c +++ b/Examples/MAX32660/Flash/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -60,7 +59,7 @@ volatile uint32_t isr_flags; //****************************************************************************** int button_pressed = 0; -void button_handler() +void button_handler(void) { button_pressed = 1; } @@ -121,7 +120,7 @@ void setup_irqs(void) isr_cnt = 0; } -int write_test_pattern() +int write_test_pattern(void) { int err; // A flash address must be in the erased state before writing to it, because the @@ -163,7 +162,7 @@ int write_test_pattern() return err; } -int validate_test_pattern() +int validate_test_pattern(void) { int err = 0; @@ -183,7 +182,7 @@ int validate_test_pattern() return err; } -int erase_magic() +int erase_magic(void) { /* To modify a location in flash that has already been written to, diff --git a/Examples/MAX32660/Flash/project.mk b/Examples/MAX32660/Flash/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32660/Flash/project.mk +++ b/Examples/MAX32660/Flash/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/Flash_CLI/.vscode/README.md b/Examples/MAX32660/Flash_CLI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/Flash_CLI/.vscode/README.md +++ b/Examples/MAX32660/Flash_CLI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/Flash_CLI/.vscode/settings.json b/Examples/MAX32660/Flash_CLI/.vscode/settings.json index aa04cde8695..99195ff9737 100755 --- a/Examples/MAX32660/Flash_CLI/.vscode/settings.json +++ b/Examples/MAX32660/Flash_CLI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/Flash_CLI/FreeRTOSConfig.h b/Examples/MAX32660/Flash_CLI/FreeRTOSConfig.h index a97e31ef40e..5fa654d03dc 100644 --- a/Examples/MAX32660/Flash_CLI/FreeRTOSConfig.h +++ b/Examples/MAX32660/Flash_CLI/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Flash_CLI/Makefile b/Examples/MAX32660/Flash_CLI/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/Flash_CLI/Makefile +++ b/Examples/MAX32660/Flash_CLI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/Flash_CLI/definitions.h b/Examples/MAX32660/Flash_CLI/definitions.h index 4a74ed666f8..4692631de31 100644 --- a/Examples/MAX32660/Flash_CLI/definitions.h +++ b/Examples/MAX32660/Flash_CLI/definitions.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Flash_CLI/main.c b/Examples/MAX32660/Flash_CLI/main.c index bb3642caa7d..87cd596cada 100644 --- a/Examples/MAX32660/Flash_CLI/main.c +++ b/Examples/MAX32660/Flash_CLI/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Flash_CLI/project.mk b/Examples/MAX32660/Flash_CLI/project.mk index 63b0ee4a7bf..eab68f6617c 100644 --- a/Examples/MAX32660/Flash_CLI/project.mk +++ b/Examples/MAX32660/Flash_CLI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/FreeRTOSDemo/.vscode/README.md b/Examples/MAX32660/FreeRTOSDemo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/FreeRTOSDemo/.vscode/README.md +++ b/Examples/MAX32660/FreeRTOSDemo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/FreeRTOSDemo/.vscode/settings.json b/Examples/MAX32660/FreeRTOSDemo/.vscode/settings.json index aa04cde8695..99195ff9737 100755 --- a/Examples/MAX32660/FreeRTOSDemo/.vscode/settings.json +++ b/Examples/MAX32660/FreeRTOSDemo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/FreeRTOSDemo/FreeRTOSConfig.h b/Examples/MAX32660/FreeRTOSDemo/FreeRTOSConfig.h index 07b51315a5c..36fdc6ce5b8 100644 --- a/Examples/MAX32660/FreeRTOSDemo/FreeRTOSConfig.h +++ b/Examples/MAX32660/FreeRTOSDemo/FreeRTOSConfig.h @@ -5,10 +5,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/FreeRTOSDemo/Makefile b/Examples/MAX32660/FreeRTOSDemo/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/FreeRTOSDemo/Makefile +++ b/Examples/MAX32660/FreeRTOSDemo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/FreeRTOSDemo/freertos_tickless.c b/Examples/MAX32660/FreeRTOSDemo/freertos_tickless.c index 6481814a799..6f7a923af00 100644 --- a/Examples/MAX32660/FreeRTOSDemo/freertos_tickless.c +++ b/Examples/MAX32660/FreeRTOSDemo/freertos_tickless.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/FreeRTOSDemo/main.c b/Examples/MAX32660/FreeRTOSDemo/main.c index 78c4682a584..e90356d725c 100644 --- a/Examples/MAX32660/FreeRTOSDemo/main.c +++ b/Examples/MAX32660/FreeRTOSDemo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/FreeRTOSDemo/project.mk b/Examples/MAX32660/FreeRTOSDemo/project.mk index 63b0ee4a7bf..eab68f6617c 100644 --- a/Examples/MAX32660/FreeRTOSDemo/project.mk +++ b/Examples/MAX32660/FreeRTOSDemo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/GPIO/.vscode/README.md b/Examples/MAX32660/GPIO/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/GPIO/.vscode/README.md +++ b/Examples/MAX32660/GPIO/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/GPIO/.vscode/settings.json b/Examples/MAX32660/GPIO/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/GPIO/.vscode/settings.json +++ b/Examples/MAX32660/GPIO/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/GPIO/Makefile b/Examples/MAX32660/GPIO/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/GPIO/Makefile +++ b/Examples/MAX32660/GPIO/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/GPIO/main.c b/Examples/MAX32660/GPIO/main.c index 89eb0d3dbf5..28d317a6acd 100644 --- a/Examples/MAX32660/GPIO/main.c +++ b/Examples/MAX32660/GPIO/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/GPIO/project.mk b/Examples/MAX32660/GPIO/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/GPIO/project.mk +++ b/Examples/MAX32660/GPIO/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/Hello_World/.vscode/README.md b/Examples/MAX32660/Hello_World/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/Hello_World/.vscode/README.md +++ b/Examples/MAX32660/Hello_World/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/Hello_World/.vscode/settings.json b/Examples/MAX32660/Hello_World/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/Hello_World/.vscode/settings.json +++ b/Examples/MAX32660/Hello_World/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/Hello_World/Makefile b/Examples/MAX32660/Hello_World/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/Hello_World/Makefile +++ b/Examples/MAX32660/Hello_World/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/Hello_World/main.c b/Examples/MAX32660/Hello_World/main.c index bdf90885c53..5a9dfb0ccd9 100644 --- a/Examples/MAX32660/Hello_World/main.c +++ b/Examples/MAX32660/Hello_World/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Hello_World/project.mk b/Examples/MAX32660/Hello_World/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/Hello_World/project.mk +++ b/Examples/MAX32660/Hello_World/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/Hello_World_Cpp/.vscode/README.md b/Examples/MAX32660/Hello_World_Cpp/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/Hello_World_Cpp/.vscode/README.md +++ b/Examples/MAX32660/Hello_World_Cpp/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/Hello_World_Cpp/.vscode/settings.json b/Examples/MAX32660/Hello_World_Cpp/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/Hello_World_Cpp/.vscode/settings.json +++ b/Examples/MAX32660/Hello_World_Cpp/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/Hello_World_Cpp/Makefile b/Examples/MAX32660/Hello_World_Cpp/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/Hello_World_Cpp/Makefile +++ b/Examples/MAX32660/Hello_World_Cpp/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/Hello_World_Cpp/main.cpp b/Examples/MAX32660/Hello_World_Cpp/main.cpp index daade0e995d..fdf8363cde1 100644 --- a/Examples/MAX32660/Hello_World_Cpp/main.cpp +++ b/Examples/MAX32660/Hello_World_Cpp/main.cpp @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -66,7 +65,7 @@ class LED { int blink_count; }; -int main() +int main(void) { LED led = LED(0); diff --git a/Examples/MAX32660/Hello_World_Cpp/project.mk b/Examples/MAX32660/Hello_World_Cpp/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX32660/Hello_World_Cpp/project.mk +++ b/Examples/MAX32660/Hello_World_Cpp/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/I2C/.vscode/README.md b/Examples/MAX32660/I2C/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/I2C/.vscode/README.md +++ b/Examples/MAX32660/I2C/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/I2C/.vscode/settings.json b/Examples/MAX32660/I2C/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/I2C/.vscode/settings.json +++ b/Examples/MAX32660/I2C/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/I2C/Makefile b/Examples/MAX32660/I2C/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/I2C/Makefile +++ b/Examples/MAX32660/I2C/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/I2C/main.c b/Examples/MAX32660/I2C/main.c index 860b7dd7755..85fec264dcd 100644 --- a/Examples/MAX32660/I2C/main.c +++ b/Examples/MAX32660/I2C/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -189,7 +188,7 @@ int verifyData(void) } // ***************************************************************************** -int main() +int main(void) { printf("\n******** I2C Master-Slave Transaction Demo *********\n"); printf("\nThis example uses one I2C peripheral as a master to\n"); diff --git a/Examples/MAX32660/I2C/project.mk b/Examples/MAX32660/I2C/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/I2C/project.mk +++ b/Examples/MAX32660/I2C/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/I2C_MNGR/.vscode/README.md b/Examples/MAX32660/I2C_MNGR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/I2C_MNGR/.vscode/README.md +++ b/Examples/MAX32660/I2C_MNGR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/I2C_MNGR/.vscode/settings.json b/Examples/MAX32660/I2C_MNGR/.vscode/settings.json index 477a8e3e159..d3b52919769 100755 --- a/Examples/MAX32660/I2C_MNGR/.vscode/settings.json +++ b/Examples/MAX32660/I2C_MNGR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/I2C_MNGR/FreeRTOSConfig.h b/Examples/MAX32660/I2C_MNGR/FreeRTOSConfig.h index 45f4af9c2da..7eeb3f2af95 100644 --- a/Examples/MAX32660/I2C_MNGR/FreeRTOSConfig.h +++ b/Examples/MAX32660/I2C_MNGR/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/I2C_MNGR/Makefile b/Examples/MAX32660/I2C_MNGR/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/I2C_MNGR/Makefile +++ b/Examples/MAX32660/I2C_MNGR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/I2C_MNGR/i2c_mngr/i2c_mngr.c b/Examples/MAX32660/I2C_MNGR/i2c_mngr/i2c_mngr.c index be717e17a27..811e6a3b4a4 100644 --- a/Examples/MAX32660/I2C_MNGR/i2c_mngr/i2c_mngr.c +++ b/Examples/MAX32660/I2C_MNGR/i2c_mngr/i2c_mngr.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +38,7 @@ typedef struct { static i2c_txn_mngr_t s_mngr; /******************************************************************************/ -int I2C_MNGR_Init() +int I2C_MNGR_Init(void) { s_mngr.inst0 = MXC_I2C0; s_mngr.inst1 = MXC_I2C1; diff --git a/Examples/MAX32660/I2C_MNGR/i2c_mngr/i2c_mngr.h b/Examples/MAX32660/I2C_MNGR/i2c_mngr/i2c_mngr.h index 0a4725d8460..ac42cc923d1 100644 --- a/Examples/MAX32660/I2C_MNGR/i2c_mngr/i2c_mngr.h +++ b/Examples/MAX32660/I2C_MNGR/i2c_mngr/i2c_mngr.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +54,7 @@ typedef struct { * @brief Initializes I2C transaction manager * @return #E_NO_ERROR if succeeded, error code otherwise */ -int I2C_MNGR_Init(); +int I2C_MNGR_Init(void); /* * @brief Executes I2C transaction diff --git a/Examples/MAX32660/I2C_MNGR/main.c b/Examples/MAX32660/I2C_MNGR/main.c index fe4853d4c5f..1f3e233eea5 100644 --- a/Examples/MAX32660/I2C_MNGR/main.c +++ b/Examples/MAX32660/I2C_MNGR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/I2C_MNGR/project.mk b/Examples/MAX32660/I2C_MNGR/project.mk index 90e76c6363a..da687b6e847 100644 --- a/Examples/MAX32660/I2C_MNGR/project.mk +++ b/Examples/MAX32660/I2C_MNGR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/I2C_SCAN/.vscode/README.md b/Examples/MAX32660/I2C_SCAN/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/I2C_SCAN/.vscode/README.md +++ b/Examples/MAX32660/I2C_SCAN/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/I2C_SCAN/.vscode/settings.json b/Examples/MAX32660/I2C_SCAN/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/I2C_SCAN/.vscode/settings.json +++ b/Examples/MAX32660/I2C_SCAN/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/I2C_SCAN/Makefile b/Examples/MAX32660/I2C_SCAN/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/I2C_SCAN/Makefile +++ b/Examples/MAX32660/I2C_SCAN/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/I2C_SCAN/main.c b/Examples/MAX32660/I2C_SCAN/main.c index 3b1b052d039..5a49fe7d5a1 100644 --- a/Examples/MAX32660/I2C_SCAN/main.c +++ b/Examples/MAX32660/I2C_SCAN/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -40,7 +39,7 @@ #define I2C_MASTER MXC_I2C0 // SCL P0_8; SDA P0_9 #define I2C_FREQ 100000 // 100kHZ -int main() +int main(void) { uint8_t counter = 0; diff --git a/Examples/MAX32660/I2C_SCAN/project.mk b/Examples/MAX32660/I2C_SCAN/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/I2C_SCAN/project.mk +++ b/Examples/MAX32660/I2C_SCAN/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/I2C_Sensor/.vscode/README.md b/Examples/MAX32660/I2C_Sensor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/I2C_Sensor/.vscode/README.md +++ b/Examples/MAX32660/I2C_Sensor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/I2C_Sensor/.vscode/settings.json b/Examples/MAX32660/I2C_Sensor/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/I2C_Sensor/.vscode/settings.json +++ b/Examples/MAX32660/I2C_Sensor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/I2C_Sensor/Makefile b/Examples/MAX32660/I2C_Sensor/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/I2C_Sensor/Makefile +++ b/Examples/MAX32660/I2C_Sensor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/I2C_Sensor/main.c b/Examples/MAX32660/I2C_Sensor/main.c index 59cef950d03..51131833f6a 100644 --- a/Examples/MAX32660/I2C_Sensor/main.c +++ b/Examples/MAX32660/I2C_Sensor/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/I2C_Sensor/project.mk b/Examples/MAX32660/I2C_Sensor/project.mk index 6a77af63372..fa0464ac6ba 100644 --- a/Examples/MAX32660/I2C_Sensor/project.mk +++ b/Examples/MAX32660/I2C_Sensor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/I2S/.vscode/README.md b/Examples/MAX32660/I2S/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/I2S/.vscode/README.md +++ b/Examples/MAX32660/I2S/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/I2S/.vscode/settings.json b/Examples/MAX32660/I2S/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/I2S/.vscode/settings.json +++ b/Examples/MAX32660/I2S/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/I2S/Makefile b/Examples/MAX32660/I2S/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/I2S/Makefile +++ b/Examples/MAX32660/I2S/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/I2S/main.c b/Examples/MAX32660/I2S/main.c index f7474f0b823..8c84eb1d1b0 100644 --- a/Examples/MAX32660/I2S/main.c +++ b/Examples/MAX32660/I2S/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -65,7 +64,7 @@ void dma_ctz_cb(int ch, int err) } /*****************************************************************/ -int main() +int main(void) { int err; printf("\nI2S Transmission Example\n\n"); diff --git a/Examples/MAX32660/I2S/project.mk b/Examples/MAX32660/I2S/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/I2S/project.mk +++ b/Examples/MAX32660/I2S/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/ICC/.vscode/README.md b/Examples/MAX32660/ICC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/ICC/.vscode/README.md +++ b/Examples/MAX32660/ICC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/ICC/.vscode/settings.json b/Examples/MAX32660/ICC/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/ICC/.vscode/settings.json +++ b/Examples/MAX32660/ICC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/ICC/Makefile b/Examples/MAX32660/ICC/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/ICC/Makefile +++ b/Examples/MAX32660/ICC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/ICC/main.c b/Examples/MAX32660/ICC/main.c index 319f542761b..d6160e798a9 100644 --- a/Examples/MAX32660/ICC/main.c +++ b/Examples/MAX32660/ICC/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/ICC/project.mk b/Examples/MAX32660/ICC/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/ICC/project.mk +++ b/Examples/MAX32660/ICC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/Info_Block_Usecase/.vscode/README.md b/Examples/MAX32660/Info_Block_Usecase/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/Info_Block_Usecase/.vscode/README.md +++ b/Examples/MAX32660/Info_Block_Usecase/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/Info_Block_Usecase/.vscode/settings.json b/Examples/MAX32660/Info_Block_Usecase/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/Info_Block_Usecase/.vscode/settings.json +++ b/Examples/MAX32660/Info_Block_Usecase/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/Info_Block_Usecase/Makefile b/Examples/MAX32660/Info_Block_Usecase/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/Info_Block_Usecase/Makefile +++ b/Examples/MAX32660/Info_Block_Usecase/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/Info_Block_Usecase/main.c b/Examples/MAX32660/Info_Block_Usecase/main.c index d823dca9893..dc21f3c556d 100644 --- a/Examples/MAX32660/Info_Block_Usecase/main.c +++ b/Examples/MAX32660/Info_Block_Usecase/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Info_Block_Usecase/project.mk b/Examples/MAX32660/Info_Block_Usecase/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/Info_Block_Usecase/project.mk +++ b/Examples/MAX32660/Info_Block_Usecase/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/LP/.vscode/README.md b/Examples/MAX32660/LP/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/LP/.vscode/README.md +++ b/Examples/MAX32660/LP/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/LP/.vscode/settings.json b/Examples/MAX32660/LP/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/LP/.vscode/settings.json +++ b/Examples/MAX32660/LP/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/LP/Makefile b/Examples/MAX32660/LP/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/LP/Makefile +++ b/Examples/MAX32660/LP/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/LP/lp.ld b/Examples/MAX32660/LP/lp.ld index 49e67c7167e..057ba500015 100644 --- a/Examples/MAX32660/LP/lp.ld +++ b/Examples/MAX32660/LP/lp.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/LP/main.c b/Examples/MAX32660/LP/main.c index a927befa8aa..8fe42a435e9 100644 --- a/Examples/MAX32660/LP/main.c +++ b/Examples/MAX32660/LP/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/LP/project.mk b/Examples/MAX32660/LP/project.mk index 705be27c7aa..355c3e4e6aa 100644 --- a/Examples/MAX32660/LP/project.mk +++ b/Examples/MAX32660/LP/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/Library_Generate/.vscode/README.md b/Examples/MAX32660/Library_Generate/.vscode/README.md index e2e9a1a6522..a740741c3ab 100644 --- a/Examples/MAX32660/Library_Generate/.vscode/README.md +++ b/Examples/MAX32660/Library_Generate/.vscode/README.md @@ -7,11 +7,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) * If it's not in the README, check the UG. * If it's not in the UG, open a ticket! -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -38,7 +38,7 @@ The steps below are also available in video form in "Understanding Artificial In 2. Run the installer executable, and ensure that "Visual Studio Code Support" is enabled for your installation. - ![Selected Components](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/installer_components.JPG) + ![Selected Components](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/installer_components.JPG) 3. Finish the MSDK installation, taking note of where the MSDK was installed. @@ -54,7 +54,7 @@ The steps below are also available in video form in "Understanding Artificial In 9. Type "open settings json" and select the "Preferences: Open Settings (JSON)" option (_not_ the "Preferences: Open _Default_ Settings (JSON)"). This will open your user settings.json file in VS Code's editor. - ![Open Settings JSON Command](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/open_settings_json.jpg) + ![Open Settings JSON Command](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/open_settings_json.jpg) 10. Add the entries below into your user settings.json file. @@ -82,7 +82,7 @@ This section covers basic usage of the VSCode-Maxim project files. For document Visual Studio Code is built around a "working directory" paradigm. The editor is always rooted in a working directory, and the main mechanism for changing that directory is `File -> Open Folder...`. -![File -> Open Folder](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/file_openfolder.JPG) +![File -> Open Folder](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/file_openfolder.JPG) As a result, you'll notice that there is no "New Project" mechanism. A "project" in VS Code is simply a folder. It will look inside of the opened folder for a `.vscode` _sub_-folder to load project-specific settings from. @@ -90,11 +90,11 @@ A project that is configured for VS Code will have, at minimum, a .vscode sub-fo Ex: -![Example Directory Contents](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/opening_projects_2.jpg) +![Example Directory Contents](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/opening_projects_2.jpg) ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MSDK installation. @@ -102,7 +102,7 @@ Additionally, empty project templates and a drag-and-drop folder for "injecting" Once a project is opened 4 available build tasks will become available via `Terminal > Run Build task...` or the shortcut `Ctrl+Shift+B`. These tasks are configured by the `.vscode/task.json` file. -![Build Tasks Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/buildtasks.JPG) +![Build Tasks Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/buildtasks.JPG) #### Build @@ -138,7 +138,7 @@ Once a project is opened 4 available build tasks will become available via `Term ### Debugging -![Debug Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger.JPG) +![Debug Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger.JPG) Debugging is enabled by Visual Studio Code's integrated debugger. Launch configurations can be found in the `.vscode/launch.json` file. @@ -162,11 +162,11 @@ In general, the MAX-series microcontrollers have the following debugger limitati 3. Launch the debugger with `Run > Start Debugging`, with the shortcut `F5`, or via the `Run and Debug` window (Ctrl + Shift + D) and the green "launch" arrow. - ![Debug Tab](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_window.JPG) + ![Debug Tab](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_window.JPG) 4. The debugger will launch a GDB client & OpenOCD server, reset the microcontroller, and should break on entry into `main`. - ![Debugger Break on Main](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_breakmain.JPG) + ![Debugger Break on Main](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_breakmain.JPG) #### Using the Debugger @@ -174,13 +174,13 @@ In general, the MAX-series microcontrollers have the following debugger limitati The main interface for the debugger is the debugger control bar: -![Debugger Control Bar Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_bar.JPG) +![Debugger Control Bar Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_bar.JPG) `Continue | Step Over | Step Into | Step Out | Restart | Stop` Breakpoints can be set by clicking in the space next to the line number in a source code file. A red dot indicates a line to break on. Breakpoints can be removed by clicking on them again. Ex: -![Breakpoint](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/breakpoint.JPG) +![Breakpoint](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/breakpoint.JPG) ## Project Configuration @@ -190,7 +190,7 @@ Breakpoints can be set by clicking in the space next to the line number in a sou **When a change is made to this file, VS Code should be reloaded with CTRL+SHIFT+P -> Reload Window (or alternatively restarted completely) to force a re-parse.** -![Reload Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/reload_window.JPG) +![Reload Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/reload_window.JPG) The default project configuration should work for most use cases as long as `"target"` and `"board"` are set correctly. @@ -227,7 +227,7 @@ The following configuration options are available: * ... can be found in the `Libraries/Boards` folder of the MSDK * For example, the supported options for the MAX78000 are `"EvKit_V1"`, `"FTHR_RevA"`, and `"MAXREFDES178"`. - ![MAX78000 Boards](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/78000_boards.JPG) + ![MAX78000 Boards](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/78000_boards.JPG) ### Advanced Config Options @@ -353,7 +353,7 @@ A project's build system is managed by two files found in the project's root dir * `Makefile` * `project.mk` -![Files are located in the root directory](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) +![Files are located in the root directory](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) When the command... @@ -416,7 +416,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the @@ -540,7 +540,7 @@ If you want to start from scratch, take this option. ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/Library_Generate/Makefile b/Examples/MAX32660/Library_Generate/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/Library_Generate/Makefile +++ b/Examples/MAX32660/Library_Generate/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/Library_Generate/gpiolib.c b/Examples/MAX32660/Library_Generate/gpiolib.c index 5c8845edc78..252f6df4c44 100644 --- a/Examples/MAX32660/Library_Generate/gpiolib.c +++ b/Examples/MAX32660/Library_Generate/gpiolib.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Library_Generate/gpiolib.h b/Examples/MAX32660/Library_Generate/gpiolib.h index e8ab3cf0eb9..dad03bb1a6e 100644 --- a/Examples/MAX32660/Library_Generate/gpiolib.h +++ b/Examples/MAX32660/Library_Generate/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Library_Generate/project.mk b/Examples/MAX32660/Library_Generate/project.mk index 01dcd9fbb2a..b5729be6ef0 100644 --- a/Examples/MAX32660/Library_Generate/project.mk +++ b/Examples/MAX32660/Library_Generate/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/Library_Use/.vscode/README.md b/Examples/MAX32660/Library_Use/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/Library_Use/.vscode/README.md +++ b/Examples/MAX32660/Library_Use/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/Library_Use/.vscode/settings.json b/Examples/MAX32660/Library_Use/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/Library_Use/.vscode/settings.json +++ b/Examples/MAX32660/Library_Use/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/Library_Use/Makefile b/Examples/MAX32660/Library_Use/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/Library_Use/Makefile +++ b/Examples/MAX32660/Library_Use/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/Library_Use/lib/include/gpiolib.h b/Examples/MAX32660/Library_Use/lib/include/gpiolib.h index 261ad918264..92106dea44f 100644 --- a/Examples/MAX32660/Library_Use/lib/include/gpiolib.h +++ b/Examples/MAX32660/Library_Use/lib/include/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Library_Use/main.c b/Examples/MAX32660/Library_Use/main.c index a9c20ec444f..c686476d185 100644 --- a/Examples/MAX32660/Library_Use/main.c +++ b/Examples/MAX32660/Library_Use/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Library_Use/project.mk b/Examples/MAX32660/Library_Use/project.mk index 35cf5faf80b..b52c9527689 100644 --- a/Examples/MAX32660/Library_Use/project.mk +++ b/Examples/MAX32660/Library_Use/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/RTC/.vscode/README.md b/Examples/MAX32660/RTC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/RTC/.vscode/README.md +++ b/Examples/MAX32660/RTC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/RTC/.vscode/settings.json b/Examples/MAX32660/RTC/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/RTC/.vscode/settings.json +++ b/Examples/MAX32660/RTC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/RTC/Makefile b/Examples/MAX32660/RTC/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/RTC/Makefile +++ b/Examples/MAX32660/RTC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/RTC/main.c b/Examples/MAX32660/RTC/main.c index 94c4f78d9f3..d26ec80f9e0 100644 --- a/Examples/MAX32660/RTC/main.c +++ b/Examples/MAX32660/RTC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -101,12 +100,12 @@ void RTC_IRQHandler(void) } volatile int buttonPressed = 0; -void buttonHandler() +void buttonHandler(void) { buttonPressed = 1; } -void printTime() +void printTime(void) { int day, hr, min, sec, err; uint32_t rtc_readout; diff --git a/Examples/MAX32660/RTC/project.mk b/Examples/MAX32660/RTC/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/RTC/project.mk +++ b/Examples/MAX32660/RTC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/RTC_Backup/.vscode/README.md b/Examples/MAX32660/RTC_Backup/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/RTC_Backup/.vscode/README.md +++ b/Examples/MAX32660/RTC_Backup/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/RTC_Backup/.vscode/settings.json b/Examples/MAX32660/RTC_Backup/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/RTC_Backup/.vscode/settings.json +++ b/Examples/MAX32660/RTC_Backup/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/RTC_Backup/Makefile b/Examples/MAX32660/RTC_Backup/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/RTC_Backup/Makefile +++ b/Examples/MAX32660/RTC_Backup/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/RTC_Backup/main.c b/Examples/MAX32660/RTC_Backup/main.c index 00168074b0d..14b1c8574da 100644 --- a/Examples/MAX32660/RTC_Backup/main.c +++ b/Examples/MAX32660/RTC_Backup/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -58,7 +57,7 @@ /***** Functions *****/ // ***************************************************************************** -void rescheduleAlarm() +void rescheduleAlarm(void) { uint32_t time; int flags = MXC_RTC_GetFlags(); @@ -84,7 +83,7 @@ void rescheduleAlarm() } // ***************************************************************************** -void printTime() +void printTime(void) { int day, hr, min; uint32_t sec; @@ -105,7 +104,7 @@ void printTime() } // ***************************************************************************** -int configureRTC() +int configureRTC(void) { printf("\n\n***************** RTC Wake from Backup Example *****************\n\n"); printf("The time-of-day alarm is set to wake the device every %d seconds.\n", TIME_OF_DAY_SEC); diff --git a/Examples/MAX32660/RTC_Backup/project.mk b/Examples/MAX32660/RTC_Backup/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/RTC_Backup/project.mk +++ b/Examples/MAX32660/RTC_Backup/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/SPI/.vscode/README.md b/Examples/MAX32660/SPI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/SPI/.vscode/README.md +++ b/Examples/MAX32660/SPI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/SPI/.vscode/settings.json b/Examples/MAX32660/SPI/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/SPI/.vscode/settings.json +++ b/Examples/MAX32660/SPI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/SPI/Makefile b/Examples/MAX32660/SPI/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/SPI/Makefile +++ b/Examples/MAX32660/SPI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/SPI/main.c b/Examples/MAX32660/SPI/main.c index 8fdfc99ef83..f13740e04ab 100644 --- a/Examples/MAX32660/SPI/main.c +++ b/Examples/MAX32660/SPI/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/SPI/project.mk b/Examples/MAX32660/SPI/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/SPI/project.mk +++ b/Examples/MAX32660/SPI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/SPIMSS/.vscode/README.md b/Examples/MAX32660/SPIMSS/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/SPIMSS/.vscode/README.md +++ b/Examples/MAX32660/SPIMSS/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/SPIMSS/.vscode/settings.json b/Examples/MAX32660/SPIMSS/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/SPIMSS/.vscode/settings.json +++ b/Examples/MAX32660/SPIMSS/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/SPIMSS/Makefile b/Examples/MAX32660/SPIMSS/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/SPIMSS/Makefile +++ b/Examples/MAX32660/SPIMSS/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/SPIMSS/main.c b/Examples/MAX32660/SPIMSS/main.c index e21f3b088e3..8142087f2ac 100644 --- a/Examples/MAX32660/SPIMSS/main.c +++ b/Examples/MAX32660/SPIMSS/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/SPIMSS/project.mk b/Examples/MAX32660/SPIMSS/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/SPIMSS/project.mk +++ b/Examples/MAX32660/SPIMSS/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/SPIMSS_DMA/.vscode/README.md b/Examples/MAX32660/SPIMSS_DMA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/SPIMSS_DMA/.vscode/README.md +++ b/Examples/MAX32660/SPIMSS_DMA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/SPIMSS_DMA/.vscode/settings.json b/Examples/MAX32660/SPIMSS_DMA/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/SPIMSS_DMA/.vscode/settings.json +++ b/Examples/MAX32660/SPIMSS_DMA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/SPIMSS_DMA/Makefile b/Examples/MAX32660/SPIMSS_DMA/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/SPIMSS_DMA/Makefile +++ b/Examples/MAX32660/SPIMSS_DMA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/SPIMSS_DMA/main.c b/Examples/MAX32660/SPIMSS_DMA/main.c index 8324c22e181..3e657d437be 100644 --- a/Examples/MAX32660/SPIMSS_DMA/main.c +++ b/Examples/MAX32660/SPIMSS_DMA/main.c @@ -100,7 +100,7 @@ void spimss_callback(mxc_spimss_req_t *req, int error_code) } } -int main() +int main(void) { int i = 0; int ret_val = 0; diff --git a/Examples/MAX32660/SPIMSS_DMA/project.mk b/Examples/MAX32660/SPIMSS_DMA/project.mk index e75a20a8fb3..a814d9e5ebb 100644 --- a/Examples/MAX32660/SPIMSS_DMA/project.mk +++ b/Examples/MAX32660/SPIMSS_DMA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/SPI_MasterSlave/.vscode/README.md b/Examples/MAX32660/SPI_MasterSlave/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/SPI_MasterSlave/.vscode/README.md +++ b/Examples/MAX32660/SPI_MasterSlave/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/SPI_MasterSlave/.vscode/settings.json b/Examples/MAX32660/SPI_MasterSlave/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/SPI_MasterSlave/.vscode/settings.json +++ b/Examples/MAX32660/SPI_MasterSlave/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/SPI_MasterSlave/Makefile b/Examples/MAX32660/SPI_MasterSlave/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/SPI_MasterSlave/Makefile +++ b/Examples/MAX32660/SPI_MasterSlave/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/SPI_MasterSlave/main.c b/Examples/MAX32660/SPI_MasterSlave/main.c index abb595a9324..10d1395436a 100644 --- a/Examples/MAX32660/SPI_MasterSlave/main.c +++ b/Examples/MAX32660/SPI_MasterSlave/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/SPI_MasterSlave/project.mk b/Examples/MAX32660/SPI_MasterSlave/project.mk index a298e084edb..e6a4e75d314 100644 --- a/Examples/MAX32660/SPI_MasterSlave/project.mk +++ b/Examples/MAX32660/SPI_MasterSlave/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/SecureROM_BL_Host/.vscode/README.md b/Examples/MAX32660/SecureROM_BL_Host/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/SecureROM_BL_Host/.vscode/README.md +++ b/Examples/MAX32660/SecureROM_BL_Host/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/SecureROM_BL_Host/.vscode/settings.json b/Examples/MAX32660/SecureROM_BL_Host/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/SecureROM_BL_Host/.vscode/settings.json +++ b/Examples/MAX32660/SecureROM_BL_Host/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/SecureROM_BL_Host/Makefile b/Examples/MAX32660/SecureROM_BL_Host/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/SecureROM_BL_Host/Makefile +++ b/Examples/MAX32660/SecureROM_BL_Host/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/SecureROM_BL_Host/bootloader/bootloader.c b/Examples/MAX32660/SecureROM_BL_Host/bootloader/bootloader.c index 6cdb6e533ce..f6a099f3c76 100644 --- a/Examples/MAX32660/SecureROM_BL_Host/bootloader/bootloader.c +++ b/Examples/MAX32660/SecureROM_BL_Host/bootloader/bootloader.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/SecureROM_BL_Host/bootloader/bootloader.h b/Examples/MAX32660/SecureROM_BL_Host/bootloader/bootloader.h index 851425357ed..db4c6276a32 100644 --- a/Examples/MAX32660/SecureROM_BL_Host/bootloader/bootloader.h +++ b/Examples/MAX32660/SecureROM_BL_Host/bootloader/bootloader.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/SecureROM_BL_Host/include/platform.h b/Examples/MAX32660/SecureROM_BL_Host/include/platform.h index c773784964e..e958fb2222d 100644 --- a/Examples/MAX32660/SecureROM_BL_Host/include/platform.h +++ b/Examples/MAX32660/SecureROM_BL_Host/include/platform.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/SecureROM_BL_Host/include/terminal.h b/Examples/MAX32660/SecureROM_BL_Host/include/terminal.h index 670531f2894..b664ee69ecb 100644 --- a/Examples/MAX32660/SecureROM_BL_Host/include/terminal.h +++ b/Examples/MAX32660/SecureROM_BL_Host/include/terminal.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/SecureROM_BL_Host/project.mk b/Examples/MAX32660/SecureROM_BL_Host/project.mk index 626673adfca..8688615b1ec 100644 --- a/Examples/MAX32660/SecureROM_BL_Host/project.mk +++ b/Examples/MAX32660/SecureROM_BL_Host/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/SecureROM_BL_Host/script/scp_to_c_array.py b/Examples/MAX32660/SecureROM_BL_Host/script/scp_to_c_array.py index 29edff1132f..6fca42b349e 100644 --- a/Examples/MAX32660/SecureROM_BL_Host/script/scp_to_c_array.py +++ b/Examples/MAX32660/SecureROM_BL_Host/script/scp_to_c_array.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -22,10 +21,9 @@ copy_right='''/****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/SecureROM_BL_Host/src/main.c b/Examples/MAX32660/SecureROM_BL_Host/src/main.c index 0701b153614..e6b7a3003eb 100644 --- a/Examples/MAX32660/SecureROM_BL_Host/src/main.c +++ b/Examples/MAX32660/SecureROM_BL_Host/src/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/SecureROM_BL_Host/src/platform_max32660.c b/Examples/MAX32660/SecureROM_BL_Host/src/platform_max32660.c index 5705b966347..7e9d5ff7d2d 100644 --- a/Examples/MAX32660/SecureROM_BL_Host/src/platform_max32660.c +++ b/Examples/MAX32660/SecureROM_BL_Host/src/platform_max32660.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/SecureROM_BL_Host/src/terminal.c b/Examples/MAX32660/SecureROM_BL_Host/src/terminal.c index e9ee43733bd..905fb686cd1 100644 --- a/Examples/MAX32660/SecureROM_BL_Host/src/terminal.c +++ b/Examples/MAX32660/SecureROM_BL_Host/src/terminal.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_6.c b/Examples/MAX32660/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_6.c index 8c8dcd5503d..8813807a91c 100644 --- a/Examples/MAX32660/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_6.c +++ b/Examples/MAX32660/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_6.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_7.c b/Examples/MAX32660/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_7.c index 6efa607624b..34bab5e2b8b 100644 --- a/Examples/MAX32660/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_7.c +++ b/Examples/MAX32660/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_7.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/SecureROM_BL_Host/test_images/MAX32651-EVKIT/blinkled_P2_25.c b/Examples/MAX32660/SecureROM_BL_Host/test_images/MAX32651-EVKIT/blinkled_P2_25.c index 7b29cae76e5..db8f0dee7b8 100644 --- a/Examples/MAX32660/SecureROM_BL_Host/test_images/MAX32651-EVKIT/blinkled_P2_25.c +++ b/Examples/MAX32660/SecureROM_BL_Host/test_images/MAX32651-EVKIT/blinkled_P2_25.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/SecureROM_BL_Host/test_images/test_images.h b/Examples/MAX32660/SecureROM_BL_Host/test_images/test_images.h index 641e3dfd1a5..aa8e86c6aeb 100644 --- a/Examples/MAX32660/SecureROM_BL_Host/test_images/test_images.h +++ b/Examples/MAX32660/SecureROM_BL_Host/test_images/test_images.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/TMR/.vscode/README.md b/Examples/MAX32660/TMR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/TMR/.vscode/README.md +++ b/Examples/MAX32660/TMR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/TMR/.vscode/settings.json b/Examples/MAX32660/TMR/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/TMR/.vscode/settings.json +++ b/Examples/MAX32660/TMR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/TMR/Makefile b/Examples/MAX32660/TMR/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/TMR/Makefile +++ b/Examples/MAX32660/TMR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/TMR/main.c b/Examples/MAX32660/TMR/main.c index cbe13786313..02480cfe46c 100644 --- a/Examples/MAX32660/TMR/main.c +++ b/Examples/MAX32660/TMR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +38,8 @@ #include "led.h" /***** Definitions *****/ -#define MAX_TICKS pow(2, 32) +#define MAX_TICKS 4294967296 +// 2^32 // Parameters for PWM output #define FREQ 1000 // (Hz) @@ -73,12 +73,12 @@ int maxTicks = (int)MAX_TICKS; volatile int TMR_FLAG = 0; /***** Functions *****/ -void PWMTimer() +void PWMTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; // to configure timer unsigned int periodTicks = MXC_TMR_GetPeriod(PWM_TIMER, 1, FREQ); - unsigned int dutyTicks = periodTicks / 100 * 50; + unsigned int dutyTicks = periodTicks * (DUTY_CYCLE / 100.0f); //Configure PWM GPIO Pin mxc_gpio_cfg_t pwmOut; @@ -118,14 +118,14 @@ void PWMTimer() } // Toggles GPIO when continuous timer repeats -void ContinuousTimerHandler() +void ContinuousTimerHandler(void) { // Clear interrupt MXC_TMR_ClearFlags(CONT_TIMER); LED_Toggle(0); } -void ContinuousTimer() +void ContinuousTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; @@ -153,14 +153,14 @@ void ContinuousTimer() printf("Continuous timer started.\n\n"); } -void OneshotTimerHandler() +void OneshotTimerHandler(void) { // Clear interrupt MXC_TMR_ClearFlags(OST_TIMER); TMR_FLAG = 1; } -void OneshotTimer() +void OneshotTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; diff --git a/Examples/MAX32660/TMR/project.mk b/Examples/MAX32660/TMR/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/TMR/project.mk +++ b/Examples/MAX32660/TMR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/Temp_Monitor/.vscode/README.md b/Examples/MAX32660/Temp_Monitor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/Temp_Monitor/.vscode/README.md +++ b/Examples/MAX32660/Temp_Monitor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/Temp_Monitor/.vscode/settings.json b/Examples/MAX32660/Temp_Monitor/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/Temp_Monitor/.vscode/settings.json +++ b/Examples/MAX32660/Temp_Monitor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/Temp_Monitor/Makefile b/Examples/MAX32660/Temp_Monitor/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/Temp_Monitor/Makefile +++ b/Examples/MAX32660/Temp_Monitor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/Temp_Monitor/main.c b/Examples/MAX32660/Temp_Monitor/main.c index 7a650397d4c..83a4376cdae 100644 --- a/Examples/MAX32660/Temp_Monitor/main.c +++ b/Examples/MAX32660/Temp_Monitor/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Temp_Monitor/project.mk b/Examples/MAX32660/Temp_Monitor/project.mk index aebbcc92b49..ff8bd9d0f82 100644 --- a/Examples/MAX32660/Temp_Monitor/project.mk +++ b/Examples/MAX32660/Temp_Monitor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/Temp_Monitor/temp_monitor.c b/Examples/MAX32660/Temp_Monitor/temp_monitor.c index 6c0fdd45b26..0c475abd7eb 100644 --- a/Examples/MAX32660/Temp_Monitor/temp_monitor.c +++ b/Examples/MAX32660/Temp_Monitor/temp_monitor.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/Temp_Monitor/temp_monitor.h b/Examples/MAX32660/Temp_Monitor/temp_monitor.h index 80db867188a..026a575e75b 100644 --- a/Examples/MAX32660/Temp_Monitor/temp_monitor.h +++ b/Examples/MAX32660/Temp_Monitor/temp_monitor.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/UART/.vscode/README.md b/Examples/MAX32660/UART/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/UART/.vscode/README.md +++ b/Examples/MAX32660/UART/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/UART/.vscode/settings.json b/Examples/MAX32660/UART/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/UART/.vscode/settings.json +++ b/Examples/MAX32660/UART/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/UART/Makefile b/Examples/MAX32660/UART/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/UART/Makefile +++ b/Examples/MAX32660/UART/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/UART/main.c b/Examples/MAX32660/UART/main.c index c55e6be2e1c..ffd9f2418f2 100644 --- a/Examples/MAX32660/UART/main.c +++ b/Examples/MAX32660/UART/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/UART/project.mk b/Examples/MAX32660/UART/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/UART/project.mk +++ b/Examples/MAX32660/UART/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/UART_Wakeup/.vscode/README.md b/Examples/MAX32660/UART_Wakeup/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/UART_Wakeup/.vscode/README.md +++ b/Examples/MAX32660/UART_Wakeup/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/UART_Wakeup/.vscode/settings.json b/Examples/MAX32660/UART_Wakeup/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/UART_Wakeup/.vscode/settings.json +++ b/Examples/MAX32660/UART_Wakeup/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/UART_Wakeup/Makefile b/Examples/MAX32660/UART_Wakeup/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/UART_Wakeup/Makefile +++ b/Examples/MAX32660/UART_Wakeup/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/UART_Wakeup/README.md b/Examples/MAX32660/UART_Wakeup/README.md index 9f85ecc2c27..bc6a9dfd330 100644 --- a/Examples/MAX32660/UART_Wakeup/README.md +++ b/Examples/MAX32660/UART_Wakeup/README.md @@ -7,7 +7,7 @@ This example demonstrates using the UART (console UART) as a wake-up source from ### Project Usage -Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analog-devices-msdk.github.io/msdk/USERGUIDE/)**. +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. ### Project-Specific Build Notes diff --git a/Examples/MAX32660/UART_Wakeup/main.c b/Examples/MAX32660/UART_Wakeup/main.c index 292b9755e0f..f0bf72ea170 100644 --- a/Examples/MAX32660/UART_Wakeup/main.c +++ b/Examples/MAX32660/UART_Wakeup/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/UART_Wakeup/project.mk b/Examples/MAX32660/UART_Wakeup/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/UART_Wakeup/project.mk +++ b/Examples/MAX32660/UART_Wakeup/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/Watchdog/.vscode/README.md b/Examples/MAX32660/Watchdog/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/Watchdog/.vscode/README.md +++ b/Examples/MAX32660/Watchdog/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/Watchdog/.vscode/settings.json b/Examples/MAX32660/Watchdog/.vscode/settings.json index bdfcb6968ce..c8bf209b918 100755 --- a/Examples/MAX32660/Watchdog/.vscode/settings.json +++ b/Examples/MAX32660/Watchdog/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/Watchdog/Makefile b/Examples/MAX32660/Watchdog/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/Watchdog/Makefile +++ b/Examples/MAX32660/Watchdog/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/Watchdog/main.c b/Examples/MAX32660/Watchdog/main.c index 2753759aa61..748455723d0 100644 --- a/Examples/MAX32660/Watchdog/main.c +++ b/Examples/MAX32660/Watchdog/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -62,7 +61,7 @@ volatile uint32_t intCnt = 0; /***** Functions *****/ -void watchdogHandler() +void watchdogHandler(void) { MXC_WDT_ClearIntFlag(MXC_WDT0); printf("\nTIMEOUT!\n"); @@ -77,7 +76,7 @@ void WDT0_IRQHandler(void) watchdogHandler(); } -void WDT_Setup() +void WDT_Setup(void) { MXC_WDT_Disable(MXC_WDT0); MXC_WDT_SetResetPeriod(MXC_WDT0, RESET_PERIOD); diff --git a/Examples/MAX32660/Watchdog/project.mk b/Examples/MAX32660/Watchdog/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32660/Watchdog/project.mk +++ b/Examples/MAX32660/Watchdog/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/WearLeveling/.vscode/README.md b/Examples/MAX32660/WearLeveling/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32660/WearLeveling/.vscode/README.md +++ b/Examples/MAX32660/WearLeveling/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32660/WearLeveling/.vscode/settings.json b/Examples/MAX32660/WearLeveling/.vscode/settings.json index a1e1c74ce79..1dd15b0686b 100755 --- a/Examples/MAX32660/WearLeveling/.vscode/settings.json +++ b/Examples/MAX32660/WearLeveling/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32660/WearLeveling/Makefile b/Examples/MAX32660/WearLeveling/Makefile index e741bf851e8..dac74611d25 100644 --- a/Examples/MAX32660/WearLeveling/Makefile +++ b/Examples/MAX32660/WearLeveling/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32660/WearLeveling/include/cli.h b/Examples/MAX32660/WearLeveling/include/cli.h index 6a043404636..f3a1c26ba13 100644 --- a/Examples/MAX32660/WearLeveling/include/cli.h +++ b/Examples/MAX32660/WearLeveling/include/cli.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/WearLeveling/include/file.h b/Examples/MAX32660/WearLeveling/include/file.h index b7fef450989..334247881b2 100644 --- a/Examples/MAX32660/WearLeveling/include/file.h +++ b/Examples/MAX32660/WearLeveling/include/file.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/WearLeveling/include/flash.h b/Examples/MAX32660/WearLeveling/include/flash.h index 93d1768170c..a1f4707941a 100644 --- a/Examples/MAX32660/WearLeveling/include/flash.h +++ b/Examples/MAX32660/WearLeveling/include/flash.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/WearLeveling/include/main.h b/Examples/MAX32660/WearLeveling/include/main.h index c71268fa2ea..77ffdbe3b39 100644 --- a/Examples/MAX32660/WearLeveling/include/main.h +++ b/Examples/MAX32660/WearLeveling/include/main.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/WearLeveling/main.c b/Examples/MAX32660/WearLeveling/main.c index e0fed8e6f2a..4a4ef4a2705 100644 --- a/Examples/MAX32660/WearLeveling/main.c +++ b/Examples/MAX32660/WearLeveling/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/WearLeveling/project.mk b/Examples/MAX32660/WearLeveling/project.mk index 68501672c81..ab1e35b73c8 100644 --- a/Examples/MAX32660/WearLeveling/project.mk +++ b/Examples/MAX32660/WearLeveling/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32660/WearLeveling/src/cli.c b/Examples/MAX32660/WearLeveling/src/cli.c index 488f3413dee..ea27a00faa5 100644 --- a/Examples/MAX32660/WearLeveling/src/cli.c +++ b/Examples/MAX32660/WearLeveling/src/cli.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/WearLeveling/src/file.c b/Examples/MAX32660/WearLeveling/src/file.c index dec9a57200f..ddb03186181 100644 --- a/Examples/MAX32660/WearLeveling/src/file.c +++ b/Examples/MAX32660/WearLeveling/src/file.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32660/WearLeveling/src/flash.c b/Examples/MAX32660/WearLeveling/src/flash.c index 38ca8a38e0e..2615d076b9e 100644 --- a/Examples/MAX32660/WearLeveling/src/flash.c +++ b/Examples/MAX32660/WearLeveling/src/flash.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/ADC/.vscode/README.md b/Examples/MAX32662/ADC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/ADC/.vscode/README.md +++ b/Examples/MAX32662/ADC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/ADC/.vscode/settings.json b/Examples/MAX32662/ADC/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/ADC/.vscode/settings.json +++ b/Examples/MAX32662/ADC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/ADC/Makefile b/Examples/MAX32662/ADC/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/ADC/Makefile +++ b/Examples/MAX32662/ADC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/ADC/main.c b/Examples/MAX32662/ADC/main.c index a26582b498f..82fb50258ce 100644 --- a/Examples/MAX32662/ADC/main.c +++ b/Examples/MAX32662/ADC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/ADC/project.mk b/Examples/MAX32662/ADC/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/ADC/project.mk +++ b/Examples/MAX32662/ADC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/ARM-DSP/README.md b/Examples/MAX32662/ARM-DSP/README.md index 9bb2d50bedc..5e1d116671b 100644 --- a/Examples/MAX32662/ARM-DSP/README.md +++ b/Examples/MAX32662/ARM-DSP/README.md @@ -8,7 +8,7 @@ The projects in this folder are ports of ARM's DSP example projects that can be Debug launch configurations are included in each project, and should appear in the "Favorites" menu in Eclipse. -Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop) +Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop) ## Software diff --git a/Examples/MAX32662/ARM-DSP/arm_bayes_example/.vscode/README.md b/Examples/MAX32662/ARM-DSP/arm_bayes_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/ARM-DSP/arm_bayes_example/.vscode/README.md +++ b/Examples/MAX32662/ARM-DSP/arm_bayes_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/ARM-DSP/arm_bayes_example/.vscode/settings.json b/Examples/MAX32662/ARM-DSP/arm_bayes_example/.vscode/settings.json index cf04965252f..7669d0913eb 100755 --- a/Examples/MAX32662/ARM-DSP/arm_bayes_example/.vscode/settings.json +++ b/Examples/MAX32662/ARM-DSP/arm_bayes_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/ARM-DSP/arm_bayes_example/Makefile b/Examples/MAX32662/ARM-DSP/arm_bayes_example/Makefile index 3f1695b1718..243bb966338 100644 --- a/Examples/MAX32662/ARM-DSP/arm_bayes_example/Makefile +++ b/Examples/MAX32662/ARM-DSP/arm_bayes_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/ARM-DSP/arm_bayes_example/project.mk b/Examples/MAX32662/ARM-DSP/arm_bayes_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32662/ARM-DSP/arm_bayes_example/project.mk +++ b/Examples/MAX32662/ARM-DSP/arm_bayes_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/ARM-DSP/arm_class_marks_example/.vscode/README.md b/Examples/MAX32662/ARM-DSP/arm_class_marks_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/ARM-DSP/arm_class_marks_example/.vscode/README.md +++ b/Examples/MAX32662/ARM-DSP/arm_class_marks_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/ARM-DSP/arm_class_marks_example/.vscode/settings.json b/Examples/MAX32662/ARM-DSP/arm_class_marks_example/.vscode/settings.json index cf04965252f..7669d0913eb 100755 --- a/Examples/MAX32662/ARM-DSP/arm_class_marks_example/.vscode/settings.json +++ b/Examples/MAX32662/ARM-DSP/arm_class_marks_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/ARM-DSP/arm_class_marks_example/Makefile b/Examples/MAX32662/ARM-DSP/arm_class_marks_example/Makefile index 3f1695b1718..243bb966338 100644 --- a/Examples/MAX32662/ARM-DSP/arm_class_marks_example/Makefile +++ b/Examples/MAX32662/ARM-DSP/arm_class_marks_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c b/Examples/MAX32662/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c index 30f548bc888..2ea5e90d59a 100644 --- a/Examples/MAX32662/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c +++ b/Examples/MAX32662/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c @@ -139,7 +139,7 @@ uint32_t student_num; * Main f32 test function. It returns maximum marks secured and student number * ------------------------------------------------------------------------------- */ -int main() +int main(void) { #ifndef USE_STATIC_INIT diff --git a/Examples/MAX32662/ARM-DSP/arm_class_marks_example/project.mk b/Examples/MAX32662/ARM-DSP/arm_class_marks_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32662/ARM-DSP/arm_class_marks_example/project.mk +++ b/Examples/MAX32662/ARM-DSP/arm_class_marks_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/ARM-DSP/arm_convolution_example/.vscode/README.md b/Examples/MAX32662/ARM-DSP/arm_convolution_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/ARM-DSP/arm_convolution_example/.vscode/README.md +++ b/Examples/MAX32662/ARM-DSP/arm_convolution_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/ARM-DSP/arm_convolution_example/.vscode/settings.json b/Examples/MAX32662/ARM-DSP/arm_convolution_example/.vscode/settings.json index cf04965252f..7669d0913eb 100755 --- a/Examples/MAX32662/ARM-DSP/arm_convolution_example/.vscode/settings.json +++ b/Examples/MAX32662/ARM-DSP/arm_convolution_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/ARM-DSP/arm_convolution_example/Makefile b/Examples/MAX32662/ARM-DSP/arm_convolution_example/Makefile index 3f1695b1718..243bb966338 100644 --- a/Examples/MAX32662/ARM-DSP/arm_convolution_example/Makefile +++ b/Examples/MAX32662/ARM-DSP/arm_convolution_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/ARM-DSP/arm_convolution_example/project.mk b/Examples/MAX32662/ARM-DSP/arm_convolution_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32662/ARM-DSP/arm_convolution_example/project.mk +++ b/Examples/MAX32662/ARM-DSP/arm_convolution_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md b/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md +++ b/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json b/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json index cf04965252f..7669d0913eb 100755 --- a/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json +++ b/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/Makefile b/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/Makefile index 3f1695b1718..243bb966338 100644 --- a/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/Makefile +++ b/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/project.mk b/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/project.mk +++ b/Examples/MAX32662/ARM-DSP/arm_dotproduct_example_f32/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/.vscode/README.md b/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/.vscode/README.md +++ b/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/.vscode/settings.json b/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/.vscode/settings.json index cf04965252f..7669d0913eb 100755 --- a/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/.vscode/settings.json +++ b/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/Makefile b/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/Makefile index 3f1695b1718..243bb966338 100644 --- a/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/Makefile +++ b/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/project.mk b/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/project.mk +++ b/Examples/MAX32662/ARM-DSP/arm_fft_bin_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/ARM-DSP/arm_fir_example/.vscode/README.md b/Examples/MAX32662/ARM-DSP/arm_fir_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/ARM-DSP/arm_fir_example/.vscode/README.md +++ b/Examples/MAX32662/ARM-DSP/arm_fir_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/ARM-DSP/arm_fir_example/.vscode/settings.json b/Examples/MAX32662/ARM-DSP/arm_fir_example/.vscode/settings.json index cf04965252f..7669d0913eb 100755 --- a/Examples/MAX32662/ARM-DSP/arm_fir_example/.vscode/settings.json +++ b/Examples/MAX32662/ARM-DSP/arm_fir_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/ARM-DSP/arm_fir_example/Makefile b/Examples/MAX32662/ARM-DSP/arm_fir_example/Makefile index 3f1695b1718..243bb966338 100644 --- a/Examples/MAX32662/ARM-DSP/arm_fir_example/Makefile +++ b/Examples/MAX32662/ARM-DSP/arm_fir_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/ARM-DSP/arm_fir_example/project.mk b/Examples/MAX32662/ARM-DSP/arm_fir_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32662/ARM-DSP/arm_fir_example/project.mk +++ b/Examples/MAX32662/ARM-DSP/arm_fir_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md b/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md +++ b/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json b/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json index cf04965252f..7669d0913eb 100755 --- a/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json +++ b/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/Makefile b/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/Makefile index 3f1695b1718..243bb966338 100644 --- a/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/Makefile +++ b/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/project.mk b/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/project.mk +++ b/Examples/MAX32662/ARM-DSP/arm_graphic_equalizer_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/.vscode/README.md b/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/.vscode/README.md +++ b/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/.vscode/settings.json b/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/.vscode/settings.json index cf04965252f..7669d0913eb 100755 --- a/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/.vscode/settings.json +++ b/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/Makefile b/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/Makefile index 3f1695b1718..243bb966338 100644 --- a/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/Makefile +++ b/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/project.mk b/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/project.mk +++ b/Examples/MAX32662/ARM-DSP/arm_linear_interp_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/ARM-DSP/arm_matrix_example/.vscode/README.md b/Examples/MAX32662/ARM-DSP/arm_matrix_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/ARM-DSP/arm_matrix_example/.vscode/README.md +++ b/Examples/MAX32662/ARM-DSP/arm_matrix_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/ARM-DSP/arm_matrix_example/.vscode/settings.json b/Examples/MAX32662/ARM-DSP/arm_matrix_example/.vscode/settings.json index cf04965252f..7669d0913eb 100755 --- a/Examples/MAX32662/ARM-DSP/arm_matrix_example/.vscode/settings.json +++ b/Examples/MAX32662/ARM-DSP/arm_matrix_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/ARM-DSP/arm_matrix_example/Makefile b/Examples/MAX32662/ARM-DSP/arm_matrix_example/Makefile index 3f1695b1718..243bb966338 100644 --- a/Examples/MAX32662/ARM-DSP/arm_matrix_example/Makefile +++ b/Examples/MAX32662/ARM-DSP/arm_matrix_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/ARM-DSP/arm_matrix_example/project.mk b/Examples/MAX32662/ARM-DSP/arm_matrix_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32662/ARM-DSP/arm_matrix_example/project.mk +++ b/Examples/MAX32662/ARM-DSP/arm_matrix_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/.vscode/README.md b/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/.vscode/README.md +++ b/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/.vscode/settings.json b/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/.vscode/settings.json index cf04965252f..7669d0913eb 100755 --- a/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/.vscode/settings.json +++ b/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/Makefile b/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/Makefile index 3f1695b1718..243bb966338 100644 --- a/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/Makefile +++ b/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/project.mk b/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/project.mk +++ b/Examples/MAX32662/ARM-DSP/arm_signal_converge_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/.vscode/README.md b/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/.vscode/README.md +++ b/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/.vscode/settings.json b/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/.vscode/settings.json index cf04965252f..7669d0913eb 100755 --- a/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/.vscode/settings.json +++ b/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/Makefile b/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/Makefile index 3f1695b1718..243bb966338 100644 --- a/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/Makefile +++ b/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/project.mk b/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/project.mk +++ b/Examples/MAX32662/ARM-DSP/arm_sin_cos_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/ARM-DSP/arm_svm_example/.vscode/README.md b/Examples/MAX32662/ARM-DSP/arm_svm_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/ARM-DSP/arm_svm_example/.vscode/README.md +++ b/Examples/MAX32662/ARM-DSP/arm_svm_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/ARM-DSP/arm_svm_example/.vscode/settings.json b/Examples/MAX32662/ARM-DSP/arm_svm_example/.vscode/settings.json index cf04965252f..7669d0913eb 100755 --- a/Examples/MAX32662/ARM-DSP/arm_svm_example/.vscode/settings.json +++ b/Examples/MAX32662/ARM-DSP/arm_svm_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/ARM-DSP/arm_svm_example/Makefile b/Examples/MAX32662/ARM-DSP/arm_svm_example/Makefile index 3f1695b1718..243bb966338 100644 --- a/Examples/MAX32662/ARM-DSP/arm_svm_example/Makefile +++ b/Examples/MAX32662/ARM-DSP/arm_svm_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/ARM-DSP/arm_svm_example/project.mk b/Examples/MAX32662/ARM-DSP/arm_svm_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32662/ARM-DSP/arm_svm_example/project.mk +++ b/Examples/MAX32662/ARM-DSP/arm_svm_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/ARM-DSP/arm_variance_example/.vscode/README.md b/Examples/MAX32662/ARM-DSP/arm_variance_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/ARM-DSP/arm_variance_example/.vscode/README.md +++ b/Examples/MAX32662/ARM-DSP/arm_variance_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/ARM-DSP/arm_variance_example/.vscode/settings.json b/Examples/MAX32662/ARM-DSP/arm_variance_example/.vscode/settings.json index cf04965252f..7669d0913eb 100755 --- a/Examples/MAX32662/ARM-DSP/arm_variance_example/.vscode/settings.json +++ b/Examples/MAX32662/ARM-DSP/arm_variance_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/ARM-DSP/arm_variance_example/Makefile b/Examples/MAX32662/ARM-DSP/arm_variance_example/Makefile index 3f1695b1718..243bb966338 100644 --- a/Examples/MAX32662/ARM-DSP/arm_variance_example/Makefile +++ b/Examples/MAX32662/ARM-DSP/arm_variance_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/ARM-DSP/arm_variance_example/project.mk b/Examples/MAX32662/ARM-DSP/arm_variance_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32662/ARM-DSP/arm_variance_example/project.mk +++ b/Examples/MAX32662/ARM-DSP/arm_variance_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/Bootloader_Host/.vscode/README.md b/Examples/MAX32662/Bootloader_Host/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/Bootloader_Host/.vscode/README.md +++ b/Examples/MAX32662/Bootloader_Host/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/Bootloader_Host/.vscode/settings.json b/Examples/MAX32662/Bootloader_Host/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/Bootloader_Host/.vscode/settings.json +++ b/Examples/MAX32662/Bootloader_Host/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/Bootloader_Host/Makefile b/Examples/MAX32662/Bootloader_Host/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/Bootloader_Host/Makefile +++ b/Examples/MAX32662/Bootloader_Host/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/Bootloader_Host/bootloader/bootloader.c b/Examples/MAX32662/Bootloader_Host/bootloader/bootloader.c index 4cc8e9abfdf..55e5e010036 100644 --- a/Examples/MAX32662/Bootloader_Host/bootloader/bootloader.c +++ b/Examples/MAX32662/Bootloader_Host/bootloader/bootloader.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Bootloader_Host/bootloader/bootloader.h b/Examples/MAX32662/Bootloader_Host/bootloader/bootloader.h index f217f63b286..ea09a5637eb 100644 --- a/Examples/MAX32662/Bootloader_Host/bootloader/bootloader.h +++ b/Examples/MAX32662/Bootloader_Host/bootloader/bootloader.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Bootloader_Host/bootloader/bootloader_cmd.h b/Examples/MAX32662/Bootloader_Host/bootloader/bootloader_cmd.h index a05030d23d4..8f2aca167d8 100644 --- a/Examples/MAX32662/Bootloader_Host/bootloader/bootloader_cmd.h +++ b/Examples/MAX32662/Bootloader_Host/bootloader/bootloader_cmd.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Bootloader_Host/inc/platform.h b/Examples/MAX32662/Bootloader_Host/inc/platform.h index 4c12bc8bb67..46bc213bf1d 100644 --- a/Examples/MAX32662/Bootloader_Host/inc/platform.h +++ b/Examples/MAX32662/Bootloader_Host/inc/platform.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Bootloader_Host/inc/terminal.h b/Examples/MAX32662/Bootloader_Host/inc/terminal.h index f9aef2f386d..a2cb1a46d5e 100644 --- a/Examples/MAX32662/Bootloader_Host/inc/terminal.h +++ b/Examples/MAX32662/Bootloader_Host/inc/terminal.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Bootloader_Host/project.mk b/Examples/MAX32662/Bootloader_Host/project.mk index c39e739b407..2f8880ec94e 100644 --- a/Examples/MAX32662/Bootloader_Host/project.mk +++ b/Examples/MAX32662/Bootloader_Host/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/Bootloader_Host/src/bootloader_menu.c b/Examples/MAX32662/Bootloader_Host/src/bootloader_menu.c index 38862c41a36..9cf3ec6cf98 100644 --- a/Examples/MAX32662/Bootloader_Host/src/bootloader_menu.c +++ b/Examples/MAX32662/Bootloader_Host/src/bootloader_menu.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Bootloader_Host/src/main.c b/Examples/MAX32662/Bootloader_Host/src/main.c index 80dc5ecb461..0e46ce8a308 100644 --- a/Examples/MAX32662/Bootloader_Host/src/main.c +++ b/Examples/MAX32662/Bootloader_Host/src/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Bootloader_Host/src/platform_max32662.c b/Examples/MAX32662/Bootloader_Host/src/platform_max32662.c index 49fdfb21eb8..f27410321c4 100644 --- a/Examples/MAX32662/Bootloader_Host/src/platform_max32662.c +++ b/Examples/MAX32662/Bootloader_Host/src/platform_max32662.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Bootloader_Host/src/terminal.c b/Examples/MAX32662/Bootloader_Host/src/terminal.c index 23016b63278..210e8171022 100644 --- a/Examples/MAX32662/Bootloader_Host/src/terminal.c +++ b/Examples/MAX32662/Bootloader_Host/src/terminal.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/devkey_MAX32662_blinkled_fast_P0_13.c b/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/devkey_MAX32662_blinkled_fast_P0_13.c index 0cf476ac0e6..062deef0d2c 100644 --- a/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/devkey_MAX32662_blinkled_fast_P0_13.c +++ b/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/devkey_MAX32662_blinkled_fast_P0_13.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/devkey_MAX32662_blinkled_slow_P0_13.c b/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/devkey_MAX32662_blinkled_slow_P0_13.c index ca0a4d33594..1d0ad38165c 100644 --- a/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/devkey_MAX32662_blinkled_slow_P0_13.c +++ b/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/devkey_MAX32662_blinkled_slow_P0_13.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/nonsecure_MAX32662_blinkled_fast_P0_13.c b/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/nonsecure_MAX32662_blinkled_fast_P0_13.c index 3c081c79c1f..c520b03760d 100644 --- a/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/nonsecure_MAX32662_blinkled_fast_P0_13.c +++ b/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/nonsecure_MAX32662_blinkled_fast_P0_13.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/nonsecure_MAX32662_blinkled_slow_P0_13.c b/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/nonsecure_MAX32662_blinkled_slow_P0_13.c index c8126cdd100..b6e8535653a 100644 --- a/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/nonsecure_MAX32662_blinkled_slow_P0_13.c +++ b/Examples/MAX32662/Bootloader_Host/test_images/MAX32662/nonsecure_MAX32662_blinkled_slow_P0_13.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Bootloader_Host/test_images/test_images.h b/Examples/MAX32662/Bootloader_Host/test_images/test_images.h index f94413fb5ed..1122cb56198 100644 --- a/Examples/MAX32662/Bootloader_Host/test_images/test_images.h +++ b/Examples/MAX32662/Bootloader_Host/test_images/test_images.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/CAN/.vscode/README.md b/Examples/MAX32662/CAN/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/CAN/.vscode/README.md +++ b/Examples/MAX32662/CAN/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/CAN/.vscode/settings.json b/Examples/MAX32662/CAN/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/CAN/.vscode/settings.json +++ b/Examples/MAX32662/CAN/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/CAN/Makefile b/Examples/MAX32662/CAN/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/CAN/Makefile +++ b/Examples/MAX32662/CAN/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/CAN/main.c b/Examples/MAX32662/CAN/main.c index 6d488457579..56568dae012 100644 --- a/Examples/MAX32662/CAN/main.c +++ b/Examples/MAX32662/CAN/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/CAN/project.mk b/Examples/MAX32662/CAN/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/CAN/project.mk +++ b/Examples/MAX32662/CAN/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/Coremark/.vscode/README.md b/Examples/MAX32662/Coremark/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/Coremark/.vscode/README.md +++ b/Examples/MAX32662/Coremark/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/Coremark/.vscode/settings.json b/Examples/MAX32662/Coremark/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/Coremark/.vscode/settings.json +++ b/Examples/MAX32662/Coremark/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/Coremark/Makefile b/Examples/MAX32662/Coremark/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/Coremark/Makefile +++ b/Examples/MAX32662/Coremark/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/Coremark/project.mk b/Examples/MAX32662/Coremark/project.mk index 9ded8091069..a6efc624169 100644 --- a/Examples/MAX32662/Coremark/project.mk +++ b/Examples/MAX32662/Coremark/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/DMA/.vscode/README.md b/Examples/MAX32662/DMA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/DMA/.vscode/README.md +++ b/Examples/MAX32662/DMA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/DMA/.vscode/settings.json b/Examples/MAX32662/DMA/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/DMA/.vscode/settings.json +++ b/Examples/MAX32662/DMA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/DMA/Makefile b/Examples/MAX32662/DMA/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/DMA/Makefile +++ b/Examples/MAX32662/DMA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/DMA/main.c b/Examples/MAX32662/DMA/main.c index f96eeb02ea8..762cc854afd 100644 --- a/Examples/MAX32662/DMA/main.c +++ b/Examples/MAX32662/DMA/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -56,7 +55,7 @@ void memCpyComplete(void *dest) flag++; } -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); } diff --git a/Examples/MAX32662/DMA/project.mk b/Examples/MAX32662/DMA/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/DMA/project.mk +++ b/Examples/MAX32662/DMA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/Demo/.vscode/README.md b/Examples/MAX32662/Demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/Demo/.vscode/README.md +++ b/Examples/MAX32662/Demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/Demo/.vscode/settings.json b/Examples/MAX32662/Demo/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/Demo/.vscode/settings.json +++ b/Examples/MAX32662/Demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/Demo/Makefile b/Examples/MAX32662/Demo/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/Demo/Makefile +++ b/Examples/MAX32662/Demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/Demo/main.c b/Examples/MAX32662/Demo/main.c index 500d7bead07..02f4b9075db 100644 --- a/Examples/MAX32662/Demo/main.c +++ b/Examples/MAX32662/Demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Demo/project.mk b/Examples/MAX32662/Demo/project.mk index 75126edd539..3b9f1d3e395 100644 --- a/Examples/MAX32662/Demo/project.mk +++ b/Examples/MAX32662/Demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/Demo/resources/bitmap.h b/Examples/MAX32662/Demo/resources/bitmap.h index 61d5e796428..5ba6fb518f2 100644 --- a/Examples/MAX32662/Demo/resources/bitmap.h +++ b/Examples/MAX32662/Demo/resources/bitmap.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Demo/resources/tft_demo/bmp/bmp2c.py b/Examples/MAX32662/Demo/resources/tft_demo/bmp/bmp2c.py index d85d42f200a..6e4a77a77e8 100644 --- a/Examples/MAX32662/Demo/resources/tft_demo/bmp/bmp2c.py +++ b/Examples/MAX32662/Demo/resources/tft_demo/bmp/bmp2c.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Demo/resources/tft_demo/bmp/image_rgb565.c b/Examples/MAX32662/Demo/resources/tft_demo/bmp/image_rgb565.c index 435c50b308c..3848cb229d2 100644 --- a/Examples/MAX32662/Demo/resources/tft_demo/bmp/image_rgb565.c +++ b/Examples/MAX32662/Demo/resources/tft_demo/bmp/image_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Demo/resources/tft_demo/bmp/template.txt b/Examples/MAX32662/Demo/resources/tft_demo/bmp/template.txt index ba9d86c9a51..b2b7ff6425e 100644 --- a/Examples/MAX32662/Demo/resources/tft_demo/bmp/template.txt +++ b/Examples/MAX32662/Demo/resources/tft_demo/bmp/template.txt @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Demo/resources/tft_demo/logo_rgb565.c b/Examples/MAX32662/Demo/resources/tft_demo/logo_rgb565.c index 3c2141725cb..69ae930815e 100644 --- a/Examples/MAX32662/Demo/resources/tft_demo/logo_rgb565.c +++ b/Examples/MAX32662/Demo/resources/tft_demo/logo_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/EEPROM_Emulator/.vscode/README.md b/Examples/MAX32662/EEPROM_Emulator/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/EEPROM_Emulator/.vscode/README.md +++ b/Examples/MAX32662/EEPROM_Emulator/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/EEPROM_Emulator/.vscode/settings.json b/Examples/MAX32662/EEPROM_Emulator/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/EEPROM_Emulator/.vscode/settings.json +++ b/Examples/MAX32662/EEPROM_Emulator/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/EEPROM_Emulator/Makefile b/Examples/MAX32662/EEPROM_Emulator/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/EEPROM_Emulator/Makefile +++ b/Examples/MAX32662/EEPROM_Emulator/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/EEPROM_Emulator/include/cache.h b/Examples/MAX32662/EEPROM_Emulator/include/cache.h index fa61fa68397..b45efa8bcef 100644 --- a/Examples/MAX32662/EEPROM_Emulator/include/cache.h +++ b/Examples/MAX32662/EEPROM_Emulator/include/cache.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/EEPROM_Emulator/include/eeprom.h b/Examples/MAX32662/EEPROM_Emulator/include/eeprom.h index 29eaf712099..d40c813ef9d 100644 --- a/Examples/MAX32662/EEPROM_Emulator/include/eeprom.h +++ b/Examples/MAX32662/EEPROM_Emulator/include/eeprom.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/EEPROM_Emulator/main.c b/Examples/MAX32662/EEPROM_Emulator/main.c index 9562d7a0063..1b559725d07 100644 --- a/Examples/MAX32662/EEPROM_Emulator/main.c +++ b/Examples/MAX32662/EEPROM_Emulator/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/EEPROM_Emulator/project.mk b/Examples/MAX32662/EEPROM_Emulator/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32662/EEPROM_Emulator/project.mk +++ b/Examples/MAX32662/EEPROM_Emulator/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/EEPROM_Emulator/src/cache.c b/Examples/MAX32662/EEPROM_Emulator/src/cache.c index 17bc7b57c13..adf98b89839 100644 --- a/Examples/MAX32662/EEPROM_Emulator/src/cache.c +++ b/Examples/MAX32662/EEPROM_Emulator/src/cache.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/EEPROM_Emulator/src/eeprom.c b/Examples/MAX32662/EEPROM_Emulator/src/eeprom.c index 22ede1df092..266766e2e42 100644 --- a/Examples/MAX32662/EEPROM_Emulator/src/eeprom.c +++ b/Examples/MAX32662/EEPROM_Emulator/src/eeprom.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Flash/.vscode/README.md b/Examples/MAX32662/Flash/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/Flash/.vscode/README.md +++ b/Examples/MAX32662/Flash/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/Flash/.vscode/settings.json b/Examples/MAX32662/Flash/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/Flash/.vscode/settings.json +++ b/Examples/MAX32662/Flash/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/Flash/Makefile b/Examples/MAX32662/Flash/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/Flash/Makefile +++ b/Examples/MAX32662/Flash/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/Flash/main.c b/Examples/MAX32662/Flash/main.c index 7ea294f6ecd..78568d2cdd8 100644 --- a/Examples/MAX32662/Flash/main.c +++ b/Examples/MAX32662/Flash/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -60,7 +59,7 @@ volatile uint32_t isr_flags; //****************************************************************************** int button_pressed = 0; -void button_handler() +void button_handler(void) { button_pressed = 1; } @@ -121,7 +120,7 @@ void setup_irqs(void) isr_cnt = 0; } -int write_test_pattern() +int write_test_pattern(void) { int err; // A flash address must be in the erased state before writing to it, because the @@ -163,7 +162,7 @@ int write_test_pattern() return err; } -int validate_test_pattern() +int validate_test_pattern(void) { int err = 0; @@ -183,7 +182,7 @@ int validate_test_pattern() return err; } -int erase_magic() +int erase_magic(void) { /* To modify a location in flash that has already been written to, diff --git a/Examples/MAX32662/Flash/project.mk b/Examples/MAX32662/Flash/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32662/Flash/project.mk +++ b/Examples/MAX32662/Flash/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/Flash_CLI/.vscode/README.md b/Examples/MAX32662/Flash_CLI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/Flash_CLI/.vscode/README.md +++ b/Examples/MAX32662/Flash_CLI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/Flash_CLI/.vscode/settings.json b/Examples/MAX32662/Flash_CLI/.vscode/settings.json index 4dcc7803a66..61f02236377 100755 --- a/Examples/MAX32662/Flash_CLI/.vscode/settings.json +++ b/Examples/MAX32662/Flash_CLI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/Flash_CLI/FreeRTOSConfig.h b/Examples/MAX32662/Flash_CLI/FreeRTOSConfig.h index dcfee1c05ee..5354900e1d1 100644 --- a/Examples/MAX32662/Flash_CLI/FreeRTOSConfig.h +++ b/Examples/MAX32662/Flash_CLI/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Flash_CLI/Makefile b/Examples/MAX32662/Flash_CLI/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/Flash_CLI/Makefile +++ b/Examples/MAX32662/Flash_CLI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/Flash_CLI/definitions.h b/Examples/MAX32662/Flash_CLI/definitions.h index 6021b0d4d8f..b471e913061 100644 --- a/Examples/MAX32662/Flash_CLI/definitions.h +++ b/Examples/MAX32662/Flash_CLI/definitions.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Flash_CLI/main.c b/Examples/MAX32662/Flash_CLI/main.c index 271fa92de4f..6a4f7330d3a 100644 --- a/Examples/MAX32662/Flash_CLI/main.c +++ b/Examples/MAX32662/Flash_CLI/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Flash_CLI/project.mk b/Examples/MAX32662/Flash_CLI/project.mk index b46ded3d1db..ed9299005dd 100644 --- a/Examples/MAX32662/Flash_CLI/project.mk +++ b/Examples/MAX32662/Flash_CLI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/GPIO/.vscode/README.md b/Examples/MAX32662/GPIO/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/GPIO/.vscode/README.md +++ b/Examples/MAX32662/GPIO/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/GPIO/.vscode/settings.json b/Examples/MAX32662/GPIO/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/GPIO/.vscode/settings.json +++ b/Examples/MAX32662/GPIO/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/GPIO/Makefile b/Examples/MAX32662/GPIO/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/GPIO/Makefile +++ b/Examples/MAX32662/GPIO/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/GPIO/main.c b/Examples/MAX32662/GPIO/main.c index c588494a78d..b9dea76b155 100644 --- a/Examples/MAX32662/GPIO/main.c +++ b/Examples/MAX32662/GPIO/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/GPIO/project.mk b/Examples/MAX32662/GPIO/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/GPIO/project.mk +++ b/Examples/MAX32662/GPIO/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/Hello_World/.vscode/README.md b/Examples/MAX32662/Hello_World/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/Hello_World/.vscode/README.md +++ b/Examples/MAX32662/Hello_World/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/Hello_World/.vscode/settings.json b/Examples/MAX32662/Hello_World/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/Hello_World/.vscode/settings.json +++ b/Examples/MAX32662/Hello_World/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/Hello_World/Makefile b/Examples/MAX32662/Hello_World/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/Hello_World/Makefile +++ b/Examples/MAX32662/Hello_World/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/Hello_World/main.c b/Examples/MAX32662/Hello_World/main.c index bea69a62300..ad20d280fff 100644 --- a/Examples/MAX32662/Hello_World/main.c +++ b/Examples/MAX32662/Hello_World/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Hello_World/project.mk b/Examples/MAX32662/Hello_World/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/Hello_World/project.mk +++ b/Examples/MAX32662/Hello_World/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/Hello_World_Cpp/.vscode/README.md b/Examples/MAX32662/Hello_World_Cpp/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/Hello_World_Cpp/.vscode/README.md +++ b/Examples/MAX32662/Hello_World_Cpp/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/Hello_World_Cpp/.vscode/settings.json b/Examples/MAX32662/Hello_World_Cpp/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/Hello_World_Cpp/.vscode/settings.json +++ b/Examples/MAX32662/Hello_World_Cpp/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/Hello_World_Cpp/Makefile b/Examples/MAX32662/Hello_World_Cpp/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/Hello_World_Cpp/Makefile +++ b/Examples/MAX32662/Hello_World_Cpp/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/Hello_World_Cpp/main.cpp b/Examples/MAX32662/Hello_World_Cpp/main.cpp index daade0e995d..fdf8363cde1 100644 --- a/Examples/MAX32662/Hello_World_Cpp/main.cpp +++ b/Examples/MAX32662/Hello_World_Cpp/main.cpp @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -66,7 +65,7 @@ class LED { int blink_count; }; -int main() +int main(void) { LED led = LED(0); diff --git a/Examples/MAX32662/Hello_World_Cpp/project.mk b/Examples/MAX32662/Hello_World_Cpp/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX32662/Hello_World_Cpp/project.mk +++ b/Examples/MAX32662/Hello_World_Cpp/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/I2C/.vscode/README.md b/Examples/MAX32662/I2C/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/I2C/.vscode/README.md +++ b/Examples/MAX32662/I2C/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/I2C/.vscode/settings.json b/Examples/MAX32662/I2C/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/I2C/.vscode/settings.json +++ b/Examples/MAX32662/I2C/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/I2C/Makefile b/Examples/MAX32662/I2C/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/I2C/Makefile +++ b/Examples/MAX32662/I2C/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/I2C/main.c b/Examples/MAX32662/I2C/main.c index 2a38bfbc16b..3bc8989eee8 100644 --- a/Examples/MAX32662/I2C/main.c +++ b/Examples/MAX32662/I2C/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -189,7 +188,7 @@ int verifyData(void) } // ***************************************************************************** -int main() +int main(void) { printf("\n******** I2C Master-Slave Transaction Demo *********\n"); printf("\nThis example uses one I2C peripheral as a master to\n"); diff --git a/Examples/MAX32662/I2C/project.mk b/Examples/MAX32662/I2C/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/I2C/project.mk +++ b/Examples/MAX32662/I2C/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/I2C_MNGR/.vscode/README.md b/Examples/MAX32662/I2C_MNGR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/I2C_MNGR/.vscode/README.md +++ b/Examples/MAX32662/I2C_MNGR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/I2C_MNGR/.vscode/settings.json b/Examples/MAX32662/I2C_MNGR/.vscode/settings.json index 789cb82837a..4ee21463959 100755 --- a/Examples/MAX32662/I2C_MNGR/.vscode/settings.json +++ b/Examples/MAX32662/I2C_MNGR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/I2C_MNGR/FreeRTOSConfig.h b/Examples/MAX32662/I2C_MNGR/FreeRTOSConfig.h index 434f21dd937..212343bee69 100644 --- a/Examples/MAX32662/I2C_MNGR/FreeRTOSConfig.h +++ b/Examples/MAX32662/I2C_MNGR/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/I2C_MNGR/Makefile b/Examples/MAX32662/I2C_MNGR/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/I2C_MNGR/Makefile +++ b/Examples/MAX32662/I2C_MNGR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/I2C_MNGR/i2c_mngr/i2c_mngr.c b/Examples/MAX32662/I2C_MNGR/i2c_mngr/i2c_mngr.c index be717e17a27..811e6a3b4a4 100644 --- a/Examples/MAX32662/I2C_MNGR/i2c_mngr/i2c_mngr.c +++ b/Examples/MAX32662/I2C_MNGR/i2c_mngr/i2c_mngr.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +38,7 @@ typedef struct { static i2c_txn_mngr_t s_mngr; /******************************************************************************/ -int I2C_MNGR_Init() +int I2C_MNGR_Init(void) { s_mngr.inst0 = MXC_I2C0; s_mngr.inst1 = MXC_I2C1; diff --git a/Examples/MAX32662/I2C_MNGR/i2c_mngr/i2c_mngr.h b/Examples/MAX32662/I2C_MNGR/i2c_mngr/i2c_mngr.h index cc4cf48b7f2..7cf4d356bbf 100644 --- a/Examples/MAX32662/I2C_MNGR/i2c_mngr/i2c_mngr.h +++ b/Examples/MAX32662/I2C_MNGR/i2c_mngr/i2c_mngr.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +54,7 @@ typedef struct { * @brief Initializes I2C transaction manager * @return #E_NO_ERROR if succeeded, error code otherwise */ -int I2C_MNGR_Init(); +int I2C_MNGR_Init(void); /* * @brief Executes I2C transaction diff --git a/Examples/MAX32662/I2C_MNGR/main.c b/Examples/MAX32662/I2C_MNGR/main.c index f4325d57bf7..1aa0f187cbd 100644 --- a/Examples/MAX32662/I2C_MNGR/main.c +++ b/Examples/MAX32662/I2C_MNGR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/I2C_MNGR/project.mk b/Examples/MAX32662/I2C_MNGR/project.mk index c006c3ef927..c00f7984c3a 100644 --- a/Examples/MAX32662/I2C_MNGR/project.mk +++ b/Examples/MAX32662/I2C_MNGR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/I2C_SCAN/.vscode/README.md b/Examples/MAX32662/I2C_SCAN/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/I2C_SCAN/.vscode/README.md +++ b/Examples/MAX32662/I2C_SCAN/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/I2C_SCAN/.vscode/settings.json b/Examples/MAX32662/I2C_SCAN/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/I2C_SCAN/.vscode/settings.json +++ b/Examples/MAX32662/I2C_SCAN/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/I2C_SCAN/Makefile b/Examples/MAX32662/I2C_SCAN/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/I2C_SCAN/Makefile +++ b/Examples/MAX32662/I2C_SCAN/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/I2C_SCAN/main.c b/Examples/MAX32662/I2C_SCAN/main.c index d12b76f0e5d..c01b3b61d91 100644 --- a/Examples/MAX32662/I2C_SCAN/main.c +++ b/Examples/MAX32662/I2C_SCAN/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -46,7 +45,7 @@ typedef enum { FAILED, PASSED } test_t; uint8_t counter = 0; // ***************************************************************************** -int main() +int main(void) { printf("\n******** I2C SLAVE ADDRESS SCANNER *********\n"); printf("\nThis example finds the addresses of any I2C Slave devices connected to the"); diff --git a/Examples/MAX32662/I2C_SCAN/project.mk b/Examples/MAX32662/I2C_SCAN/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/I2C_SCAN/project.mk +++ b/Examples/MAX32662/I2C_SCAN/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/I2C_Sensor/.vscode/README.md b/Examples/MAX32662/I2C_Sensor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/I2C_Sensor/.vscode/README.md +++ b/Examples/MAX32662/I2C_Sensor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/I2C_Sensor/.vscode/settings.json b/Examples/MAX32662/I2C_Sensor/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/I2C_Sensor/.vscode/settings.json +++ b/Examples/MAX32662/I2C_Sensor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/I2C_Sensor/Makefile b/Examples/MAX32662/I2C_Sensor/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/I2C_Sensor/Makefile +++ b/Examples/MAX32662/I2C_Sensor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/I2C_Sensor/main.c b/Examples/MAX32662/I2C_Sensor/main.c index 59cef950d03..51131833f6a 100644 --- a/Examples/MAX32662/I2C_Sensor/main.c +++ b/Examples/MAX32662/I2C_Sensor/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/I2C_Sensor/project.mk b/Examples/MAX32662/I2C_Sensor/project.mk index 3c3d48bae58..10189356cf4 100644 --- a/Examples/MAX32662/I2C_Sensor/project.mk +++ b/Examples/MAX32662/I2C_Sensor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/I2S/.vscode/README.md b/Examples/MAX32662/I2S/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/I2S/.vscode/README.md +++ b/Examples/MAX32662/I2S/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/I2S/.vscode/settings.json b/Examples/MAX32662/I2S/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/I2S/.vscode/settings.json +++ b/Examples/MAX32662/I2S/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/I2S/Makefile b/Examples/MAX32662/I2S/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/I2S/Makefile +++ b/Examples/MAX32662/I2S/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/I2S/main.c b/Examples/MAX32662/I2S/main.c index 5e4c490d81f..e6c275cc8c7 100644 --- a/Examples/MAX32662/I2S/main.c +++ b/Examples/MAX32662/I2S/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -63,7 +62,7 @@ void tx_complete_cb(int ch, int err) } /*****************************************************************/ -int main() +int main(void) { int err; printf("\n\n****************** I2S Transmission Example ******************\n"); diff --git a/Examples/MAX32662/I2S/project.mk b/Examples/MAX32662/I2S/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/I2S/project.mk +++ b/Examples/MAX32662/I2S/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/ICC/.vscode/README.md b/Examples/MAX32662/ICC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/ICC/.vscode/README.md +++ b/Examples/MAX32662/ICC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/ICC/.vscode/settings.json b/Examples/MAX32662/ICC/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/ICC/.vscode/settings.json +++ b/Examples/MAX32662/ICC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/ICC/Makefile b/Examples/MAX32662/ICC/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/ICC/Makefile +++ b/Examples/MAX32662/ICC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/ICC/main.c b/Examples/MAX32662/ICC/main.c index 319f542761b..d6160e798a9 100644 --- a/Examples/MAX32662/ICC/main.c +++ b/Examples/MAX32662/ICC/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/ICC/project.mk b/Examples/MAX32662/ICC/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/ICC/project.mk +++ b/Examples/MAX32662/ICC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/Info_Block_Usecase/.vscode/README.md b/Examples/MAX32662/Info_Block_Usecase/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/Info_Block_Usecase/.vscode/README.md +++ b/Examples/MAX32662/Info_Block_Usecase/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/Info_Block_Usecase/.vscode/settings.json b/Examples/MAX32662/Info_Block_Usecase/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/Info_Block_Usecase/.vscode/settings.json +++ b/Examples/MAX32662/Info_Block_Usecase/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/Info_Block_Usecase/Makefile b/Examples/MAX32662/Info_Block_Usecase/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/Info_Block_Usecase/Makefile +++ b/Examples/MAX32662/Info_Block_Usecase/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/Info_Block_Usecase/main.c b/Examples/MAX32662/Info_Block_Usecase/main.c index 87241481d9f..3d3c6d839fd 100644 --- a/Examples/MAX32662/Info_Block_Usecase/main.c +++ b/Examples/MAX32662/Info_Block_Usecase/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Info_Block_Usecase/project.mk b/Examples/MAX32662/Info_Block_Usecase/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/Info_Block_Usecase/project.mk +++ b/Examples/MAX32662/Info_Block_Usecase/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/LP/.vscode/README.md b/Examples/MAX32662/LP/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/LP/.vscode/README.md +++ b/Examples/MAX32662/LP/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/LP/.vscode/settings.json b/Examples/MAX32662/LP/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/LP/.vscode/settings.json +++ b/Examples/MAX32662/LP/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/LP/Makefile b/Examples/MAX32662/LP/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/LP/Makefile +++ b/Examples/MAX32662/LP/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/LP/lp-nonsecure.ld b/Examples/MAX32662/LP/lp-nonsecure.ld index 746a8155f03..69bab256308 100644 --- a/Examples/MAX32662/LP/lp-nonsecure.ld +++ b/Examples/MAX32662/LP/lp-nonsecure.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/LP/lp-sla.ld b/Examples/MAX32662/LP/lp-sla.ld index 077b3b5f29c..5d2673d8c86 100644 --- a/Examples/MAX32662/LP/lp-sla.ld +++ b/Examples/MAX32662/LP/lp-sla.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/LP/main.c b/Examples/MAX32662/LP/main.c index cfd2b602fd5..b820eca261f 100644 --- a/Examples/MAX32662/LP/main.c +++ b/Examples/MAX32662/LP/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/LP/project.mk b/Examples/MAX32662/LP/project.mk index e8d6a1d1c73..dafa0c1edb8 100644 --- a/Examples/MAX32662/LP/project.mk +++ b/Examples/MAX32662/LP/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/Library_Generate/.vscode/README.md b/Examples/MAX32662/Library_Generate/.vscode/README.md index e2e9a1a6522..a740741c3ab 100644 --- a/Examples/MAX32662/Library_Generate/.vscode/README.md +++ b/Examples/MAX32662/Library_Generate/.vscode/README.md @@ -7,11 +7,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) * If it's not in the README, check the UG. * If it's not in the UG, open a ticket! -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -38,7 +38,7 @@ The steps below are also available in video form in "Understanding Artificial In 2. Run the installer executable, and ensure that "Visual Studio Code Support" is enabled for your installation. - ![Selected Components](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/installer_components.JPG) + ![Selected Components](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/installer_components.JPG) 3. Finish the MSDK installation, taking note of where the MSDK was installed. @@ -54,7 +54,7 @@ The steps below are also available in video form in "Understanding Artificial In 9. Type "open settings json" and select the "Preferences: Open Settings (JSON)" option (_not_ the "Preferences: Open _Default_ Settings (JSON)"). This will open your user settings.json file in VS Code's editor. - ![Open Settings JSON Command](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/open_settings_json.jpg) + ![Open Settings JSON Command](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/open_settings_json.jpg) 10. Add the entries below into your user settings.json file. @@ -82,7 +82,7 @@ This section covers basic usage of the VSCode-Maxim project files. For document Visual Studio Code is built around a "working directory" paradigm. The editor is always rooted in a working directory, and the main mechanism for changing that directory is `File -> Open Folder...`. -![File -> Open Folder](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/file_openfolder.JPG) +![File -> Open Folder](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/file_openfolder.JPG) As a result, you'll notice that there is no "New Project" mechanism. A "project" in VS Code is simply a folder. It will look inside of the opened folder for a `.vscode` _sub_-folder to load project-specific settings from. @@ -90,11 +90,11 @@ A project that is configured for VS Code will have, at minimum, a .vscode sub-fo Ex: -![Example Directory Contents](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/opening_projects_2.jpg) +![Example Directory Contents](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/opening_projects_2.jpg) ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MSDK installation. @@ -102,7 +102,7 @@ Additionally, empty project templates and a drag-and-drop folder for "injecting" Once a project is opened 4 available build tasks will become available via `Terminal > Run Build task...` or the shortcut `Ctrl+Shift+B`. These tasks are configured by the `.vscode/task.json` file. -![Build Tasks Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/buildtasks.JPG) +![Build Tasks Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/buildtasks.JPG) #### Build @@ -138,7 +138,7 @@ Once a project is opened 4 available build tasks will become available via `Term ### Debugging -![Debug Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger.JPG) +![Debug Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger.JPG) Debugging is enabled by Visual Studio Code's integrated debugger. Launch configurations can be found in the `.vscode/launch.json` file. @@ -162,11 +162,11 @@ In general, the MAX-series microcontrollers have the following debugger limitati 3. Launch the debugger with `Run > Start Debugging`, with the shortcut `F5`, or via the `Run and Debug` window (Ctrl + Shift + D) and the green "launch" arrow. - ![Debug Tab](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_window.JPG) + ![Debug Tab](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_window.JPG) 4. The debugger will launch a GDB client & OpenOCD server, reset the microcontroller, and should break on entry into `main`. - ![Debugger Break on Main](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_breakmain.JPG) + ![Debugger Break on Main](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_breakmain.JPG) #### Using the Debugger @@ -174,13 +174,13 @@ In general, the MAX-series microcontrollers have the following debugger limitati The main interface for the debugger is the debugger control bar: -![Debugger Control Bar Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_bar.JPG) +![Debugger Control Bar Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_bar.JPG) `Continue | Step Over | Step Into | Step Out | Restart | Stop` Breakpoints can be set by clicking in the space next to the line number in a source code file. A red dot indicates a line to break on. Breakpoints can be removed by clicking on them again. Ex: -![Breakpoint](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/breakpoint.JPG) +![Breakpoint](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/breakpoint.JPG) ## Project Configuration @@ -190,7 +190,7 @@ Breakpoints can be set by clicking in the space next to the line number in a sou **When a change is made to this file, VS Code should be reloaded with CTRL+SHIFT+P -> Reload Window (or alternatively restarted completely) to force a re-parse.** -![Reload Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/reload_window.JPG) +![Reload Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/reload_window.JPG) The default project configuration should work for most use cases as long as `"target"` and `"board"` are set correctly. @@ -227,7 +227,7 @@ The following configuration options are available: * ... can be found in the `Libraries/Boards` folder of the MSDK * For example, the supported options for the MAX78000 are `"EvKit_V1"`, `"FTHR_RevA"`, and `"MAXREFDES178"`. - ![MAX78000 Boards](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/78000_boards.JPG) + ![MAX78000 Boards](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/78000_boards.JPG) ### Advanced Config Options @@ -353,7 +353,7 @@ A project's build system is managed by two files found in the project's root dir * `Makefile` * `project.mk` -![Files are located in the root directory](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) +![Files are located in the root directory](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) When the command... @@ -416,7 +416,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the @@ -540,7 +540,7 @@ If you want to start from scratch, take this option. ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/Library_Generate/Makefile b/Examples/MAX32662/Library_Generate/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/Library_Generate/Makefile +++ b/Examples/MAX32662/Library_Generate/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/Library_Generate/gpiolib.c b/Examples/MAX32662/Library_Generate/gpiolib.c index 5c8845edc78..252f6df4c44 100644 --- a/Examples/MAX32662/Library_Generate/gpiolib.c +++ b/Examples/MAX32662/Library_Generate/gpiolib.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Library_Generate/gpiolib.h b/Examples/MAX32662/Library_Generate/gpiolib.h index 2feb8775eb5..42607ee6234 100644 --- a/Examples/MAX32662/Library_Generate/gpiolib.h +++ b/Examples/MAX32662/Library_Generate/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Library_Generate/project.mk b/Examples/MAX32662/Library_Generate/project.mk index 01dcd9fbb2a..b5729be6ef0 100644 --- a/Examples/MAX32662/Library_Generate/project.mk +++ b/Examples/MAX32662/Library_Generate/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/Library_Use/.vscode/README.md b/Examples/MAX32662/Library_Use/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/Library_Use/.vscode/README.md +++ b/Examples/MAX32662/Library_Use/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/Library_Use/.vscode/settings.json b/Examples/MAX32662/Library_Use/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/Library_Use/.vscode/settings.json +++ b/Examples/MAX32662/Library_Use/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/Library_Use/Makefile b/Examples/MAX32662/Library_Use/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/Library_Use/Makefile +++ b/Examples/MAX32662/Library_Use/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/Library_Use/lib/include/gpiolib.h b/Examples/MAX32662/Library_Use/lib/include/gpiolib.h index e9a417727ca..137c0595559 100644 --- a/Examples/MAX32662/Library_Use/lib/include/gpiolib.h +++ b/Examples/MAX32662/Library_Use/lib/include/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Library_Use/main.c b/Examples/MAX32662/Library_Use/main.c index a9c20ec444f..c686476d185 100644 --- a/Examples/MAX32662/Library_Use/main.c +++ b/Examples/MAX32662/Library_Use/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Library_Use/project.mk b/Examples/MAX32662/Library_Use/project.mk index f724d98b790..759fc12f1eb 100644 --- a/Examples/MAX32662/Library_Use/project.mk +++ b/Examples/MAX32662/Library_Use/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/RTC/.vscode/README.md b/Examples/MAX32662/RTC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/RTC/.vscode/README.md +++ b/Examples/MAX32662/RTC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/RTC/.vscode/settings.json b/Examples/MAX32662/RTC/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/RTC/.vscode/settings.json +++ b/Examples/MAX32662/RTC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/RTC/Makefile b/Examples/MAX32662/RTC/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/RTC/Makefile +++ b/Examples/MAX32662/RTC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/RTC/main.c b/Examples/MAX32662/RTC/main.c index f38cdfff06b..2a4a15ca470 100644 --- a/Examples/MAX32662/RTC/main.c +++ b/Examples/MAX32662/RTC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -99,12 +98,12 @@ void RTC_IRQHandler(void) } volatile int buttonPressed = 0; -void buttonHandler() +void buttonHandler(void) { buttonPressed = 1; } -void printTime() +void printTime(void) { int day, hr, min, err; uint32_t sec, rtc_readout; diff --git a/Examples/MAX32662/RTC/project.mk b/Examples/MAX32662/RTC/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/RTC/project.mk +++ b/Examples/MAX32662/RTC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/RTC_Backup/.vscode/README.md b/Examples/MAX32662/RTC_Backup/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/RTC_Backup/.vscode/README.md +++ b/Examples/MAX32662/RTC_Backup/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/RTC_Backup/.vscode/settings.json b/Examples/MAX32662/RTC_Backup/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/RTC_Backup/.vscode/settings.json +++ b/Examples/MAX32662/RTC_Backup/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/RTC_Backup/Makefile b/Examples/MAX32662/RTC_Backup/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/RTC_Backup/Makefile +++ b/Examples/MAX32662/RTC_Backup/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/RTC_Backup/main.c b/Examples/MAX32662/RTC_Backup/main.c index 4546cf54010..d3a826272b1 100644 --- a/Examples/MAX32662/RTC_Backup/main.c +++ b/Examples/MAX32662/RTC_Backup/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -61,7 +60,7 @@ void RTC_IRQHandler(void) {} // ***************************************************************************** -void rescheduleAlarm() +void rescheduleAlarm(void) { uint32_t time; int flags = MXC_RTC_GetFlags(); @@ -87,7 +86,7 @@ void rescheduleAlarm() } // ***************************************************************************** -void printTime() +void printTime(void) { int day, hr, min; uint32_t sec; @@ -108,7 +107,7 @@ void printTime() } // ***************************************************************************** -int configureRTC() +int configureRTC(void) { int rtcTrim; diff --git a/Examples/MAX32662/RTC_Backup/project.mk b/Examples/MAX32662/RTC_Backup/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/RTC_Backup/project.mk +++ b/Examples/MAX32662/RTC_Backup/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/SCPA_OTP_Dump/.vscode/README.md b/Examples/MAX32662/SCPA_OTP_Dump/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/SCPA_OTP_Dump/.vscode/README.md +++ b/Examples/MAX32662/SCPA_OTP_Dump/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/SCPA_OTP_Dump/.vscode/settings.json b/Examples/MAX32662/SCPA_OTP_Dump/.vscode/settings.json index cf04965252f..7669d0913eb 100755 --- a/Examples/MAX32662/SCPA_OTP_Dump/.vscode/settings.json +++ b/Examples/MAX32662/SCPA_OTP_Dump/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/SCPA_OTP_Dump/Makefile b/Examples/MAX32662/SCPA_OTP_Dump/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/SCPA_OTP_Dump/Makefile +++ b/Examples/MAX32662/SCPA_OTP_Dump/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/SCPA_OTP_Dump/README.md b/Examples/MAX32662/SCPA_OTP_Dump/README.md index 699d8a59a0d..cc31346999d 100644 --- a/Examples/MAX32662/SCPA_OTP_Dump/README.md +++ b/Examples/MAX32662/SCPA_OTP_Dump/README.md @@ -18,11 +18,15 @@ PROJ_CFLAGS+=-DMAX32662_A1 ### Project Usage -Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. +Universal instructions on building this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +NOTE: This SCP Applet example project cannot be flashed and debugged like a regular example. It must be sent to the ROM bootloader using the SCP protocol. The MSDK offers Secure Bootloader Tools (SBT) in the `Tools/SBT` folder, and the `send_scp` utility is used to send the SCP packets to the device. + +See the [Secure Boot Tools User Guide](https://pdfserv.maximintegrated.com/en/an/ug7637-secure-boot-tools.pdf) for additional documentation. ### Project-Specific Build Notes -(None - this project builds as a standard example) +This project targets `scpa` builds by default (see [project.mk](project.mk)), which generates SCP packets for the application in the `build/scp_packets` folder. ## Required Connections @@ -30,9 +34,9 @@ Universal instructions on building, flashing, and debugging this project can be - Open a console (Powershell or bash) then send scp packages to device. ## Expected Output - ` - send_scp -c -i UART -s scp_packets\packet.list" - ` +``` +$ send_scp -c -i UART -s build/scp_packets/packet.list + [==================================================== ] 73% @@ -109,3 +113,4 @@ Please wait, reading data...
Disconnected !
SCP session OK
+``` \ No newline at end of file diff --git a/Examples/MAX32662/SCPA_OTP_Dump/main.c b/Examples/MAX32662/SCPA_OTP_Dump/main.c index e8afe8cff23..5f891efeb30 100644 --- a/Examples/MAX32662/SCPA_OTP_Dump/main.c +++ b/Examples/MAX32662/SCPA_OTP_Dump/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/SCPA_OTP_Dump/project.mk b/Examples/MAX32662/SCPA_OTP_Dump/project.mk index a25fd08271c..325aa173dad 100644 --- a/Examples/MAX32662/SCPA_OTP_Dump/project.mk +++ b/Examples/MAX32662/SCPA_OTP_Dump/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/SCPA_OTP_Dump/utils.c b/Examples/MAX32662/SCPA_OTP_Dump/utils.c index ae02a263b80..63e6ae19fbf 100644 --- a/Examples/MAX32662/SCPA_OTP_Dump/utils.c +++ b/Examples/MAX32662/SCPA_OTP_Dump/utils.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/SCPA_OTP_Dump/utils.h b/Examples/MAX32662/SCPA_OTP_Dump/utils.h index 146ca4d2b5f..c8e8e4c3c50 100644 --- a/Examples/MAX32662/SCPA_OTP_Dump/utils.h +++ b/Examples/MAX32662/SCPA_OTP_Dump/utils.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/SPI/.vscode/README.md b/Examples/MAX32662/SPI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/SPI/.vscode/README.md +++ b/Examples/MAX32662/SPI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/SPI/.vscode/settings.json b/Examples/MAX32662/SPI/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/SPI/.vscode/settings.json +++ b/Examples/MAX32662/SPI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/SPI/Makefile b/Examples/MAX32662/SPI/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/SPI/Makefile +++ b/Examples/MAX32662/SPI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/SPI/main.c b/Examples/MAX32662/SPI/main.c index b9a532e3c57..0dd243fb5a0 100644 --- a/Examples/MAX32662/SPI/main.c +++ b/Examples/MAX32662/SPI/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/SPI/project.mk b/Examples/MAX32662/SPI/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/SPI/project.mk +++ b/Examples/MAX32662/SPI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/SPI_MasterSlave/.vscode/README.md b/Examples/MAX32662/SPI_MasterSlave/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/SPI_MasterSlave/.vscode/README.md +++ b/Examples/MAX32662/SPI_MasterSlave/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/SPI_MasterSlave/.vscode/settings.json b/Examples/MAX32662/SPI_MasterSlave/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/SPI_MasterSlave/.vscode/settings.json +++ b/Examples/MAX32662/SPI_MasterSlave/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/SPI_MasterSlave/Makefile b/Examples/MAX32662/SPI_MasterSlave/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/SPI_MasterSlave/Makefile +++ b/Examples/MAX32662/SPI_MasterSlave/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/SPI_MasterSlave/main.c b/Examples/MAX32662/SPI_MasterSlave/main.c index 18c1fbfc132..02fd977eb59 100644 --- a/Examples/MAX32662/SPI_MasterSlave/main.c +++ b/Examples/MAX32662/SPI_MasterSlave/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/SPI_MasterSlave/project.mk b/Examples/MAX32662/SPI_MasterSlave/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/SPI_MasterSlave/project.mk +++ b/Examples/MAX32662/SPI_MasterSlave/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/TMR/.vscode/README.md b/Examples/MAX32662/TMR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/TMR/.vscode/README.md +++ b/Examples/MAX32662/TMR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/TMR/.vscode/settings.json b/Examples/MAX32662/TMR/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/TMR/.vscode/settings.json +++ b/Examples/MAX32662/TMR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/TMR/Makefile b/Examples/MAX32662/TMR/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/TMR/Makefile +++ b/Examples/MAX32662/TMR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/TMR/main.c b/Examples/MAX32662/TMR/main.c index 8c93d8bed18..385f4e49952 100644 --- a/Examples/MAX32662/TMR/main.c +++ b/Examples/MAX32662/TMR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -41,8 +40,8 @@ //#define SLEEP_MODE // Uncomment to enable sleep mode // Parameters for PWM output -#define OST_CLOCK_SOURCE MXC_TMR_32M_CLK // \ref mxc_tmr_clock_t -#define PWM_CLOCK_SOURCE MXC_TMR_8M_CLK // \ref mxc_tmr_clock_t +#define OST_CLOCK_SOURCE MXC_TMR_ERFO_CLK // \ref mxc_tmr_clock_t +#define PWM_CLOCK_SOURCE MXC_TMR_IBRO_CLK // \ref mxc_tmr_clock_t #define CONT_CLOCK_SOURCE MXC_TMR_APB_CLK // \ref mxc_tmr_clock_t // Parameters for Continuous timer @@ -72,7 +71,7 @@ mxc_gpio_cfg_t ost_pin; #endif /***** Functions *****/ -void PWMTimer() +void PWMTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; // to configure timer @@ -113,14 +112,14 @@ void PWMTimer() } // Toggles GPIO when continuous timer repeats -void ContinuousTimerHandler() +void ContinuousTimerHandler(void) { // Clear interrupt MXC_TMR_ClearFlags(CONT_TIMER); LED_Toggle(0); } -void ContinuousTimer() +void ContinuousTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; @@ -158,7 +157,7 @@ void ContinuousTimer() printf("Continuous timer started.\n\n"); } -void OneshotTimerHandler() +void OneshotTimerHandler(void) { MXC_GPIO_OutClr(ost_pin.port, ost_pin.mask); @@ -170,7 +169,7 @@ void OneshotTimerHandler() } } -void OneshotTimer() +void OneshotTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; diff --git a/Examples/MAX32662/TMR/project.mk b/Examples/MAX32662/TMR/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/TMR/project.mk +++ b/Examples/MAX32662/TMR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/Temp_Monitor/.vscode/README.md b/Examples/MAX32662/Temp_Monitor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/Temp_Monitor/.vscode/README.md +++ b/Examples/MAX32662/Temp_Monitor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/Temp_Monitor/.vscode/settings.json b/Examples/MAX32662/Temp_Monitor/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/Temp_Monitor/.vscode/settings.json +++ b/Examples/MAX32662/Temp_Monitor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/Temp_Monitor/Makefile b/Examples/MAX32662/Temp_Monitor/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/Temp_Monitor/Makefile +++ b/Examples/MAX32662/Temp_Monitor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/Temp_Monitor/main.c b/Examples/MAX32662/Temp_Monitor/main.c index 88c6003f917..567b684bcaa 100644 --- a/Examples/MAX32662/Temp_Monitor/main.c +++ b/Examples/MAX32662/Temp_Monitor/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Temp_Monitor/project.mk b/Examples/MAX32662/Temp_Monitor/project.mk index d1502946590..cef482ae3dc 100644 --- a/Examples/MAX32662/Temp_Monitor/project.mk +++ b/Examples/MAX32662/Temp_Monitor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/Temp_Monitor/temp_monitor.c b/Examples/MAX32662/Temp_Monitor/temp_monitor.c index 6c0fdd45b26..0c475abd7eb 100644 --- a/Examples/MAX32662/Temp_Monitor/temp_monitor.c +++ b/Examples/MAX32662/Temp_Monitor/temp_monitor.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/Temp_Monitor/temp_monitor.h b/Examples/MAX32662/Temp_Monitor/temp_monitor.h index 011b7e03514..9276b46744f 100644 --- a/Examples/MAX32662/Temp_Monitor/temp_monitor.h +++ b/Examples/MAX32662/Temp_Monitor/temp_monitor.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/UART/.vscode/README.md b/Examples/MAX32662/UART/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/UART/.vscode/README.md +++ b/Examples/MAX32662/UART/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/UART/.vscode/settings.json b/Examples/MAX32662/UART/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/UART/.vscode/settings.json +++ b/Examples/MAX32662/UART/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/UART/Makefile b/Examples/MAX32662/UART/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/UART/Makefile +++ b/Examples/MAX32662/UART/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/UART/main.c b/Examples/MAX32662/UART/main.c index 1e39647e493..84ebecf3d73 100644 --- a/Examples/MAX32662/UART/main.c +++ b/Examples/MAX32662/UART/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/UART/project.mk b/Examples/MAX32662/UART/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/UART/project.mk +++ b/Examples/MAX32662/UART/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/UART_Wakeup/.vscode/README.md b/Examples/MAX32662/UART_Wakeup/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/UART_Wakeup/.vscode/README.md +++ b/Examples/MAX32662/UART_Wakeup/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/UART_Wakeup/.vscode/settings.json b/Examples/MAX32662/UART_Wakeup/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/UART_Wakeup/.vscode/settings.json +++ b/Examples/MAX32662/UART_Wakeup/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/UART_Wakeup/Makefile b/Examples/MAX32662/UART_Wakeup/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/UART_Wakeup/Makefile +++ b/Examples/MAX32662/UART_Wakeup/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/UART_Wakeup/main.c b/Examples/MAX32662/UART_Wakeup/main.c index f3497b52d8e..b9b4499bd64 100644 --- a/Examples/MAX32662/UART_Wakeup/main.c +++ b/Examples/MAX32662/UART_Wakeup/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/UART_Wakeup/project.mk b/Examples/MAX32662/UART_Wakeup/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/UART_Wakeup/project.mk +++ b/Examples/MAX32662/UART_Wakeup/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/UCL/.vscode/README.md b/Examples/MAX32662/UCL/.vscode/README.md index f57d4364851..cc0783881d1 100644 --- a/Examples/MAX32662/UCL/.vscode/README.md +++ b/Examples/MAX32662/UCL/.vscode/README.md @@ -4,14 +4,14 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) -* [Wiki](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/wiki) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) +* [Wiki](https://github.com/analogdevicesinc/VSCode-Maxim/wiki) * If it's not in the readme, check the wiki. * If it's not in the wiki, open a ticket! ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. The following features are supported: @@ -91,7 +91,7 @@ Ex: ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MaximSDK installation. @@ -413,7 +413,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the diff --git a/Examples/MAX32662/UCL/Makefile b/Examples/MAX32662/UCL/Makefile index 9a5787a5a79..b3645764bfd 100644 --- a/Examples/MAX32662/UCL/Makefile +++ b/Examples/MAX32662/UCL/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -25,7 +24,7 @@ # in "project.mk", on the command-line, or with system environment # variables. -# See https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# See https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # for more detailed instructions on how to use this system. # The detailed instructions mentioned above are easier to read than @@ -375,7 +374,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/UCL/project.mk b/Examples/MAX32662/UCL/project.mk index 62c6aa45bf9..63192db80bd 100644 --- a/Examples/MAX32662/UCL/project.mk +++ b/Examples/MAX32662/UCL/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/Watchdog/.vscode/README.md b/Examples/MAX32662/Watchdog/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/Watchdog/.vscode/README.md +++ b/Examples/MAX32662/Watchdog/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/Watchdog/.vscode/settings.json b/Examples/MAX32662/Watchdog/.vscode/settings.json index 8c8cbe1465a..b60011a283d 100755 --- a/Examples/MAX32662/Watchdog/.vscode/settings.json +++ b/Examples/MAX32662/Watchdog/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/Watchdog/Makefile b/Examples/MAX32662/Watchdog/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/Watchdog/Makefile +++ b/Examples/MAX32662/Watchdog/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/Watchdog/main.c b/Examples/MAX32662/Watchdog/main.c index 26b7a17158c..782ad487d92 100644 --- a/Examples/MAX32662/Watchdog/main.c +++ b/Examples/MAX32662/Watchdog/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -68,7 +67,7 @@ volatile int pb_int; /***** Functions *****/ // ***************************************************************************** -void watchdogHandler() +void watchdogHandler(void) { MXC_WDT_ClearIntFlag(MXC_WDT0); printf("\nWATCHDOG INTERRUPT TRIGGERED! \n"); @@ -81,7 +80,7 @@ void WDT_IRQHandler(void) } // ***************************************************************************** -void SW1_Callback() +void SW1_Callback(void) { pb_int = 1; // Signal to main loop } diff --git a/Examples/MAX32662/Watchdog/project.mk b/Examples/MAX32662/Watchdog/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32662/Watchdog/project.mk +++ b/Examples/MAX32662/Watchdog/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/WearLeveling/.vscode/README.md b/Examples/MAX32662/WearLeveling/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32662/WearLeveling/.vscode/README.md +++ b/Examples/MAX32662/WearLeveling/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32662/WearLeveling/.vscode/settings.json b/Examples/MAX32662/WearLeveling/.vscode/settings.json index 8dc31d77df3..83b94ef9030 100755 --- a/Examples/MAX32662/WearLeveling/.vscode/settings.json +++ b/Examples/MAX32662/WearLeveling/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32662/WearLeveling/Makefile b/Examples/MAX32662/WearLeveling/Makefile index 1878fbdeb19..866c252d39a 100644 --- a/Examples/MAX32662/WearLeveling/Makefile +++ b/Examples/MAX32662/WearLeveling/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32662/WearLeveling/include/cli.h b/Examples/MAX32662/WearLeveling/include/cli.h index f43a41f16bd..a491ed55a49 100644 --- a/Examples/MAX32662/WearLeveling/include/cli.h +++ b/Examples/MAX32662/WearLeveling/include/cli.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/WearLeveling/include/file.h b/Examples/MAX32662/WearLeveling/include/file.h index 21dbbe6cd50..943c00b5c0f 100644 --- a/Examples/MAX32662/WearLeveling/include/file.h +++ b/Examples/MAX32662/WearLeveling/include/file.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/WearLeveling/include/flash.h b/Examples/MAX32662/WearLeveling/include/flash.h index 588fc84302f..107fa8a001d 100644 --- a/Examples/MAX32662/WearLeveling/include/flash.h +++ b/Examples/MAX32662/WearLeveling/include/flash.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/WearLeveling/include/main.h b/Examples/MAX32662/WearLeveling/include/main.h index 8f85fddd8b5..7147f6dfeb2 100644 --- a/Examples/MAX32662/WearLeveling/include/main.h +++ b/Examples/MAX32662/WearLeveling/include/main.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/WearLeveling/main.c b/Examples/MAX32662/WearLeveling/main.c index e0fed8e6f2a..4a4ef4a2705 100644 --- a/Examples/MAX32662/WearLeveling/main.c +++ b/Examples/MAX32662/WearLeveling/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/WearLeveling/project.mk b/Examples/MAX32662/WearLeveling/project.mk index 3137986a32e..cddf68e1a9d 100644 --- a/Examples/MAX32662/WearLeveling/project.mk +++ b/Examples/MAX32662/WearLeveling/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32662/WearLeveling/src/cli.c b/Examples/MAX32662/WearLeveling/src/cli.c index 488f3413dee..ea27a00faa5 100644 --- a/Examples/MAX32662/WearLeveling/src/cli.c +++ b/Examples/MAX32662/WearLeveling/src/cli.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/WearLeveling/src/file.c b/Examples/MAX32662/WearLeveling/src/file.c index dec9a57200f..ddb03186181 100644 --- a/Examples/MAX32662/WearLeveling/src/file.c +++ b/Examples/MAX32662/WearLeveling/src/file.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32662/WearLeveling/src/flash.c b/Examples/MAX32662/WearLeveling/src/flash.c index 38ca8a38e0e..2615d076b9e 100644 --- a/Examples/MAX32662/WearLeveling/src/flash.c +++ b/Examples/MAX32662/WearLeveling/src/flash.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/ADC/.vscode/README.md b/Examples/MAX32665/ADC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ADC/.vscode/README.md +++ b/Examples/MAX32665/ADC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ADC/.vscode/settings.json b/Examples/MAX32665/ADC/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/ADC/.vscode/settings.json +++ b/Examples/MAX32665/ADC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ADC/Makefile b/Examples/MAX32665/ADC/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/ADC/Makefile +++ b/Examples/MAX32665/ADC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ADC/main.c b/Examples/MAX32665/ADC/main.c index ecbfc647294..2a794e741dd 100644 --- a/Examples/MAX32665/ADC/main.c +++ b/Examples/MAX32665/ADC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/ADC/project.mk b/Examples/MAX32665/ADC/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/ADC/project.mk +++ b/Examples/MAX32665/ADC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/ADT7320_TempMonitor/.vscode/README.md b/Examples/MAX32665/ADT7320_TempMonitor/.vscode/README.md old mode 100644 new mode 100755 index 90fbcefc65d..5b355bd51c9 --- a/Examples/MAX32665/ADT7320_TempMonitor/.vscode/README.md +++ b/Examples/MAX32665/ADT7320_TempMonitor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ADT7320_TempMonitor/.vscode/settings.json b/Examples/MAX32665/ADT7320_TempMonitor/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/ADT7320_TempMonitor/.vscode/settings.json +++ b/Examples/MAX32665/ADT7320_TempMonitor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ADT7320_TempMonitor/Makefile b/Examples/MAX32665/ADT7320_TempMonitor/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/ADT7320_TempMonitor/Makefile +++ b/Examples/MAX32665/ADT7320_TempMonitor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ADT7320_TempMonitor/main.c b/Examples/MAX32665/ADT7320_TempMonitor/main.c index 91ede2b534a..8f57ce75bac 100644 --- a/Examples/MAX32665/ADT7320_TempMonitor/main.c +++ b/Examples/MAX32665/ADT7320_TempMonitor/main.c @@ -6,8 +6,7 @@ /****************************************************************************** * - * Copyright (C) 2024 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/ADT7320_TempMonitor/project.mk b/Examples/MAX32665/ADT7320_TempMonitor/project.mk index 1247070a389..84c74f1f7bd 100644 --- a/Examples/MAX32665/ADT7320_TempMonitor/project.mk +++ b/Examples/MAX32665/ADT7320_TempMonitor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/AES/.vscode/README.md b/Examples/MAX32665/AES/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/AES/.vscode/README.md +++ b/Examples/MAX32665/AES/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/AES/.vscode/settings.json b/Examples/MAX32665/AES/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/AES/.vscode/settings.json +++ b/Examples/MAX32665/AES/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/AES/Makefile b/Examples/MAX32665/AES/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/AES/Makefile +++ b/Examples/MAX32665/AES/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/AES/main.c b/Examples/MAX32665/AES/main.c index 1c3789a6bba..c3109f55d4d 100644 --- a/Examples/MAX32665/AES/main.c +++ b/Examples/MAX32665/AES/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/AES/project.mk b/Examples/MAX32665/AES/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/AES/project.mk +++ b/Examples/MAX32665/AES/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/ARM-DSP/README.md b/Examples/MAX32665/ARM-DSP/README.md index 9bb2d50bedc..5e1d116671b 100644 --- a/Examples/MAX32665/ARM-DSP/README.md +++ b/Examples/MAX32665/ARM-DSP/README.md @@ -8,7 +8,7 @@ The projects in this folder are ports of ARM's DSP example projects that can be Debug launch configurations are included in each project, and should appear in the "Favorites" menu in Eclipse. -Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop) +Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop) ## Software diff --git a/Examples/MAX32665/ARM-DSP/arm_bayes_example/.vscode/README.md b/Examples/MAX32665/ARM-DSP/arm_bayes_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ARM-DSP/arm_bayes_example/.vscode/README.md +++ b/Examples/MAX32665/ARM-DSP/arm_bayes_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ARM-DSP/arm_bayes_example/.vscode/settings.json b/Examples/MAX32665/ARM-DSP/arm_bayes_example/.vscode/settings.json index bc2660f8793..1fab9898258 100755 --- a/Examples/MAX32665/ARM-DSP/arm_bayes_example/.vscode/settings.json +++ b/Examples/MAX32665/ARM-DSP/arm_bayes_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ARM-DSP/arm_bayes_example/Makefile b/Examples/MAX32665/ARM-DSP/arm_bayes_example/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/ARM-DSP/arm_bayes_example/Makefile +++ b/Examples/MAX32665/ARM-DSP/arm_bayes_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ARM-DSP/arm_bayes_example/project.mk b/Examples/MAX32665/ARM-DSP/arm_bayes_example/project.mk index 22cc7b79319..fd9fea4c356 100644 --- a/Examples/MAX32665/ARM-DSP/arm_bayes_example/project.mk +++ b/Examples/MAX32665/ARM-DSP/arm_bayes_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/ARM-DSP/arm_class_marks_example/.vscode/README.md b/Examples/MAX32665/ARM-DSP/arm_class_marks_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ARM-DSP/arm_class_marks_example/.vscode/README.md +++ b/Examples/MAX32665/ARM-DSP/arm_class_marks_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ARM-DSP/arm_class_marks_example/.vscode/settings.json b/Examples/MAX32665/ARM-DSP/arm_class_marks_example/.vscode/settings.json index bc2660f8793..1fab9898258 100755 --- a/Examples/MAX32665/ARM-DSP/arm_class_marks_example/.vscode/settings.json +++ b/Examples/MAX32665/ARM-DSP/arm_class_marks_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ARM-DSP/arm_class_marks_example/Makefile b/Examples/MAX32665/ARM-DSP/arm_class_marks_example/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/ARM-DSP/arm_class_marks_example/Makefile +++ b/Examples/MAX32665/ARM-DSP/arm_class_marks_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c b/Examples/MAX32665/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c index 30f548bc888..2ea5e90d59a 100644 --- a/Examples/MAX32665/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c +++ b/Examples/MAX32665/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c @@ -139,7 +139,7 @@ uint32_t student_num; * Main f32 test function. It returns maximum marks secured and student number * ------------------------------------------------------------------------------- */ -int main() +int main(void) { #ifndef USE_STATIC_INIT diff --git a/Examples/MAX32665/ARM-DSP/arm_class_marks_example/project.mk b/Examples/MAX32665/ARM-DSP/arm_class_marks_example/project.mk index 22cc7b79319..fd9fea4c356 100644 --- a/Examples/MAX32665/ARM-DSP/arm_class_marks_example/project.mk +++ b/Examples/MAX32665/ARM-DSP/arm_class_marks_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/ARM-DSP/arm_convolution_example/.vscode/README.md b/Examples/MAX32665/ARM-DSP/arm_convolution_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ARM-DSP/arm_convolution_example/.vscode/README.md +++ b/Examples/MAX32665/ARM-DSP/arm_convolution_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ARM-DSP/arm_convolution_example/.vscode/settings.json b/Examples/MAX32665/ARM-DSP/arm_convolution_example/.vscode/settings.json index bc2660f8793..1fab9898258 100755 --- a/Examples/MAX32665/ARM-DSP/arm_convolution_example/.vscode/settings.json +++ b/Examples/MAX32665/ARM-DSP/arm_convolution_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ARM-DSP/arm_convolution_example/Makefile b/Examples/MAX32665/ARM-DSP/arm_convolution_example/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/ARM-DSP/arm_convolution_example/Makefile +++ b/Examples/MAX32665/ARM-DSP/arm_convolution_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ARM-DSP/arm_convolution_example/project.mk b/Examples/MAX32665/ARM-DSP/arm_convolution_example/project.mk index 22cc7b79319..fd9fea4c356 100644 --- a/Examples/MAX32665/ARM-DSP/arm_convolution_example/project.mk +++ b/Examples/MAX32665/ARM-DSP/arm_convolution_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md b/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md +++ b/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json b/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json index bc2660f8793..1fab9898258 100755 --- a/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json +++ b/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/Makefile b/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/Makefile +++ b/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/project.mk b/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/project.mk index 22cc7b79319..fd9fea4c356 100644 --- a/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/project.mk +++ b/Examples/MAX32665/ARM-DSP/arm_dotproduct_example_f32/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/.vscode/README.md b/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/.vscode/README.md +++ b/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/.vscode/settings.json b/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/.vscode/settings.json index bc2660f8793..1fab9898258 100755 --- a/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/.vscode/settings.json +++ b/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/Makefile b/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/Makefile +++ b/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/project.mk b/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/project.mk index 22cc7b79319..fd9fea4c356 100644 --- a/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/project.mk +++ b/Examples/MAX32665/ARM-DSP/arm_fft_bin_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/ARM-DSP/arm_fir_example/.vscode/README.md b/Examples/MAX32665/ARM-DSP/arm_fir_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ARM-DSP/arm_fir_example/.vscode/README.md +++ b/Examples/MAX32665/ARM-DSP/arm_fir_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ARM-DSP/arm_fir_example/.vscode/settings.json b/Examples/MAX32665/ARM-DSP/arm_fir_example/.vscode/settings.json index bc2660f8793..1fab9898258 100755 --- a/Examples/MAX32665/ARM-DSP/arm_fir_example/.vscode/settings.json +++ b/Examples/MAX32665/ARM-DSP/arm_fir_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ARM-DSP/arm_fir_example/Makefile b/Examples/MAX32665/ARM-DSP/arm_fir_example/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/ARM-DSP/arm_fir_example/Makefile +++ b/Examples/MAX32665/ARM-DSP/arm_fir_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ARM-DSP/arm_fir_example/project.mk b/Examples/MAX32665/ARM-DSP/arm_fir_example/project.mk index 22cc7b79319..fd9fea4c356 100644 --- a/Examples/MAX32665/ARM-DSP/arm_fir_example/project.mk +++ b/Examples/MAX32665/ARM-DSP/arm_fir_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md b/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md +++ b/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json b/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json index bc2660f8793..1fab9898258 100755 --- a/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json +++ b/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/Makefile b/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/Makefile +++ b/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/project.mk b/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/project.mk index 22cc7b79319..fd9fea4c356 100644 --- a/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/project.mk +++ b/Examples/MAX32665/ARM-DSP/arm_graphic_equalizer_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/.vscode/README.md b/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/.vscode/README.md +++ b/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/.vscode/settings.json b/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/.vscode/settings.json index bc2660f8793..1fab9898258 100755 --- a/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/.vscode/settings.json +++ b/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/Makefile b/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/Makefile +++ b/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/project.mk b/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/project.mk index 22cc7b79319..fd9fea4c356 100644 --- a/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/project.mk +++ b/Examples/MAX32665/ARM-DSP/arm_linear_interp_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/ARM-DSP/arm_matrix_example/.vscode/README.md b/Examples/MAX32665/ARM-DSP/arm_matrix_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ARM-DSP/arm_matrix_example/.vscode/README.md +++ b/Examples/MAX32665/ARM-DSP/arm_matrix_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ARM-DSP/arm_matrix_example/.vscode/settings.json b/Examples/MAX32665/ARM-DSP/arm_matrix_example/.vscode/settings.json index bc2660f8793..1fab9898258 100755 --- a/Examples/MAX32665/ARM-DSP/arm_matrix_example/.vscode/settings.json +++ b/Examples/MAX32665/ARM-DSP/arm_matrix_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ARM-DSP/arm_matrix_example/Makefile b/Examples/MAX32665/ARM-DSP/arm_matrix_example/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/ARM-DSP/arm_matrix_example/Makefile +++ b/Examples/MAX32665/ARM-DSP/arm_matrix_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ARM-DSP/arm_matrix_example/project.mk b/Examples/MAX32665/ARM-DSP/arm_matrix_example/project.mk index 22cc7b79319..fd9fea4c356 100644 --- a/Examples/MAX32665/ARM-DSP/arm_matrix_example/project.mk +++ b/Examples/MAX32665/ARM-DSP/arm_matrix_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/.vscode/README.md b/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/.vscode/README.md +++ b/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/.vscode/settings.json b/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/.vscode/settings.json index bc2660f8793..1fab9898258 100755 --- a/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/.vscode/settings.json +++ b/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/Makefile b/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/Makefile +++ b/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/project.mk b/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/project.mk index 22cc7b79319..fd9fea4c356 100644 --- a/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/project.mk +++ b/Examples/MAX32665/ARM-DSP/arm_signal_converge_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/.vscode/README.md b/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/.vscode/README.md +++ b/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/.vscode/settings.json b/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/.vscode/settings.json index bc2660f8793..1fab9898258 100755 --- a/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/.vscode/settings.json +++ b/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/Makefile b/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/Makefile +++ b/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/project.mk b/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/project.mk index 22cc7b79319..fd9fea4c356 100644 --- a/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/project.mk +++ b/Examples/MAX32665/ARM-DSP/arm_sin_cos_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/ARM-DSP/arm_svm_example/.vscode/README.md b/Examples/MAX32665/ARM-DSP/arm_svm_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ARM-DSP/arm_svm_example/.vscode/README.md +++ b/Examples/MAX32665/ARM-DSP/arm_svm_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ARM-DSP/arm_svm_example/.vscode/settings.json b/Examples/MAX32665/ARM-DSP/arm_svm_example/.vscode/settings.json index bc2660f8793..1fab9898258 100755 --- a/Examples/MAX32665/ARM-DSP/arm_svm_example/.vscode/settings.json +++ b/Examples/MAX32665/ARM-DSP/arm_svm_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ARM-DSP/arm_svm_example/Makefile b/Examples/MAX32665/ARM-DSP/arm_svm_example/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/ARM-DSP/arm_svm_example/Makefile +++ b/Examples/MAX32665/ARM-DSP/arm_svm_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ARM-DSP/arm_svm_example/project.mk b/Examples/MAX32665/ARM-DSP/arm_svm_example/project.mk index 22cc7b79319..fd9fea4c356 100644 --- a/Examples/MAX32665/ARM-DSP/arm_svm_example/project.mk +++ b/Examples/MAX32665/ARM-DSP/arm_svm_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/ARM-DSP/arm_variance_example/.vscode/README.md b/Examples/MAX32665/ARM-DSP/arm_variance_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ARM-DSP/arm_variance_example/.vscode/README.md +++ b/Examples/MAX32665/ARM-DSP/arm_variance_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ARM-DSP/arm_variance_example/.vscode/settings.json b/Examples/MAX32665/ARM-DSP/arm_variance_example/.vscode/settings.json index bc2660f8793..1fab9898258 100755 --- a/Examples/MAX32665/ARM-DSP/arm_variance_example/.vscode/settings.json +++ b/Examples/MAX32665/ARM-DSP/arm_variance_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ARM-DSP/arm_variance_example/Makefile b/Examples/MAX32665/ARM-DSP/arm_variance_example/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/ARM-DSP/arm_variance_example/Makefile +++ b/Examples/MAX32665/ARM-DSP/arm_variance_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ARM-DSP/arm_variance_example/project.mk b/Examples/MAX32665/ARM-DSP/arm_variance_example/project.mk index 22cc7b79319..fd9fea4c356 100644 --- a/Examples/MAX32665/ARM-DSP/arm_variance_example/project.mk +++ b/Examples/MAX32665/ARM-DSP/arm_variance_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/AUDIO_Playback/.vscode/README.md b/Examples/MAX32665/AUDIO_Playback/.vscode/README.md old mode 100644 new mode 100755 index 90fbcefc65d..5b355bd51c9 --- a/Examples/MAX32665/AUDIO_Playback/.vscode/README.md +++ b/Examples/MAX32665/AUDIO_Playback/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/AUDIO_Playback/.vscode/settings.json b/Examples/MAX32665/AUDIO_Playback/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/AUDIO_Playback/.vscode/settings.json +++ b/Examples/MAX32665/AUDIO_Playback/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/AUDIO_Playback/Makefile b/Examples/MAX32665/AUDIO_Playback/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/AUDIO_Playback/Makefile +++ b/Examples/MAX32665/AUDIO_Playback/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/AUDIO_Playback/audio.c b/Examples/MAX32665/AUDIO_Playback/audio.c index 0fb96d3f428..1dee562e62d 100644 --- a/Examples/MAX32665/AUDIO_Playback/audio.c +++ b/Examples/MAX32665/AUDIO_Playback/audio.c @@ -1,7 +1,6 @@ /****************************************************************************** * - * Copyright (C) 2024 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/AUDIO_Playback/audio.h b/Examples/MAX32665/AUDIO_Playback/audio.h index 9e730d67633..dcf3eb305f4 100644 --- a/Examples/MAX32665/AUDIO_Playback/audio.h +++ b/Examples/MAX32665/AUDIO_Playback/audio.h @@ -1,7 +1,6 @@ /****************************************************************************** * - * Copyright (C) 2024 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/AUDIO_Playback/audio_regs.h b/Examples/MAX32665/AUDIO_Playback/audio_regs.h index e4bcae9c0b6..e50b3b1fa77 100644 --- a/Examples/MAX32665/AUDIO_Playback/audio_regs.h +++ b/Examples/MAX32665/AUDIO_Playback/audio_regs.h @@ -5,8 +5,7 @@ /****************************************************************************** * - * Copyright (C) 2024 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/AUDIO_Playback/main.c b/Examples/MAX32665/AUDIO_Playback/main.c index b4bfb274b01..2a4c38b6e5b 100644 --- a/Examples/MAX32665/AUDIO_Playback/main.c +++ b/Examples/MAX32665/AUDIO_Playback/main.c @@ -1,7 +1,6 @@ /****************************************************************************** * - * Copyright (C) 2024 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -74,7 +73,7 @@ void AUDIO_IRQHandler(void) AUDIO->int_pcm_rx_clr |= 0xFFFFFFFF; } -int main() +int main(void) { int err; SystemCoreClockUpdate(); diff --git a/Examples/MAX32665/AUDIO_Playback/project.mk b/Examples/MAX32665/AUDIO_Playback/project.mk index dffb4f69953..9269e85f175 100644 --- a/Examples/MAX32665/AUDIO_Playback/project.mk +++ b/Examples/MAX32665/AUDIO_Playback/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Bluetooth/BLE4_ctr/.vscode/README.md b/Examples/MAX32665/Bluetooth/BLE4_ctr/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Bluetooth/BLE4_ctr/.vscode/README.md +++ b/Examples/MAX32665/Bluetooth/BLE4_ctr/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Bluetooth/BLE4_ctr/.vscode/settings.json b/Examples/MAX32665/Bluetooth/BLE4_ctr/.vscode/settings.json index 935e15b0056..94a81d4d5bb 100755 --- a/Examples/MAX32665/Bluetooth/BLE4_ctr/.vscode/settings.json +++ b/Examples/MAX32665/Bluetooth/BLE4_ctr/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Bluetooth/BLE4_ctr/Makefile b/Examples/MAX32665/Bluetooth/BLE4_ctr/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/Bluetooth/BLE4_ctr/Makefile +++ b/Examples/MAX32665/Bluetooth/BLE4_ctr/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Bluetooth/BLE4_ctr/README.md b/Examples/MAX32665/Bluetooth/BLE4_ctr/README.md index c4f5a8d9c5a..32639251728 100644 --- a/Examples/MAX32665/Bluetooth/BLE4_ctr/README.md +++ b/Examples/MAX32665/Bluetooth/BLE4_ctr/README.md @@ -2,7 +2,7 @@ Bluetooth version 4.2 controller, accepts HCI commands via Serial Port. -Refer to the [BLE4_ctr](../../../Libraries/Cordio/docs/Applications/BLE4_ctr.md) documentation in the Cordio Library. +Refer to the [BLE4_ctr](../../../../Libraries/Cordio/docs/Applications/BLE4_ctr.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32665/Bluetooth/BLE4_ctr/main.c b/Examples/MAX32665/Bluetooth/BLE4_ctr/main.c index cdcd9b61eeb..d477d982d98 100644 --- a/Examples/MAX32665/Bluetooth/BLE4_ctr/main.c +++ b/Examples/MAX32665/Bluetooth/BLE4_ctr/main.c @@ -33,6 +33,8 @@ #include "wsf_timer.h" #include "wsf_trace.h" #include "wsf_bufio.h" +#include "wsf_types.h" +#include "wsf_os.h" #include "bb_ble_sniffer_api.h" #include "pal_bb.h" #include "pal_cfg.h" @@ -130,7 +132,7 @@ static void mainWsfInit(void) * \return TRUE if there is token pending. */ /*************************************************************************************************/ -static bool_t mainCheckServiceTokens(void) +static bool mainCheckServiceTokens(void) { bool_t eventPending = FALSE; diff --git a/Examples/MAX32665/Bluetooth/BLE4_ctr/project.mk b/Examples/MAX32665/Bluetooth/BLE4_ctr/project.mk index 93aadf82923..314243765a7 100644 --- a/Examples/MAX32665/Bluetooth/BLE4_ctr/project.mk +++ b/Examples/MAX32665/Bluetooth/BLE4_ctr/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Bluetooth/BLE5_ctr/.vscode/README.md b/Examples/MAX32665/Bluetooth/BLE5_ctr/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Bluetooth/BLE5_ctr/.vscode/README.md +++ b/Examples/MAX32665/Bluetooth/BLE5_ctr/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Bluetooth/BLE5_ctr/.vscode/settings.json b/Examples/MAX32665/Bluetooth/BLE5_ctr/.vscode/settings.json index 935e15b0056..94a81d4d5bb 100755 --- a/Examples/MAX32665/Bluetooth/BLE5_ctr/.vscode/settings.json +++ b/Examples/MAX32665/Bluetooth/BLE5_ctr/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Bluetooth/BLE5_ctr/Makefile b/Examples/MAX32665/Bluetooth/BLE5_ctr/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/Bluetooth/BLE5_ctr/Makefile +++ b/Examples/MAX32665/Bluetooth/BLE5_ctr/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Bluetooth/BLE5_ctr/README.md b/Examples/MAX32665/Bluetooth/BLE5_ctr/README.md index 191671182f5..111b9ec84e2 100644 --- a/Examples/MAX32665/Bluetooth/BLE5_ctr/README.md +++ b/Examples/MAX32665/Bluetooth/BLE5_ctr/README.md @@ -2,7 +2,7 @@ Bluetooth version 5.2 controller, accepts HCI commands via Serial Port. -Refer to the [BLE5_ctr](../../../Libraries/Cordio/docs/Applications/BLE5_ctr.md) documentation in the Cordio Library. +Refer to the [BLE5_ctr](../../../../Libraries/Cordio/docs/Applications/BLE5_ctr.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32665/Bluetooth/BLE5_ctr/main.c b/Examples/MAX32665/Bluetooth/BLE5_ctr/main.c index 4df76f046c3..62ff05a1c54 100644 --- a/Examples/MAX32665/Bluetooth/BLE5_ctr/main.c +++ b/Examples/MAX32665/Bluetooth/BLE5_ctr/main.c @@ -33,6 +33,8 @@ #include "wsf_timer.h" #include "wsf_trace.h" #include "wsf_bufio.h" +#include "wsf_types.h" +#include "wsf_os.h" #include "wsf_cs.h" #include "bb_ble_sniffer_api.h" #include "pal_bb.h" @@ -162,7 +164,7 @@ static void mainWsfInit(void) * \return TRUE if there is token pending. */ /*************************************************************************************************/ -static bool_t mainCheckServiceTokens(void) +static bool mainCheckServiceTokens(void) { bool_t eventPending = FALSE; diff --git a/Examples/MAX32665/Bluetooth/BLE5_ctr/project.mk b/Examples/MAX32665/Bluetooth/BLE5_ctr/project.mk index ee96f2a59d2..660a7f2f194 100644 --- a/Examples/MAX32665/Bluetooth/BLE5_ctr/project.mk +++ b/Examples/MAX32665/Bluetooth/BLE5_ctr/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/.vscode/README.md b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/.vscode/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/.vscode/settings.json b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/.vscode/settings.json index 9ab1aa5492d..767b54772d1 100755 --- a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/.vscode/settings.json +++ b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/FreeRTOSConfig.h b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/FreeRTOSConfig.h index fedd41c24f0..6f1e66845f7 100644 --- a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/FreeRTOSConfig.h +++ b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/Makefile b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/Makefile +++ b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/README.md b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/README.md index 0d746bf523e..3b1b3278dbd 100644 --- a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/README.md @@ -1,7 +1,7 @@ # BLE_FreeRTOS A basic getting started application for BLE and FreeRTOS. -Refer to the [BLE_FreeRTOS](../../../Libraries/Cordio/docs/Applications/BLE_FreeRTOS.md) documentation in the Cordio Library. +Refer to the [BLE_FreeRTOS](../../../../Libraries/Cordio/docs/Applications/BLE_FreeRTOS.md) documentation in the Cordio Library. ## Software @@ -26,4 +26,4 @@ viewing the trace messages and interacting with the application. Port uses setti - Stop bits : 1 - HW Flow Control : No - SW Flow Control : No -* Enabling tickless mode in **FreeRTOSConfig.h** allows the device to enter deep sleep/stanby when idle \ No newline at end of file +* Enabling tickless mode in **FreeRTOSConfig.h** allows the device to enter deep sleep/stanby when idle diff --git a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/freertos_tickless.c b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/freertos_tickless.c index c6318ccd6ec..6d09bf46b8f 100644 --- a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/freertos_tickless.c +++ b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/freertos_tickless.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -42,6 +41,7 @@ #include "pal_timer.h" #include "pal_uart.h" #include "pal_bb.h" +#include "wsf_trace.h" #define MAX_WUT_TICKS (configRTC_TICK_RATE_HZ) /* Maximum deep sleep time, units of 32 kHz ticks */ #define MIN_WUT_TICKS 100 /* Minimum deep sleep time, units of 32 kHz ticks */ @@ -240,6 +240,7 @@ void vPortSuppressTicksAndSleep(TickType_t xExpectedIdleTime) } /* Disable SysTick */ + SysTick->CTRL &= ~(SysTick_CTRL_ENABLE_Msk); /* Enable wakeup from WUT */ @@ -291,11 +292,11 @@ void vPortSuppressTicksAndSleep(TickType_t xExpectedIdleTime) if (schTimerActive) { /* Stop the BLE scheduler timer */ PalTimerStop(); - - /* Shutdown BB hardware */ - PalBbDisable(); } + /* Shutdown BB hardware */ + PalBbDisable(); + LED_Off(SLEEP_LED); LED_Off(DEEPSLEEP_LED); @@ -304,12 +305,11 @@ void vPortSuppressTicksAndSleep(TickType_t xExpectedIdleTime) LED_On(DEEPSLEEP_LED); LED_On(SLEEP_LED); - if (schTimerActive) { - /* Enable and restore the BB hardware */ - PalBbEnable(); - - PalBbRestore(); + /* Enable and restore the BB hardware */ + PalBbEnable(); + PalBbRestore(); + if (schTimerActive) { /* Restore the BB counter */ MXC_WUT_RestoreBBClock(BB_CLK_RATE_HZ); diff --git a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/main.c b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/main.c index 4ef03c67326..b93742e6974 100644 --- a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/main.c +++ b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/project.mk b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/project.mk index e93f8d9f18d..9408dbd8ee7 100644 --- a/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/project.mk +++ b/Examples/MAX32665/Bluetooth/BLE_FreeRTOS/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Bluetooth/BLE_LR_Central/.vscode/README.md b/Examples/MAX32665/Bluetooth/BLE_LR_Central/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Bluetooth/BLE_LR_Central/.vscode/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_LR_Central/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Bluetooth/BLE_LR_Central/.vscode/settings.json b/Examples/MAX32665/Bluetooth/BLE_LR_Central/.vscode/settings.json index fa99c602093..6c57f23a69d 100755 --- a/Examples/MAX32665/Bluetooth/BLE_LR_Central/.vscode/settings.json +++ b/Examples/MAX32665/Bluetooth/BLE_LR_Central/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Bluetooth/BLE_LR_Central/Makefile b/Examples/MAX32665/Bluetooth/BLE_LR_Central/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/Bluetooth/BLE_LR_Central/Makefile +++ b/Examples/MAX32665/Bluetooth/BLE_LR_Central/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Bluetooth/BLE_LR_Central/lr_central_main.c b/Examples/MAX32665/Bluetooth/BLE_LR_Central/lr_central_main.c index de247b8a38a..2fed4b5569c 100644 --- a/Examples/MAX32665/Bluetooth/BLE_LR_Central/lr_central_main.c +++ b/Examples/MAX32665/Bluetooth/BLE_LR_Central/lr_central_main.c @@ -1373,7 +1373,7 @@ void DatcHandler(wsfEventMask_t event, wsfMsgHdr_t *pMsg) * \return None. */ /*************************************************************************************************/ -static void datcInitSvcHdlList() +static void datcInitSvcHdlList(void) { uint8_t i; diff --git a/Examples/MAX32665/Bluetooth/BLE_LR_Central/main.c b/Examples/MAX32665/Bluetooth/BLE_LR_Central/main.c index 07691c39a1e..e18016b6532 100644 --- a/Examples/MAX32665/Bluetooth/BLE_LR_Central/main.c +++ b/Examples/MAX32665/Bluetooth/BLE_LR_Central/main.c @@ -67,6 +67,8 @@ Macros **************************************************************************************************/ +#warning "(ERROR): Exmaple is deprecated and non functional!" + /*! \brief UART TX buffer size */ #define PLATFORM_UART_TERMINAL_BUFFER_SIZE 2048U #define DEFAULT_TX_POWER 4 /* dBm */ @@ -84,8 +86,6 @@ static LlRtCfg_t mainLlRtCfg; volatile int wutTrimComplete; -extern uint8_t appCodedPhyDemo; - /************************************************************************************************** Functions **************************************************************************************************/ @@ -245,7 +245,6 @@ int main(void) APP_TRACE_INFO0("Long distance scanner demo (CODED PHY S=8)"); APP_TRACE_INFO1("BT_VER=%d", BT_VER); APP_TRACE_INFO0("=========================================="); - appCodedPhyDemo = 1; #if defined(HCI_TR_EXACTLE) && (HCI_TR_EXACTLE == 1) WsfCsEnter(); diff --git a/Examples/MAX32665/Bluetooth/BLE_LR_Central/project.mk b/Examples/MAX32665/Bluetooth/BLE_LR_Central/project.mk index 08dab61991b..39f371c58e9 100644 --- a/Examples/MAX32665/Bluetooth/BLE_LR_Central/project.mk +++ b/Examples/MAX32665/Bluetooth/BLE_LR_Central/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Bluetooth/BLE_LR_Central/sdsc_api.h b/Examples/MAX32665/Bluetooth/BLE_LR_Central/sdsc_api.h index 40f5fd0f4c3..5aa73a6b954 100644 --- a/Examples/MAX32665/Bluetooth/BLE_LR_Central/sdsc_api.h +++ b/Examples/MAX32665/Bluetooth/BLE_LR_Central/sdsc_api.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/BLE_LR_Central/sdsc_main.c b/Examples/MAX32665/Bluetooth/BLE_LR_Central/sdsc_main.c index 3995fd80ecb..f91ae944de8 100644 --- a/Examples/MAX32665/Bluetooth/BLE_LR_Central/sdsc_main.c +++ b/Examples/MAX32665/Bluetooth/BLE_LR_Central/sdsc_main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/.vscode/README.md b/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/.vscode/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/.vscode/settings.json b/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/.vscode/settings.json index 935e15b0056..94a81d4d5bb 100755 --- a/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/.vscode/settings.json +++ b/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/Makefile b/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/Makefile +++ b/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/main.c b/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/main.c index 737b6312990..d6bceb705f7 100644 --- a/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/main.c +++ b/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/main.c @@ -75,8 +75,7 @@ /************************************************************************************************** Global Variables **************************************************************************************************/ -extern uint8_t appCodedPhyDemo; - +#warning "(ERROR): Exmaple is deprecated and non functional!" /*! \brief Pool runtime configuration. */ static wsfBufPoolDesc_t mainPoolDesc[] = { { 16, 8 }, { 32, 4 }, { 192, 8 }, { 256, 8 } }; @@ -240,7 +239,6 @@ int main(void) APP_TRACE_INFO0("Long range demo (coded-PHY s=8)"); APP_TRACE_INFO0("==============================="); APP_TRACE_INFO1("BT_VER: %d", BT_VER); - appCodedPhyDemo = 1; #if defined(HCI_TR_EXACTLE) && (HCI_TR_EXACTLE == 1) WsfCsEnter(); diff --git a/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/project.mk b/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/project.mk index 5dc90656a72..1026a5ef2d6 100644 --- a/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/project.mk +++ b/Examples/MAX32665/Bluetooth/BLE_LR_Peripheral/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Bluetooth/BLE_datc/.vscode/README.md b/Examples/MAX32665/Bluetooth/BLE_datc/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Bluetooth/BLE_datc/.vscode/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_datc/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Bluetooth/BLE_datc/.vscode/settings.json b/Examples/MAX32665/Bluetooth/BLE_datc/.vscode/settings.json index 935e15b0056..94a81d4d5bb 100755 --- a/Examples/MAX32665/Bluetooth/BLE_datc/.vscode/settings.json +++ b/Examples/MAX32665/Bluetooth/BLE_datc/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Bluetooth/BLE_datc/Makefile b/Examples/MAX32665/Bluetooth/BLE_datc/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/Bluetooth/BLE_datc/Makefile +++ b/Examples/MAX32665/Bluetooth/BLE_datc/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Bluetooth/BLE_datc/README.md b/Examples/MAX32665/Bluetooth/BLE_datc/README.md index 0cc9e582681..1c22ef1b7fa 100644 --- a/Examples/MAX32665/Bluetooth/BLE_datc/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_datc/README.md @@ -1,6 +1,6 @@ # BLE_datc -Refer to the [BLE_datc_dats](../../../Libraries/Cordio/docs/Applications/BLE_datc_dats.md) documentation in the Cordio Library. +Refer to the [BLE_datc_dats](../../../../Libraries/Cordio/docs/Applications/BLE_datc_dats.md) documentation in the Cordio Library. ## Software @@ -26,4 +26,3 @@ An arbitrary pin can be entered in the format `pin (connId) passkey` * The server is expected to enter the same connId and passkey to establish a secure connection and share bonding information * ***Note***: *Either the client or server can enter the passkey first. The peer device must then match.* - diff --git a/Examples/MAX32665/Bluetooth/BLE_datc/datc_main.c b/Examples/MAX32665/Bluetooth/BLE_datc/datc_main.c index 160e8dc8033..c5443651ef1 100644 --- a/Examples/MAX32665/Bluetooth/BLE_datc/datc_main.c +++ b/Examples/MAX32665/Bluetooth/BLE_datc/datc_main.c @@ -147,7 +147,7 @@ static const appSecCfg_t datcSecCfg = { DM_KEY_DIST_IRK, /*! Initiator key distribution flags */ DM_KEY_DIST_LTK | DM_KEY_DIST_IRK, /*! Responder key distribution flags */ FALSE, /*! TRUE if Out-of-band pairing data is present */ - TRUE /*! TRUE to initiate security upon connection */ + INIT_SECURITY /*! TRUE to initiate security upon connection */ }; /* OOB UART parameters */ @@ -569,9 +569,9 @@ static void datcScanReport(dmEvt_t *pMsg) if (!connect && ((pData = DmFindAdType(DM_ADV_TYPE_LOCAL_NAME, pMsg->scanReport.len, pMsg->scanReport.pData)) != NULL)) { /* check length and device name */ - if (pData[DM_AD_LEN_IDX] >= 4 && (pData[DM_AD_DATA_IDX] == 'D') && - (pData[DM_AD_DATA_IDX + 1] == 'A') && (pData[DM_AD_DATA_IDX + 2] == 'T') && - (pData[DM_AD_DATA_IDX + 3] == 'S')) { + char advName[] = ADV_NAME; + if (pData[DM_AD_LEN_IDX] == sizeof(advName) && + !strncmp(advName, (char *)&(pData[DM_AD_DATA_IDX]), sizeof(advName))) { connect = TRUE; } } @@ -1350,7 +1350,7 @@ void DatcHandler(wsfEventMask_t event, wsfMsgHdr_t *pMsg) * \return None. */ /*************************************************************************************************/ -static void datcInitSvcHdlList() +static void datcInitSvcHdlList(void) { uint8_t i; diff --git a/Examples/MAX32665/Bluetooth/BLE_datc/project.mk b/Examples/MAX32665/Bluetooth/BLE_datc/project.mk index 08dab61991b..c2892244e1a 100644 --- a/Examples/MAX32665/Bluetooth/BLE_datc/project.mk +++ b/Examples/MAX32665/Bluetooth/BLE_datc/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -24,3 +41,11 @@ INIT_CENTRAL = 1 # Set to 1 to enable serial port trace messages # Set to 2 to enable verbose messages TRACE = 1 + +# set ADVTISEMENT name you want to connect +ADV_NAME?=DATS +PROJ_CFLAGS += -DADV_NAME=\"$(ADV_NAME)\" + +### CONFIGURE security +# /*! TRUE to initiate security upon connection*/ +PROJ_CFLAGS += -DINIT_SECURITY=TRUE \ No newline at end of file diff --git a/Examples/MAX32665/Bluetooth/BLE_datc/sdsc_api.h b/Examples/MAX32665/Bluetooth/BLE_datc/sdsc_api.h index b8da72ed4d5..1aee9b1780e 100644 --- a/Examples/MAX32665/Bluetooth/BLE_datc/sdsc_api.h +++ b/Examples/MAX32665/Bluetooth/BLE_datc/sdsc_api.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/BLE_datc/sdsc_main.c b/Examples/MAX32665/Bluetooth/BLE_datc/sdsc_main.c index 3995fd80ecb..f91ae944de8 100644 --- a/Examples/MAX32665/Bluetooth/BLE_datc/sdsc_main.c +++ b/Examples/MAX32665/Bluetooth/BLE_datc/sdsc_main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/BLE_dats/.vscode/README.md b/Examples/MAX32665/Bluetooth/BLE_dats/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Bluetooth/BLE_dats/.vscode/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_dats/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Bluetooth/BLE_dats/.vscode/settings.json b/Examples/MAX32665/Bluetooth/BLE_dats/.vscode/settings.json index 935e15b0056..94a81d4d5bb 100755 --- a/Examples/MAX32665/Bluetooth/BLE_dats/.vscode/settings.json +++ b/Examples/MAX32665/Bluetooth/BLE_dats/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Bluetooth/BLE_dats/Makefile b/Examples/MAX32665/Bluetooth/BLE_dats/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/Bluetooth/BLE_dats/Makefile +++ b/Examples/MAX32665/Bluetooth/BLE_dats/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Bluetooth/BLE_dats/README.md b/Examples/MAX32665/Bluetooth/BLE_dats/README.md index a009eba192d..ad9c67fb50a 100644 --- a/Examples/MAX32665/Bluetooth/BLE_dats/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_dats/README.md @@ -1,6 +1,6 @@ # BLE_dats -Refer to the [BLE_datc_dats](../../../Libraries/Cordio/docs/Applications/BLE_datc_dats.md) documentation in the Cordio Library. +Refer to the [BLE_datc_dats](../../../../Libraries/Cordio/docs/Applications/BLE_datc_dats.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32665/Bluetooth/BLE_dats/dats_main.c b/Examples/MAX32665/Bluetooth/BLE_dats/dats_main.c index 65fb72c0e98..7e907555f2f 100644 --- a/Examples/MAX32665/Bluetooth/BLE_dats/dats_main.c +++ b/Examples/MAX32665/Bluetooth/BLE_dats/dats_main.c @@ -121,7 +121,7 @@ static const appSecCfg_t datsSecCfg = { DM_KEY_DIST_IRK, /*! Initiator key distribution flags */ DM_KEY_DIST_LTK | DM_KEY_DIST_IRK, /*! Responder key distribution flags */ FALSE, /*! TRUE if Out-of-band pairing data is present */ - FALSE /*! TRUE to initiate security upon connection */ + INIT_SECURITY /*! TRUE to initiate security upon connection */ }; /* OOB UART parameters */ @@ -214,15 +214,8 @@ static const uint8_t datsAdvDataDisc[] = { }; /*! scan data, discoverable mode */ -static const uint8_t datsScanDataDisc[] = { - /*! device name */ - 5, /*! length */ - DM_ADV_TYPE_LOCAL_NAME, /*! AD type */ - 'D', - 'A', - 'T', - 'S' -}; +static const uint8_t deviceName[] = ADV_NAME; +static uint8_t datsScanDataDisc[sizeof(deviceName) + 2]; /************************************************************************************************** Client Characteristic Configuration Descriptors @@ -537,7 +530,9 @@ static void datsSetup(dmEvt_t *pMsg) { /* Initialize control information */ datsCb.restoringResList = FALSE; - + memcpy(&datsScanDataDisc[2], deviceName, sizeof(deviceName)); + datsScanDataDisc[0] = sizeof(deviceName); + datsScanDataDisc[1] = DM_ADV_TYPE_LOCAL_NAME; /* set advertising and scan response data for discoverable mode */ AppAdvSetData(APP_ADV_DATA_DISCOVERABLE, sizeof(datsAdvDataDisc), (uint8_t *)datsAdvDataDisc); AppAdvSetData(APP_SCAN_DATA_DISCOVERABLE, sizeof(datsScanDataDisc), @@ -759,7 +754,7 @@ void DatsHandlerInit(wsfHandlerId_t handlerId) AppGetBdAddr(addr); APP_TRACE_INFO6("MAC Addr: %02x:%02x:%02x:%02x:%02x:%02x", addr[5], addr[4], addr[3], addr[2], addr[1], addr[0]); - APP_TRACE_INFO1("Adv local name: %s", &datsScanDataDisc[2]); + APP_TRACE_INFO1("Adv local name: %s", deviceName); /* store handler ID */ datsCb.handlerId = handlerId; diff --git a/Examples/MAX32665/Bluetooth/BLE_dats/project.mk b/Examples/MAX32665/Bluetooth/BLE_dats/project.mk index ad2f370e321..78a28c2bea0 100644 --- a/Examples/MAX32665/Bluetooth/BLE_dats/project.mk +++ b/Examples/MAX32665/Bluetooth/BLE_dats/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -28,3 +45,12 @@ TRACE = 1 # Add services directory to build IPATH += services VPATH += services + + +# SET advertising name +ADV_NAME?=DATS +PROJ_CFLAGS += -DADV_NAME=\"$(ADV_NAME)\" + +### CONFIGURE security +# /*! TRUE to initiate security upon connection*/ +PROJ_CFLAGS += -DINIT_SECURITY=FALSE diff --git a/Examples/MAX32665/Bluetooth/BLE_dats/services/svc_sds.c b/Examples/MAX32665/Bluetooth/BLE_dats/services/svc_sds.c index 5d90f9e2d3b..9206e12b4b8 100644 --- a/Examples/MAX32665/Bluetooth/BLE_dats/services/svc_sds.c +++ b/Examples/MAX32665/Bluetooth/BLE_dats/services/svc_sds.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/BLE_dats/services/svc_sds.h b/Examples/MAX32665/Bluetooth/BLE_dats/services/svc_sds.h index 5d9d99ac78c..fd61762dca6 100644 --- a/Examples/MAX32665/Bluetooth/BLE_dats/services/svc_sds.h +++ b/Examples/MAX32665/Bluetooth/BLE_dats/services/svc_sds.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/.cproject b/Examples/MAX32665/Bluetooth/BLE_fcc/.cproject deleted file mode 100644 index c648cc4106c..00000000000 --- a/Examples/MAX32665/Bluetooth/BLE_fcc/.cproject +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/.project b/Examples/MAX32665/Bluetooth/BLE_fcc/.project deleted file mode 100644 index 2f22644c90e..00000000000 --- a/Examples/MAX32665/Bluetooth/BLE_fcc/.project +++ /dev/null @@ -1,26 +0,0 @@ - - - BLE_fcc - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32665/Bluetooth/BLE_fcc/.settings/org.eclipse.cdt.core.prefs deleted file mode 100644 index f108fb50bf8..00000000000 --- a/Examples/MAX32665/Bluetooth/BLE_fcc/.settings/org.eclipse.cdt.core.prefs +++ /dev/null @@ -1,15 +0,0 @@ -eclipse.preferences.version=1 -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=BLE_fcc -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32665 -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/.vscode/README.md b/Examples/MAX32665/Bluetooth/BLE_fcc/.vscode/README.md deleted file mode 100755 index 90fbcefc65d..00000000000 --- a/Examples/MAX32665/Bluetooth/BLE_fcc/.vscode/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# VSCode-Maxim - -_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ - -## Quick Links - -* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) - -## Introduction - -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). - -The following features are supported: - -* Code editing with intellisense down to the register level -* Code compilation with the ability to easily re-target a project for different microcontrollers and boards -* Flashing programs -* GUI and command-line debugging - -## Dependencies - -* [Visual Studio Code](https://code.visualstudio.com/) - * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) -* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) - -## Installation - -Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. - -See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. - -## Usage - -See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. - -## Issue Tracker - -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. - -New issues should contain _at minimum_ the following information: - -* Visual Studio Code version #s (see `Help -> About`) -* C/C++ Extension version # -* Target microcontroller and evaluation platform -* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/.vscode/settings.json b/Examples/MAX32665/Bluetooth/BLE_fcc/.vscode/settings.json deleted file mode 100755 index 935e15b0056..00000000000 --- a/Examples/MAX32665/Bluetooth/BLE_fcc/.vscode/settings.json +++ /dev/null @@ -1,101 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32665", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32665.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/include", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources/stack/cfg", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-apps/include", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-model/include", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-profile/include", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-profiles/include", - "${config:MAXIM_PATH}/Libraries/Cordio/controller/include/ble", - "${config:MAXIM_PATH}/Libraries/Cordio/controller/include/common", - "${config:MAXIM_PATH}/Libraries/Cordio/platform/include", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources/hci/dual_chip", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources/hci/exactle", - "${config:MAXIM_PATH}/Libraries/Cordio/wsf/include", - "${config:MAXIM_PATH}/Libraries/Cordio/wsf/include/util" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-apps/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-apps/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-model/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-profile/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-profiles/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/controller/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/wsf/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/platform/targets/maxim/max32665/sources" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/BLE_fcc.launch b/Examples/MAX32665/Bluetooth/BLE_fcc/BLE_fcc.launch deleted file mode 100644 index 36193f79c66..00000000000 --- a/Examples/MAX32665/Bluetooth/BLE_fcc/BLE_fcc.launch +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/Makefile b/Examples/MAX32665/Bluetooth/BLE_fcc/Makefile deleted file mode 100644 index a9dc1157557..00000000000 --- a/Examples/MAX32665/Bluetooth/BLE_fcc/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32665 -TARGET_UC := MAX32665 -TARGET_LC := max32665 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/README.md b/Examples/MAX32665/Bluetooth/BLE_fcc/README.md deleted file mode 100644 index 54a01b97911..00000000000 --- a/Examples/MAX32665/Bluetooth/BLE_fcc/README.md +++ /dev/null @@ -1,23 +0,0 @@ -# BLE_fcc - -Simple serial port console for FCC testing. -Refer to [BLE_fcc](../../../Libraries/Cordio/docs/Applications/BLE_fcc.md) documentation in the Cordio Library. - -## Software - -### Project Usage - -Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. - -## Required Connections -* Connect a USB cable between the PC and the (USB/PWR - UART) connector. - -### Project-Specific Build Notes -* Setting `TRACE=1` in [**project.mk**](project.mk) initializes the on-board USB-to-UART adapter for -viewing the trace messages and interacting with the application. Port uses settings: - - Baud : 115200 - - Char size : 8 - - Parity : None - - Stop bits : 1 - - HW Flow Control : No - - SW Flow Control : No diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/main.c b/Examples/MAX32665/Bluetooth/BLE_fcc/main.c deleted file mode 100644 index afe83939b72..00000000000 --- a/Examples/MAX32665/Bluetooth/BLE_fcc/main.c +++ /dev/null @@ -1,582 +0,0 @@ -/*************************************************************************************************/ -/*! - * @file main.c - * @brief BLE project with simple serial console for FCC testing - * - * Copyright (c) 2013-2019 Arm Ltd. All Rights Reserved. - * - * Copyright (c) 2019-2020 Packetcraft, Inc. - * - * Portions Copyright (c) 2022-2023 Analog Devices, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/*************************************************************************************************/ - -#include -#include -#include "ll_init_api.h" -#include "chci_tr.h" -#include "lhci_api.h" -#include "hci_defs.h" -#include "wsf_assert.h" -#include "wsf_buf.h" -#include "wsf_cs.h" -#include "wsf_heap.h" -#include "wsf_timer.h" -#include "wsf_trace.h" -#include "wsf_bufio.h" -#include "bb_ble_sniffer_api.h" -#include "pal_bb.h" -#include "pal_cfg.h" -#include "tmr.h" - -/************************************************************************************************** - Definitions -**************************************************************************************************/ - -/*! \brief UART TX buffer size */ -#define PLATFORM_UART_TERMINAL_BUFFER_SIZE 2048U - -#define FREQ_HOP_PERIOD_US 20000 - -/* Bluetooth DBB registers */ -#define MXC_R_CONST_OUPUT *((volatile uint16_t *)(0x40052040)) -#define MXC_R_PATTERN_GEN *((volatile uint16_t *)(0x4005203C)) -#define MXC_R_TX_CTRL *((volatile uint16_t *)(0x4005101C)) - -/************************************************************************************************** - Global Variables -**************************************************************************************************/ - -/*! \brief Persistent BB runtime configuration. */ -static BbRtCfg_t mainBbRtCfg; - -/*! \brief Persistent LL runtime configuration. */ -static LlRtCfg_t mainLlRtCfg; - -static uint8_t phy = LL_PHY_LE_1M; -static uint8_t phy_str[16]; -static uint8_t txFreqHopCh; - -/************************************************************************************************** - Functions -**************************************************************************************************/ - -/*! \brief Physical layer functions. */ -extern void llc_api_set_txpower(int8_t power); -extern void dbb_seq_select_rf_channel(uint32_t rf_channel); -extern uint8_t dbb_seq_get_rfpower(int8_t rf_power); -extern void llc_api_tx_ldo_setup(void); -extern void llc_api_set_phy(uint8_t phy, uint8_t phy_options); - -extern volatile int8_t tx_rfpower_idx; -extern volatile int8_t tx_rfpower_on; - -/*************************************************************************************************/ -/*! - * \fn Get PHY String. - * - * \brief Convert the PHY definition to a string. - * - * \param phy PHY definition. - * - * \return Pointer to string describing the PHY. - */ -/*************************************************************************************************/ -static uint8_t *getPhyStr(void) -{ - switch (phy) { - case LL_TEST_PHY_LE_1M: - default: - memcpy(phy_str, "1M PHY", 7); - break; - case LL_TEST_PHY_LE_2M: - memcpy(phy_str, "2M PHY", 7); - break; - case LL_TEST_PHY_LE_CODED_S8: - memcpy(phy_str, "S8 PHY", 7); - break; - case LL_TEST_PHY_LE_CODED_S2: - memcpy(phy_str, "S2 PHY", 7); - break; - } - return phy_str; -} - -/*************************************************************************************************/ -/*! - * \fn Timer 2 interrupts handler. - * - * \brief Controls the frequency hopping. - * - * \param None. - * - * \return None. - */ -/*************************************************************************************************/ -void TMR2_IRQHandler(void) -{ - int res; - - MXC_TMR_TO_Clear(MXC_TMR2); - - /* Start the next channel */ - res = LlEnhancedTxTest(txFreqHopCh++, 255, LL_TEST_PKT_TYPE_AA, phy, 0); - if (res != LL_SUCCESS) - APP_TRACE_INFO2("res = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); - - /* Wrap the channels */ - if (txFreqHopCh == 40) - txFreqHopCh = 0; - - /* Restart the timeout */ - MXC_TMR_TO_Start(MXC_TMR2, FREQ_HOP_PERIOD_US); -} - -/*************************************************************************************************/ -/*! - * \fn Usage statement - * - * \brief Prints the usage statement. - * - * \param None. - * - * \return None. - */ -/*************************************************************************************************/ -void printUsage(void) -{ - APP_TRACE_INFO0("Usage: "); - APP_TRACE_INFO0(" (0) Transmit Continuous Modulated on RF channel 0 (2402 MHz)"); - APP_TRACE_INFO0(" (1) Transmit Continuous Modulated on RF channel 19 (2440 MHz)"); - APP_TRACE_INFO0(" (2) Transmit Continuous Modulated RF channel 39 (2480 MHz)"); - APP_TRACE_INFO0(" (3) Receive on RF channel 39 (2480 MHz)"); - APP_TRACE_INFO0(" (4) Set Transmit power"); - APP_TRACE_INFO0(" (5) Enable Constant Unmodulated TX"); - APP_TRACE_INFO0(" (6) Disable constant TX -- MUST be called after (5)"); - /* APP_TRACE_INFO0(" (7) Set PA value"); */ - APP_TRACE_INFO0(" (8) Set PHY"); - APP_TRACE_INFO0(" (9) TX Frequency Hop"); - APP_TRACE_INFO0(" (e) End transmission -- MUST be used after each (0-3, 9)"); - APP_TRACE_INFO0(" (u) Print usage"); -} - -/*************************************************************************************************/ -/*! - * \fn Process the Console RX - * - * \brief State machine for the console inputs. - * - * \param rxByte Character received from the console. - * - * \return None. - */ -/*************************************************************************************************/ -static void processConsoleRX(uint8_t rxByte) -{ - int res; - - /* Holds the state of the command and the parameter */ - static uint8_t cmd = 0; - static uint8_t param = 0; - - /* Determines if the incoming character is a command or a parameter */ - if (cmd == 0) - cmd = rxByte; - else - param = rxByte; - - switch (cmd) { - case '0': - - APP_TRACE_INFO1("Transmit RF channel 0 (2402M), 255 bytes/pkt, PRBS15, %s, forever ..", - getPhyStr()); - res = LlEnhancedTxTest(0, 255, LL_TEST_PKT_TYPE_PRBS15, phy, 0); - APP_TRACE_INFO2("res = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); - cmd = 0; - break; - - case '1': - - APP_TRACE_INFO1("Transmit RF channel 19 (2440M), 255 bytes/pkt, PRBS15, %s, forever ..", - getPhyStr()); - res = LlEnhancedTxTest(19, 255, LL_TEST_PKT_TYPE_PRBS15, phy, 0); - APP_TRACE_INFO2("res = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); - cmd = 0; - break; - - case '2': - - APP_TRACE_INFO1("Transmit RF channel 39 (2480M), 255 bytes/pkt, PRBS15, %s, forever ..", - getPhyStr()); - res = LlEnhancedTxTest(39, 255, LL_TEST_PKT_TYPE_PRBS15, phy, 0); - APP_TRACE_INFO2("res = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); - cmd = 0; - break; - - case '3': - - APP_TRACE_INFO1("Receive RF channel 39 (2480M), %s, forever ..", getPhyStr()); - res = LlEnhancedRxTest(39, phy, 0, 0); - APP_TRACE_INFO2("res = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); - cmd = 0; - break; - - case '4': - - if (param == 0) { - APP_TRACE_INFO0("Select transmit power"); - APP_TRACE_INFO0(" 0: -15 dBm"); - APP_TRACE_INFO0(" 1: -10 dBm"); - APP_TRACE_INFO0(" 2: -5 dBm"); - APP_TRACE_INFO0(" 3: -2 dBm"); - APP_TRACE_INFO0(" 4: 0 dBm"); - APP_TRACE_INFO0(" 5: 2 dBm"); - APP_TRACE_INFO0(" 6: 4.5 dBm"); - break; - } - - switch (param) { - case '0': - llc_api_set_txpower(-15); - LlSetAdvTxPower(-15); - APP_TRACE_INFO1("Power set to -15, Amp_coef = %x", dbb_seq_get_rfpower(-15)); - break; - case '1': - llc_api_set_txpower(-10); - LlSetAdvTxPower(-10); - APP_TRACE_INFO1("Power set to -10, Amp_coef = %x", dbb_seq_get_rfpower(-10)); - break; - case '2': - llc_api_set_txpower(-5); - LlSetAdvTxPower(-5); - APP_TRACE_INFO1("Power set to -5, Amp_coef = %x", dbb_seq_get_rfpower(-5)); - break; - case '3': - llc_api_set_txpower(-2); - LlSetAdvTxPower(-2); - APP_TRACE_INFO1("Power set to -2, Amp_coef = %x", dbb_seq_get_rfpower(-2)); - break; - case '4': - llc_api_set_txpower(0); - LlSetAdvTxPower(0); - APP_TRACE_INFO1("Power set to 0, Amp_coef = %x", dbb_seq_get_rfpower(0)); - break; - case '5': - llc_api_set_txpower(2); - LlSetAdvTxPower(2); - APP_TRACE_INFO1("Power set to 2, Amp_coef = %x", dbb_seq_get_rfpower(2)); - break; - case '6': - llc_api_set_txpower(4); - LlSetAdvTxPower(4); - APP_TRACE_INFO1("Power set to 4.5, Amp_coef = %x", dbb_seq_get_rfpower(4)); - break; - default: - APP_TRACE_INFO0("Invalid selection"); - break; - } - cmd = 0; - param = 0; - break; - - case '5': - if (param == 0) { - APP_TRACE_INFO0("Select transmit channel"); - APP_TRACE_INFO0(" 0: 0 (2402M)"); - APP_TRACE_INFO0(" 1: 19 (2440M)"); - APP_TRACE_INFO0(" 2: 33 (2468M)"); - APP_TRACE_INFO0(" 3: 36 (2474M)"); - APP_TRACE_INFO0(" 4: 39 (2480M)"); - break; - } - - switch (param) { - case '0': - dbb_seq_select_rf_channel(0); - APP_TRACE_INFO0("Channel set to 0 (2402M)"); - break; - case '1': - dbb_seq_select_rf_channel(19); - APP_TRACE_INFO0("Channel set to 19 (2440M)"); - break; - case '2': - dbb_seq_select_rf_channel(33); - APP_TRACE_INFO0("Channel set to 33 (2468M)"); - break; - case '3': - dbb_seq_select_rf_channel(36); - APP_TRACE_INFO0("Channel set to 36 (2474M)"); - break; - case '4': - dbb_seq_select_rf_channel(39); - APP_TRACE_INFO0("Channel set to 39 (2480M)"); - break; - default: - APP_TRACE_INFO0("Invalid selection"); - break; - } - - APP_TRACE_INFO0("Starting PRBS9 TX"); - - PalBbEnable(); - - llc_api_tx_ldo_setup(); - - /* Enable constant TX */ - MXC_R_TX_CTRL = 0x1; - - /* Enable pattern generator, set PRBS-9 */ - MXC_R_CONST_OUPUT = 0x0; - MXC_R_PATTERN_GEN = 0x4B; - - cmd = 0; - param = 0; - break; - - case '6': - APP_TRACE_INFO0("Disabling TX"); - - /* Disable constant TX */ - MXC_R_TX_CTRL = 0x2; - MXC_R_PATTERN_GEN = 0x48; - - PalBbDisable(); - - cmd = 0; - break; - - case '8': - if (param == 0) { - /* Set the PHY */ - APP_TRACE_INFO0("Select PHY"); - APP_TRACE_INFO0("1: 1M"); - APP_TRACE_INFO0("2: 2M"); - APP_TRACE_INFO0("3: S8"); - APP_TRACE_INFO0("4: S2"); - break; - } - - switch (param) { - case '1': - phy = LL_TEST_PHY_LE_1M; - APP_TRACE_INFO0("PHY set to 1M"); - break; - case '2': - phy = LL_TEST_PHY_LE_2M; - APP_TRACE_INFO0("PHY set to 2M"); - break; - case '3': - phy = LL_TEST_PHY_LE_CODED_S8; - APP_TRACE_INFO0("PHY set to S8"); - break; - case '4': - phy = LL_TEST_PHY_LE_CODED_S2; - APP_TRACE_INFO0("PHY set to S2"); - break; - default: - APP_TRACE_INFO0("Invalid selection"); - break; - } - - llc_api_set_phy(phy, BB_PHY_OPTIONS_DEFAULT); - - cmd = 0; - param = 0; - break; - case '9': - /* Frequency hopping TX */ - APP_TRACE_INFO0("Starting frequency hopping"); - NVIC_EnableIRQ(TMR2_IRQn); - MXC_TMR_TO_Start(MXC_TMR2, FREQ_HOP_PERIOD_US); - cmd = 0; - break; - - case 'E': - case 'e': - - APP_TRACE_INFO0("End test"); - MXC_TMR_Stop(MXC_TMR2); - LlEndTest(NULL); - cmd = 0; - break; - - case 'U': - case 'u': - printUsage(); - cmd = 0; - break; - - default: - APP_TRACE_INFO0("Invalid selection"); - cmd = 0; - param = 0; - break; - } -} - -/*************************************************************************************************/ -/*! - * \brief Load runtime configuration. - */ -/*************************************************************************************************/ -static void mainLoadConfiguration(void) -{ - PalBbLoadCfg((PalBbCfg_t *)&mainBbRtCfg); - LlGetDefaultRunTimeCfg(&mainLlRtCfg); - PalCfgLoadData(PAL_CFG_ID_LL_PARAM, &mainLlRtCfg.maxAdvSets, sizeof(LlRtCfg_t) - 9); - PalCfgLoadData(PAL_CFG_ID_BLE_PHY, &mainLlRtCfg.phy2mSup, 4); - - /* Set 5.1 requirements. */ - mainLlRtCfg.btVer = LL_VER_BT_CORE_SPEC_5_0; - - /* Set the 32k sleep clock accuracy into one of the following bins, default is 20 - HCI_CLOCK_500PPM - HCI_CLOCK_250PPM - HCI_CLOCK_150PPM - HCI_CLOCK_100PPM - HCI_CLOCK_75PPM - HCI_CLOCK_50PPM - HCI_CLOCK_30PPM - HCI_CLOCK_20PPM - */ - mainBbRtCfg.clkPpm = 20; -} - -/*************************************************************************************************/ -/*! - * \brief Initialize WSF. - */ -/*************************************************************************************************/ -static void mainWsfInit(void) -{ - /* +12 for message headroom, + 2 event header, +255 maximum parameter length. */ - const uint16_t maxRptBufSize = 12 + 2 + 255; - - /* +12 for message headroom, +ISO Data Load, +4 for header. */ - const uint16_t dataBufSize = - 12 + HCI_ISO_DL_MAX_LEN + mainLlRtCfg.maxAclLen + 4 + BB_DATA_PDU_TAILROOM; -#if (BT_VER > 9) - /* Use single pool for data buffers. */ - WSF_ASSERT(mainLlRtCfg.maxAclLen == mainLlRtCfg.maxIsoSduLen); -#endif - /* Ensure pool buffers are ordered correctly. */ - WSF_ASSERT(maxRptBufSize < dataBufSize); - - wsfBufPoolDesc_t poolDesc[] = { - { 16, 8 }, - { 32, 4 }, - { 128, mainLlRtCfg.maxAdvReports }, - { maxRptBufSize, mainLlRtCfg.maxAdvReports }, /* Extended reports. */ - { dataBufSize, mainLlRtCfg.numTxBufs + mainLlRtCfg.numRxBufs + mainLlRtCfg.numIsoTxBuf + - mainLlRtCfg.numIsoRxBuf } - }; - - const uint8_t numPools = sizeof(poolDesc) / sizeof(poolDesc[0]); - - /* Initial buffer configuration. */ - uint16_t memUsed; - WsfCsEnter(); - memUsed = WsfBufInit(numPools, poolDesc); - WsfHeapAlloc(memUsed); - WsfCsExit(); - - WsfOsInit(); - WsfTimerInit(); -#if (WSF_TRACE_ENABLED == TRUE) - WsfTraceRegisterHandler(WsfBufIoWrite); - WsfTraceEnable(TRUE); -#endif -} - -/*************************************************************************************************/ -/*! - * \brief Check and service tokens (Trace and sniffer). - * - * \return TRUE if there is token pending. - */ -/*************************************************************************************************/ -static bool_t mainCheckServiceTokens(void) -{ - bool_t eventPending = FALSE; - -#if (WSF_TOKEN_ENABLED == TRUE) || (BB_SNIFFER_ENABLED == TRUE) - eventPending = LhciIsEventPending(); -#endif - -#if WSF_TOKEN_ENABLED == TRUE - /* Allow only a single token to be processed at a time. */ - if (!eventPending) - eventPending = WsfTokenService(); -#endif - -#if (BB_SNIFFER_ENABLED == TRUE) - /* Service one sniffer packet, if in the buffer. */ - if (!eventPending) - eventPending = LhciSnifferHandler(); -#endif - - return eventPending; -} - -/*************************************************************************************************/ -/*! - * \brief Main entry point. - */ -/*************************************************************************************************/ -int main(void) -{ - uint32_t memUsed; - - mainLoadConfiguration(); - mainWsfInit(); - -#if (WSF_TRACE_ENABLED == TRUE) - WsfCsEnter(); - memUsed = WsfBufIoUartInit(WsfHeapGetFreeStartAddress(), PLATFORM_UART_TERMINAL_BUFFER_SIZE); - WsfHeapAlloc(memUsed); - WsfCsExit(); -#endif - - WsfCsEnter(); - LlInitRtCfg_t llCfg = { .pBbRtCfg = &mainBbRtCfg, - .wlSizeCfg = 4, - .rlSizeCfg = 4, - .plSizeCfg = 4, - .pLlRtCfg = &mainLlRtCfg, - .pFreeMem = WsfHeapGetFreeStartAddress(), - .freeMemAvail = WsfHeapCountAvailable() }; - - memUsed = LlInitControllerInit(&llCfg); - WsfHeapAlloc(memUsed); - WsfCsExit(); - - bdAddr_t bdAddr; - PalCfgLoadData(PAL_CFG_ID_BD_ADDR, bdAddr, sizeof(bdAddr_t)); - /* Coverity[uninit_use_in_call] */ - LlSetBdAddr((uint8_t *)&bdAddr); - - WsfOsRegisterSleepCheckFunc(mainCheckServiceTokens); - WsfOsRegisterSleepCheckFunc(ChciTrService); - - /* Register the UART RX request */ - WsfBufIoUartRegister(processConsoleRX); - - printUsage(); - - WsfOsEnterMainLoop(); - - /* Does not return. */ - return 0; -} diff --git a/Examples/MAX32665/Bluetooth/BLE_fcc/project.mk b/Examples/MAX32665/Bluetooth/BLE_fcc/project.mk deleted file mode 100644 index 8a52cb8ee8b..00000000000 --- a/Examples/MAX32665/Bluetooth/BLE_fcc/project.mk +++ /dev/null @@ -1,21 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -# ********************************************************** - -# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable Cordio library -LIB_CORDIO = 1 - -# TRACE option -# Set to 0 to disable -# Set to 2 to enable serial port trace messages -TRACE = 2 diff --git a/Examples/MAX32665/Bluetooth/BLE_fit/.vscode/README.md b/Examples/MAX32665/Bluetooth/BLE_fit/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Bluetooth/BLE_fit/.vscode/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_fit/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Bluetooth/BLE_fit/.vscode/settings.json b/Examples/MAX32665/Bluetooth/BLE_fit/.vscode/settings.json index 935e15b0056..94a81d4d5bb 100755 --- a/Examples/MAX32665/Bluetooth/BLE_fit/.vscode/settings.json +++ b/Examples/MAX32665/Bluetooth/BLE_fit/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Bluetooth/BLE_fit/Makefile b/Examples/MAX32665/Bluetooth/BLE_fit/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/Bluetooth/BLE_fit/Makefile +++ b/Examples/MAX32665/Bluetooth/BLE_fit/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Bluetooth/BLE_fit/README.md b/Examples/MAX32665/Bluetooth/BLE_fit/README.md index ca79c282d00..da237b22b8f 100644 --- a/Examples/MAX32665/Bluetooth/BLE_fit/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_fit/README.md @@ -1,6 +1,6 @@ # BLE_fit Bluetooth fitness device. Showcases heart rate, battery level, running speed and cadence. -Refer to [BLE_fit](../../../Libraries/Cordio/docs/Applications/BLE_fit.md) documentation in the Cordio Library. +Refer to [BLE_fit](../../../../Libraries/Cordio/docs/Applications/BLE_fit.md) documentation in the Cordio Library. ## Software @@ -24,4 +24,3 @@ viewing the trace messages and interacting with the application. Port uses setti - Stop bits : 1 - HW Flow Control : No - SW Flow Control : No - diff --git a/Examples/MAX32665/Bluetooth/BLE_fit/project.mk b/Examples/MAX32665/Bluetooth/BLE_fit/project.mk index 5dc90656a72..1026a5ef2d6 100644 --- a/Examples/MAX32665/Bluetooth/BLE_fit/project.mk +++ b/Examples/MAX32665/Bluetooth/BLE_fit/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Bluetooth/BLE_mcs/.vscode/README.md b/Examples/MAX32665/Bluetooth/BLE_mcs/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Bluetooth/BLE_mcs/.vscode/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_mcs/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Bluetooth/BLE_mcs/.vscode/settings.json b/Examples/MAX32665/Bluetooth/BLE_mcs/.vscode/settings.json index 935e15b0056..94a81d4d5bb 100755 --- a/Examples/MAX32665/Bluetooth/BLE_mcs/.vscode/settings.json +++ b/Examples/MAX32665/Bluetooth/BLE_mcs/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Bluetooth/BLE_mcs/Makefile b/Examples/MAX32665/Bluetooth/BLE_mcs/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/Bluetooth/BLE_mcs/Makefile +++ b/Examples/MAX32665/Bluetooth/BLE_mcs/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Bluetooth/BLE_mcs/README.md b/Examples/MAX32665/Bluetooth/BLE_mcs/README.md index da73f1056ac..ec79723f081 100644 --- a/Examples/MAX32665/Bluetooth/BLE_mcs/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_mcs/README.md @@ -2,7 +2,7 @@ Maxim custom Bluetooth profile and service that advertises as "MCS" and accepts connection requests. -Refer to the [BLE_mcs](../../../Libraries/Cordio/docs/Applications/BLE_mcs.md) documentation in the Cordio Library. +Refer to the [BLE_mcs](../../../../Libraries/Cordio/docs/Applications/BLE_mcs.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32665/Bluetooth/BLE_mcs/project.mk b/Examples/MAX32665/Bluetooth/BLE_mcs/project.mk index ef2e8be3349..4cfc9263ff2 100644 --- a/Examples/MAX32665/Bluetooth/BLE_mcs/project.mk +++ b/Examples/MAX32665/Bluetooth/BLE_mcs/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Bluetooth/BLE_otac/.vscode/README.md b/Examples/MAX32665/Bluetooth/BLE_otac/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Bluetooth/BLE_otac/.vscode/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_otac/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Bluetooth/BLE_otac/.vscode/settings.json b/Examples/MAX32665/Bluetooth/BLE_otac/.vscode/settings.json index 935e15b0056..94a81d4d5bb 100755 --- a/Examples/MAX32665/Bluetooth/BLE_otac/.vscode/settings.json +++ b/Examples/MAX32665/Bluetooth/BLE_otac/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Bluetooth/BLE_otac/Makefile b/Examples/MAX32665/Bluetooth/BLE_otac/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/Bluetooth/BLE_otac/Makefile +++ b/Examples/MAX32665/Bluetooth/BLE_otac/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Bluetooth/BLE_otac/README.md b/Examples/MAX32665/Bluetooth/BLE_otac/README.md index 06a0de9f5e6..7934cd6b8f0 100644 --- a/Examples/MAX32665/Bluetooth/BLE_otac/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_otac/README.md @@ -5,7 +5,7 @@ Bluetooth data client that scans for and connects to advertisers with the name o The Wireless Data Exchange profile is used to transfer files from the client to the server. A CRC32 value is used to check the integrity of the transferred file. -Refer to the [BLE_otac_otas](../../../Libraries/Cordio/docs/Applications/BLE_otac_otas.md) documentation in the Cordio Library. +Refer to the [BLE_otac_otas](../../../../Libraries/Cordio/docs/Applications/BLE_otac_otas.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32665/Bluetooth/BLE_otac/datc_main.c b/Examples/MAX32665/Bluetooth/BLE_otac/datc_main.c index 391ad8e7cea..990b90693d9 100644 --- a/Examples/MAX32665/Bluetooth/BLE_otac/datc_main.c +++ b/Examples/MAX32665/Bluetooth/BLE_otac/datc_main.c @@ -154,7 +154,7 @@ static const appSecCfg_t datcSecCfg = { DM_KEY_DIST_IRK, /*! Initiator key distribution flags */ DM_KEY_DIST_LTK | DM_KEY_DIST_IRK, /*! Responder key distribution flags */ FALSE, /*! TRUE if Out-of-band pairing data is present */ - TRUE /*! TRUE to initiate security upon connection */ + INIT_SECURITY /*! TRUE to initiate security upon connection */ }; /*! TRUE if Out-of-band pairing data is to be sent */ @@ -494,9 +494,9 @@ static void datcScanReport(dmEvt_t *pMsg) if (!connect && ((pData = DmFindAdType(DM_ADV_TYPE_LOCAL_NAME, pMsg->scanReport.len, pMsg->scanReport.pData)) != NULL)) { /* check length and device name */ - if (pData[DM_AD_LEN_IDX] >= 4 && (pData[DM_AD_DATA_IDX] == 'O') && - (pData[DM_AD_DATA_IDX + 1] == 'T') && (pData[DM_AD_DATA_IDX + 2] == 'A') && - (pData[DM_AD_DATA_IDX + 3] == 'S')) { + char advName[] = ADV_NAME; + if (pData[DM_AD_LEN_IDX] == sizeof(advName) && + !strncmp(advName, (char *)&(pData[DM_AD_DATA_IDX]), sizeof(advName))) { connect = TRUE; } } @@ -1365,7 +1365,7 @@ void DatcHandler(wsfEventMask_t event, wsfMsgHdr_t *pMsg) * \return None. */ /*************************************************************************************************/ -static void datcInitSvcHdlList() +static void datcInitSvcHdlList(void) { uint8_t i; diff --git a/Examples/MAX32665/Bluetooth/BLE_otac/fw_update.S b/Examples/MAX32665/Bluetooth/BLE_otac/fw_update.S index 92eef8736cd..93e79399ec6 100644 --- a/Examples/MAX32665/Bluetooth/BLE_otac/fw_update.S +++ b/Examples/MAX32665/Bluetooth/BLE_otac/fw_update.S @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/BLE_otac/project.mk b/Examples/MAX32665/Bluetooth/BLE_otac/project.mk index 59dca33d592..53cd471aeb3 100644 --- a/Examples/MAX32665/Bluetooth/BLE_otac/project.mk +++ b/Examples/MAX32665/Bluetooth/BLE_otac/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -60,3 +77,13 @@ fw_obj: $(FW_UPDATE_OBJ) ${FW_UPDATE_OBJ}: fw_update.S ${FW_UPDATE_BIN} ${CC} ${AFLAGS} -o ${@} -c fw_update.S + +# set ADVTISEMENT name you want to connect +ADV_NAME?=DATS +PROJ_CFLAGS += -DADV_NAME=\"$(ADV_NAME)\" + + + +### CONFIGURE security +# /*! TRUE to initiate security upon connection*/ +PROJ_CFLAGS += -DINIT_SECURITY=TRUE diff --git a/Examples/MAX32665/Bluetooth/BLE_otas/.vscode/README.md b/Examples/MAX32665/Bluetooth/BLE_otas/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Bluetooth/BLE_otas/.vscode/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_otas/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Bluetooth/BLE_otas/.vscode/settings.json b/Examples/MAX32665/Bluetooth/BLE_otas/.vscode/settings.json index fa99c602093..6c57f23a69d 100755 --- a/Examples/MAX32665/Bluetooth/BLE_otas/.vscode/settings.json +++ b/Examples/MAX32665/Bluetooth/BLE_otas/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Bluetooth/BLE_otas/Makefile b/Examples/MAX32665/Bluetooth/BLE_otas/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/Bluetooth/BLE_otas/Makefile +++ b/Examples/MAX32665/Bluetooth/BLE_otas/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Bluetooth/BLE_otas/README.md b/Examples/MAX32665/Bluetooth/BLE_otas/README.md index 299669aa7ff..be3b34fe52e 100644 --- a/Examples/MAX32665/Bluetooth/BLE_otas/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_otas/README.md @@ -5,7 +5,7 @@ Bluetooth data server that advertises as "OTAS" and accepts connection requests. The Wireless Data Exchange profile is used to transfer files from the client to the server. A CRC32 value is used to check the integrity of the transferred file. -Refer to the [BLE_otac_otas](../../../Libraries/Cordio/docs/Applications/BLE_otac_otas.md) documentation in the Cordio Library. +Refer to the [BLE_otac_otas](../../../../Libraries/Cordio/docs/Applications/BLE_otac_otas.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32665/Bluetooth/BLE_otas/bl_build.S b/Examples/MAX32665/Bluetooth/BLE_otas/bl_build.S index 70fd9d178ef..f85260687a1 100644 --- a/Examples/MAX32665/Bluetooth/BLE_otas/bl_build.S +++ b/Examples/MAX32665/Bluetooth/BLE_otas/bl_build.S @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/BLE_otas/dats_main.c b/Examples/MAX32665/Bluetooth/BLE_otas/dats_main.c index f07f4a2766b..342d5826cbf 100644 --- a/Examples/MAX32665/Bluetooth/BLE_otas/dats_main.c +++ b/Examples/MAX32665/Bluetooth/BLE_otas/dats_main.c @@ -121,7 +121,7 @@ static const appSecCfg_t datsSecCfg = { DM_KEY_DIST_IRK, /*! Initiator key distribution flags */ DM_KEY_DIST_LTK | DM_KEY_DIST_IRK, /*! Responder key distribution flags */ FALSE, /*! TRUE if Out-of-band pairing data is present */ - TRUE /*! TRUE to initiate security upon connection */ + INIT_SECURITY /*! TRUE to initiate security upon connection */ }; /*! TRUE if Out-of-band pairing data is to be sent */ @@ -197,15 +197,8 @@ static const uint8_t datsAdvDataDisc[] = { }; /*! scan data, discoverable mode */ -static const uint8_t datsScanDataDisc[] = { - /*! device name */ - 5, /*! length */ - DM_ADV_TYPE_LOCAL_NAME, /*! AD type */ - 'O', - 'T', - 'A', - 'S' -}; +static const uint8_t deviceName[] = ADV_NAME; +static uint8_t datsScanDataDisc[sizeof(deviceName) + 2]; /************************************************************************************************** Client Characteristic Configuration Descriptors @@ -459,6 +452,9 @@ static void datsSetup(dmEvt_t *pMsg) { /* Initialize control information */ datsCb.restoringResList = FALSE; + memcpy(&datsScanDataDisc[2], deviceName, sizeof(deviceName)); + datsScanDataDisc[0] = sizeof(deviceName); + datsScanDataDisc[1] = DM_ADV_TYPE_LOCAL_NAME; /* set advertising and scan response data for discoverable mode */ AppAdvSetData(APP_ADV_DATA_DISCOVERABLE, sizeof(datsAdvDataDisc), (uint8_t *)datsAdvDataDisc); @@ -680,7 +676,7 @@ void DatsHandlerInit(wsfHandlerId_t handlerId) AppGetBdAddr(addr); APP_TRACE_INFO6("MAC Addr: %02x:%02x:%02x:%02x:%02x:%02x", addr[5], addr[4], addr[3], addr[2], addr[1], addr[0]); - APP_TRACE_INFO1("Adv local name: %s", &datsScanDataDisc[2]); + APP_TRACE_INFO1("Adv local name: %s", deviceName); /* store handler ID */ datsCb.handlerId = handlerId; diff --git a/Examples/MAX32665/Bluetooth/BLE_otas/ota_external_mem.ld b/Examples/MAX32665/Bluetooth/BLE_otas/ota_external_mem.ld index d657238390f..a2fa5775326 100644 --- a/Examples/MAX32665/Bluetooth/BLE_otas/ota_external_mem.ld +++ b/Examples/MAX32665/Bluetooth/BLE_otas/ota_external_mem.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/BLE_otas/ota_internal_mem.ld b/Examples/MAX32665/Bluetooth/BLE_otas/ota_internal_mem.ld index 3f358c256a9..bf2dbd23fe7 100644 --- a/Examples/MAX32665/Bluetooth/BLE_otas/ota_internal_mem.ld +++ b/Examples/MAX32665/Bluetooth/BLE_otas/ota_internal_mem.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/BLE_otas/project.mk b/Examples/MAX32665/Bluetooth/BLE_otas/project.mk index f8a248e2f92..604f263fa2c 100644 --- a/Examples/MAX32665/Bluetooth/BLE_otas/project.mk +++ b/Examples/MAX32665/Bluetooth/BLE_otas/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -76,3 +93,12 @@ bl_obj: $(BOOTLOADER_OBJ) ${BOOTLOADER_OBJ}: bl_build.S ${BOOTLOADER_BIN} ${CC} ${AFLAGS} -o ${@} -c bl_build.S endif + +# SET advertising name +ADV_NAME?=DATS +PROJ_CFLAGS += -DADV_NAME=\"$(ADV_NAME)\" + + +### CONFIGURE security +# /*! TRUE to initiate security upon connection*/ +PROJ_CFLAGS += -DINIT_SECURITY=TRUE diff --git a/Examples/MAX32665/Bluetooth/BLE_periph/.vscode/README.md b/Examples/MAX32665/Bluetooth/BLE_periph/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Bluetooth/BLE_periph/.vscode/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_periph/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Bluetooth/BLE_periph/.vscode/settings.json b/Examples/MAX32665/Bluetooth/BLE_periph/.vscode/settings.json index 935e15b0056..94a81d4d5bb 100755 --- a/Examples/MAX32665/Bluetooth/BLE_periph/.vscode/settings.json +++ b/Examples/MAX32665/Bluetooth/BLE_periph/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Bluetooth/BLE_periph/Makefile b/Examples/MAX32665/Bluetooth/BLE_periph/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/Bluetooth/BLE_periph/Makefile +++ b/Examples/MAX32665/Bluetooth/BLE_periph/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Bluetooth/BLE_periph/README.md b/Examples/MAX32665/Bluetooth/BLE_periph/README.md index ceca4c79059..9a3b48384a8 100644 --- a/Examples/MAX32665/Bluetooth/BLE_periph/README.md +++ b/Examples/MAX32665/Bluetooth/BLE_periph/README.md @@ -1,5 +1,5 @@ # BLE_periph -Refer to the [BLE_periph](../../../Libraries/Cordio/docs/Applications/BLE_periph.md) documentation in the Cordio Library. +Refer to the [BLE_periph](../../../../Libraries/Cordio/docs/Applications/BLE_periph.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32665/Bluetooth/BLE_periph/project.mk b/Examples/MAX32665/Bluetooth/BLE_periph/project.mk index 5dc90656a72..1026a5ef2d6 100644 --- a/Examples/MAX32665/Bluetooth/BLE_periph/project.mk +++ b/Examples/MAX32665/Bluetooth/BLE_periph/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Bluetooth/Bootloader/.vscode/README.md b/Examples/MAX32665/Bluetooth/Bootloader/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Bluetooth/Bootloader/.vscode/README.md +++ b/Examples/MAX32665/Bluetooth/Bootloader/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Bluetooth/Bootloader/.vscode/settings.json b/Examples/MAX32665/Bluetooth/Bootloader/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/Bluetooth/Bootloader/.vscode/settings.json +++ b/Examples/MAX32665/Bluetooth/Bootloader/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Bluetooth/Bootloader/Makefile b/Examples/MAX32665/Bluetooth/Bootloader/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader/Makefile +++ b/Examples/MAX32665/Bluetooth/Bootloader/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Bluetooth/Bootloader/boot_lower.S b/Examples/MAX32665/Bluetooth/Bootloader/boot_lower.S index 4cc62f4e5cf..6a2646f91c4 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader/boot_lower.S +++ b/Examples/MAX32665/Bluetooth/Bootloader/boot_lower.S @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader/bootloader.ld b/Examples/MAX32665/Bluetooth/Bootloader/bootloader.ld index e068fef7876..d8f82785125 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader/bootloader.ld +++ b/Examples/MAX32665/Bluetooth/Bootloader/bootloader.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader/main_ext.c b/Examples/MAX32665/Bluetooth/Bootloader/main_ext.c index 9429551aed5..2be72e85101 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader/main_ext.c +++ b/Examples/MAX32665/Bluetooth/Bootloader/main_ext.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader/main_int.c b/Examples/MAX32665/Bluetooth/Bootloader/main_int.c index 08ef8ba0e8f..4f42e1e5584 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader/main_int.c +++ b/Examples/MAX32665/Bluetooth/Bootloader/main_int.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader/project.mk b/Examples/MAX32665/Bluetooth/Bootloader/project.mk index 5543a8ea6df..06043c3a473 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader/project.mk +++ b/Examples/MAX32665/Bluetooth/Bootloader/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/.vscode/README.md b/Examples/MAX32665/Bluetooth/Bootloader_Host/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/.vscode/README.md +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/.vscode/settings.json b/Examples/MAX32665/Bluetooth/Bootloader_Host/.vscode/settings.json index 935e15b0056..94a81d4d5bb 100755 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/.vscode/settings.json +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/Makefile b/Examples/MAX32665/Bluetooth/Bootloader_Host/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/Makefile +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/bootloader/bootloader.c b/Examples/MAX32665/Bluetooth/Bootloader_Host/bootloader/bootloader.c index 3d65e3b0d52..128bb5a4c54 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/bootloader/bootloader.c +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/bootloader/bootloader.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/bootloader/bootloader.h b/Examples/MAX32665/Bluetooth/Bootloader_Host/bootloader/bootloader.h index f6ef94370db..2a4b366489a 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/bootloader/bootloader.h +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/bootloader/bootloader.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/bootloader/bootloader_cmd.h b/Examples/MAX32665/Bluetooth/Bootloader_Host/bootloader/bootloader_cmd.h index 6fb5f7b95b9..f27ef7a76c8 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/bootloader/bootloader_cmd.h +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/bootloader/bootloader_cmd.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/include/platform.h b/Examples/MAX32665/Bluetooth/Bootloader_Host/include/platform.h index 1b653259715..1a6da6e22ea 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/include/platform.h +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/include/platform.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/include/terminal.h b/Examples/MAX32665/Bluetooth/Bootloader_Host/include/terminal.h index 2baffbea1e0..38e63fae30f 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/include/terminal.h +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/include/terminal.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/project.mk b/Examples/MAX32665/Bluetooth/Bootloader_Host/project.mk index 67bc17b02f1..45f27cad0a2 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/project.mk +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/src/bootloader_menu.c b/Examples/MAX32665/Bluetooth/Bootloader_Host/src/bootloader_menu.c index 38862c41a36..9cf3ec6cf98 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/src/bootloader_menu.c +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/src/bootloader_menu.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/src/main.c b/Examples/MAX32665/Bluetooth/Bootloader_Host/src/main.c index 90d6016c566..ee5b9350bc5 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/src/main.c +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/src/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/src/platform_max32665.c b/Examples/MAX32665/Bluetooth/Bootloader_Host/src/platform_max32665.c index a0b183a9331..a4d8fd4a260 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/src/platform_max32665.c +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/src/platform_max32665.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/src/terminal.c b/Examples/MAX32665/Bluetooth/Bootloader_Host/src/terminal.c index c56421f6ac1..3839ff42301 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/src/terminal.c +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/src/terminal.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_fast_P0_13.c b/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_fast_P0_13.c index 5aefc9da2ea..f0164ac6b02 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_fast_P0_13.c +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_fast_P0_13.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_slow_P0_13.c b/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_slow_P0_13.c index 71b513dd77a..11bf3626eab 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_slow_P0_13.c +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/devkey_MAX32660_blinkled_slow_P0_13.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_fast_P0_13.c b/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_fast_P0_13.c index 8e2d3a7d068..ebcfdd4064c 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_fast_P0_13.c +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_fast_P0_13.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_slow_P0_13.c b/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_slow_P0_13.c index 363034a2f56..a063981a5e2 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_slow_P0_13.c +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32660/nonsecure_MAX32660_blinkled_slow_P0_13.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_22.c b/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_22.c index 85fe8990c22..b76a312e4c9 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_22.c +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_22.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_23.c b/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_23.c index 5f45d875d19..7de7b4ece57 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_23.c +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/MAX32670/devkey_MAX32670_blinkled_P0_23.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/test_images.h b/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/test_images.h index 5fdcf1af080..c0d0f16b253 100644 --- a/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/test_images.h +++ b/Examples/MAX32665/Bluetooth/Bootloader_Host/test_images/test_images.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/Makefile b/Examples/MAX32665/Bluetooth/Makefile new file mode 100644 index 00000000000..a850f1815f5 --- /dev/null +++ b/Examples/MAX32665/Bluetooth/Makefile @@ -0,0 +1,4 @@ +all: + @for DIR in ./* ; do $(MAKE) -C $$DIR; done +clean: + @for DIR in ./* ; do $(MAKE) -C $$DIR distclean; rm -rf $$DIR/build; done diff --git a/Examples/MAX32665/Bluetooth/RF_Test/.vscode/README.md b/Examples/MAX32665/Bluetooth/RF_Test/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Bluetooth/RF_Test/.vscode/README.md +++ b/Examples/MAX32665/Bluetooth/RF_Test/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Bluetooth/RF_Test/.vscode/settings.json b/Examples/MAX32665/Bluetooth/RF_Test/.vscode/settings.json index 48f71395ccd..e4556457786 100755 --- a/Examples/MAX32665/Bluetooth/RF_Test/.vscode/settings.json +++ b/Examples/MAX32665/Bluetooth/RF_Test/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Bluetooth/RF_Test/FreeRTOSConfig.h b/Examples/MAX32665/Bluetooth/RF_Test/FreeRTOSConfig.h index e92ea5c60de..dc2eae5fd8f 100644 --- a/Examples/MAX32665/Bluetooth/RF_Test/FreeRTOSConfig.h +++ b/Examples/MAX32665/Bluetooth/RF_Test/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/RF_Test/Makefile b/Examples/MAX32665/Bluetooth/RF_Test/Makefile index a9dc1157557..a1375f471f3 100644 --- a/Examples/MAX32665/Bluetooth/RF_Test/Makefile +++ b/Examples/MAX32665/Bluetooth/RF_Test/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Bluetooth/RF_Test/freertos_tickless.c b/Examples/MAX32665/Bluetooth/RF_Test/freertos_tickless.c index c6318ccd6ec..7af8f83779a 100644 --- a/Examples/MAX32665/Bluetooth/RF_Test/freertos_tickless.c +++ b/Examples/MAX32665/Bluetooth/RF_Test/freertos_tickless.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Bluetooth/RF_Test/main.c b/Examples/MAX32665/Bluetooth/RF_Test/main.c index 22f2e38ca2d..1a01be00a7f 100644 --- a/Examples/MAX32665/Bluetooth/RF_Test/main.c +++ b/Examples/MAX32665/Bluetooth/RF_Test/main.c @@ -246,8 +246,8 @@ uint8_t processEscSequence(uint8_t *seq) * * \brief adds latest command to command history buffer * - * \param q pointer to the circular buffer holding command history - * \param cmd pointer to the command string to be added + * \param q pointer to the circular buffer holding command history + * \param cmd pointer to the command string to be added * * \return None. */ @@ -274,9 +274,9 @@ void cmdHistoryAdd(queue_t *q, const uint8_t *cmd) * \fn updateQueuePointer. * * \brief Updates an internal marker pointing to historical command to be printed, based on up/down arrow - * - * \param q pointer to the circular buffer holding command history - * + * + * \param q pointer to the circular buffer holding command history + * * \param upArrow flag used to upated the queuePoniter delimiting which command to print * * \return None. @@ -396,9 +396,9 @@ void prompt(void) * \fn printHint * * \brief Prints the help string of any command matching the current inputbuffer - * + * * \param buff pointer to the inputbuffer - * + * * \return None. */ /*************************************************************************************************/ @@ -695,17 +695,25 @@ void txTestTask(void *pvParameters) snprintf(str, sizeof(str), "%s%s", str, (const char *)getPhyStr(phy)); APP_TRACE_INFO1("%s", str); + //Prevent FreeRTOS from context switching until the LL is finished + vTaskSuspendAll(); + /* stat test */ if (testConfig.testType == BLE_TX_TEST) { res = LlEnhancedTxTest(testConfig.channel, packetLen, packetType, phy, 0); } else { res = LlEnhancedRxTest(testConfig.channel, phy, 0, 0); } + xTaskResumeAll(); //Restore scheduler + APP_TRACE_INFO2("result = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); /* if duration value was given then let the test run that amount of time and end */ if (testConfig.duration_ms) { vTaskDelay(testConfig.duration_ms); + //Prevent FreeRTOS from context switching until the LL is finished + vTaskSuspendAll(); LlEndTest(NULL); + xTaskResumeAll(); //Restore scheduler xSemaphoreGive(rfTestMutex); } pausePrompt = false; diff --git a/Examples/MAX32665/Bluetooth/RF_Test/project.mk b/Examples/MAX32665/Bluetooth/RF_Test/project.mk index 233f8d87379..cd76b007a51 100644 --- a/Examples/MAX32665/Bluetooth/RF_Test/project.mk +++ b/Examples/MAX32665/Bluetooth/RF_Test/project.mk @@ -1,9 +1,26 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # ********************************************************** diff --git a/Examples/MAX32665/CRC/.vscode/README.md b/Examples/MAX32665/CRC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/CRC/.vscode/README.md +++ b/Examples/MAX32665/CRC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/CRC/.vscode/settings.json b/Examples/MAX32665/CRC/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/CRC/.vscode/settings.json +++ b/Examples/MAX32665/CRC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/CRC/Makefile b/Examples/MAX32665/CRC/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/CRC/Makefile +++ b/Examples/MAX32665/CRC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/CRC/main.c b/Examples/MAX32665/CRC/main.c index 8c6df52dd82..6e68c470d8d 100644 --- a/Examples/MAX32665/CRC/main.c +++ b/Examples/MAX32665/CRC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/CRC/project.mk b/Examples/MAX32665/CRC/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/CRC/project.mk +++ b/Examples/MAX32665/CRC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Coremark/.vscode/README.md b/Examples/MAX32665/Coremark/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Coremark/.vscode/README.md +++ b/Examples/MAX32665/Coremark/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Coremark/.vscode/settings.json b/Examples/MAX32665/Coremark/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/Coremark/.vscode/settings.json +++ b/Examples/MAX32665/Coremark/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Coremark/Makefile b/Examples/MAX32665/Coremark/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/Coremark/Makefile +++ b/Examples/MAX32665/Coremark/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Coremark/project.mk b/Examples/MAX32665/Coremark/project.mk index 9ded8091069..a6efc624169 100644 --- a/Examples/MAX32665/Coremark/project.mk +++ b/Examples/MAX32665/Coremark/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/DES/.vscode/README.md b/Examples/MAX32665/DES/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/DES/.vscode/README.md +++ b/Examples/MAX32665/DES/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/DES/.vscode/settings.json b/Examples/MAX32665/DES/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/DES/.vscode/settings.json +++ b/Examples/MAX32665/DES/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/DES/Makefile b/Examples/MAX32665/DES/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/DES/Makefile +++ b/Examples/MAX32665/DES/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/DES/main.c b/Examples/MAX32665/DES/main.c index 09bb40b8a8d..ca150157298 100644 --- a/Examples/MAX32665/DES/main.c +++ b/Examples/MAX32665/DES/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/DES/project.mk b/Examples/MAX32665/DES/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/DES/project.mk +++ b/Examples/MAX32665/DES/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/DMA/.vscode/README.md b/Examples/MAX32665/DMA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/DMA/.vscode/README.md +++ b/Examples/MAX32665/DMA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/DMA/.vscode/settings.json b/Examples/MAX32665/DMA/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/DMA/.vscode/settings.json +++ b/Examples/MAX32665/DMA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/DMA/Makefile b/Examples/MAX32665/DMA/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/DMA/Makefile +++ b/Examples/MAX32665/DMA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/DMA/main.c b/Examples/MAX32665/DMA/main.c index 3f5e130104a..7a0b3bbf30e 100644 --- a/Examples/MAX32665/DMA/main.c +++ b/Examples/MAX32665/DMA/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -56,12 +55,12 @@ void memCpyComplete(void *dest) flag++; } -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(MXC_DMA0); } -void DMA8_IRQHandler() +void DMA8_IRQHandler(void) { MXC_DMA_Handler(MXC_DMA1); } diff --git a/Examples/MAX32665/DMA/project.mk b/Examples/MAX32665/DMA/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/DMA/project.mk +++ b/Examples/MAX32665/DMA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Demo/.vscode/README.md b/Examples/MAX32665/Demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Demo/.vscode/README.md +++ b/Examples/MAX32665/Demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Demo/.vscode/settings.json b/Examples/MAX32665/Demo/.vscode/settings.json index 4be1bd3bdcc..7732854da69 100755 --- a/Examples/MAX32665/Demo/.vscode/settings.json +++ b/Examples/MAX32665/Demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Demo/Makefile b/Examples/MAX32665/Demo/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/Demo/Makefile +++ b/Examples/MAX32665/Demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Demo/main.c b/Examples/MAX32665/Demo/main.c index 6340ada200a..823cd5ba1b8 100644 --- a/Examples/MAX32665/Demo/main.c +++ b/Examples/MAX32665/Demo/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -97,7 +96,7 @@ static void rounder_cb(struct _lv_disp_drv_t *disp_drv, lv_area_t *area) } //============================================================================ -void lvgl_setup() +void lvgl_setup(void) { /* LittlevGL setup */ lv_init(); @@ -119,7 +118,7 @@ void lvgl_setup() lv_disp_set_theme(disp, th); } -void LV_Tick_TimerHandler() +void LV_Tick_TimerHandler(void) { // Clear interrupt MXC_TMR_ClearFlags(TICK_TIMER); @@ -127,7 +126,7 @@ void LV_Tick_TimerHandler() lv_task_handler(); } -void LV_Tick_Timer_Init() +void LV_Tick_Timer_Init(void) { // 200Hz (Can be between 1ms to 10ms) uint32_t periodTicks = PeripheralClock / 200; diff --git a/Examples/MAX32665/Demo/project.mk b/Examples/MAX32665/Demo/project.mk index eb5832d2d4a..3aad6dc77f4 100644 --- a/Examples/MAX32665/Demo/project.mk +++ b/Examples/MAX32665/Demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Demo/resources/adi_logo_alpha1.c b/Examples/MAX32665/Demo/resources/adi_logo_alpha1.c index e2297ca5c46..61d0670aff8 100644 --- a/Examples/MAX32665/Demo/resources/adi_logo_alpha1.c +++ b/Examples/MAX32665/Demo/resources/adi_logo_alpha1.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Display/.vscode/README.md b/Examples/MAX32665/Display/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Display/.vscode/README.md +++ b/Examples/MAX32665/Display/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Display/.vscode/settings.json b/Examples/MAX32665/Display/.vscode/settings.json index 4be1bd3bdcc..7732854da69 100755 --- a/Examples/MAX32665/Display/.vscode/settings.json +++ b/Examples/MAX32665/Display/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Display/Makefile b/Examples/MAX32665/Display/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/Display/Makefile +++ b/Examples/MAX32665/Display/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Display/main.c b/Examples/MAX32665/Display/main.c index a195b695e5e..b921c636253 100644 --- a/Examples/MAX32665/Display/main.c +++ b/Examples/MAX32665/Display/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -77,7 +76,7 @@ static void rounder_cb(struct _lv_disp_drv_t *disp_drv, lv_area_t *area) } //============================================================================ -void lvgl_setup() +void lvgl_setup(void) { /* LittlevGL setup */ lv_init(); diff --git a/Examples/MAX32665/Display/project.mk b/Examples/MAX32665/Display/project.mk index f079e2a10e5..d62702a9c7f 100644 --- a/Examples/MAX32665/Display/project.mk +++ b/Examples/MAX32665/Display/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Display/resources/adi_logo_alpha1.c b/Examples/MAX32665/Display/resources/adi_logo_alpha1.c index e2297ca5c46..61d0670aff8 100644 --- a/Examples/MAX32665/Display/resources/adi_logo_alpha1.c +++ b/Examples/MAX32665/Display/resources/adi_logo_alpha1.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Display/test_screen.c b/Examples/MAX32665/Display/test_screen.c index 7375624542c..a9b8440e2de 100644 --- a/Examples/MAX32665/Display/test_screen.c +++ b/Examples/MAX32665/Display/test_screen.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Display/test_screen.h b/Examples/MAX32665/Display/test_screen.h index de3c3ad30cc..f546d4f3305 100644 --- a/Examples/MAX32665/Display/test_screen.h +++ b/Examples/MAX32665/Display/test_screen.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Dual_Core/.cproject b/Examples/MAX32665/Dual_Core/.cproject new file mode 100644 index 00000000000..eeb2335a635 --- /dev/null +++ b/Examples/MAX32665/Dual_Core/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/Dual_Core/.project b/Examples/MAX32665/Dual_Core/.project new file mode 100644 index 00000000000..11a31fa286b --- /dev/null +++ b/Examples/MAX32665/Dual_Core/.project @@ -0,0 +1,26 @@ + + + Dual_Core + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX78002/USB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml b/Examples/MAX32665/Dual_Core/.settings/language.settings.xml similarity index 100% rename from Examples/MAX78002/USB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml rename to Examples/MAX32665/Dual_Core/.settings/language.settings.xml diff --git a/Examples/MAX78002/USB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32665/Dual_Core/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX78002/USB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32665/Dual_Core/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32665/Dual_Core/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32665/Dual_Core/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..0f79215801d --- /dev/null +++ b/Examples/MAX32665/Dual_Core/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=Dual_Core +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32665 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32665/Dual_Core/.vscode/README.md b/Examples/MAX32665/Dual_Core/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32665/Dual_Core/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX78002/USB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json b/Examples/MAX32665/Dual_Core/.vscode/c_cpp_properties.json similarity index 100% rename from Examples/MAX78002/USB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json rename to Examples/MAX32665/Dual_Core/.vscode/c_cpp_properties.json diff --git a/Examples/MAX78002/USB/USB_HIDKeyboard/.vscode/flash.gdb b/Examples/MAX32665/Dual_Core/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_HIDKeyboard/.vscode/flash.gdb rename to Examples/MAX32665/Dual_Core/.vscode/flash.gdb diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/.vscode/launch.json b/Examples/MAX32665/Dual_Core/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_HIDKeyboard/.vscode/launch.json rename to Examples/MAX32665/Dual_Core/.vscode/launch.json diff --git a/Examples/MAX32665/Dual_Core/.vscode/settings.json b/Examples/MAX32665/Dual_Core/.vscode/settings.json new file mode 100644 index 00000000000..75cdcb627cf --- /dev/null +++ b/Examples/MAX32665/Dual_Core/.vscode/settings.json @@ -0,0 +1,79 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32665", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"${config:target}.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX78002/USB/USB_HIDKeyboard/.vscode/tasks.json b/Examples/MAX32665/Dual_Core/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_HIDKeyboard/.vscode/tasks.json rename to Examples/MAX32665/Dual_Core/.vscode/tasks.json diff --git a/Examples/MAX32665/Dual_Core/Core0/main.c b/Examples/MAX32665/Dual_Core/Core0/main.c new file mode 100644 index 00000000000..1c635a5539c --- /dev/null +++ b/Examples/MAX32665/Dual_Core/Core0/main.c @@ -0,0 +1,88 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief The main application for Core 0. + * @details This example is similar to the "Hello_World" example but the console + * UART and LEDs are split between Core 0 and Core 1. + */ + +/***** Includes *****/ +#include +#include +#include +#include "mxc_device.h" +#include "mxc_delay.h" +#include "led.h" +#include "board.h" +#include "sema.h" +#include "tmr.h" + +/***** Definitions *****/ +int count0 = 0; +int count1 = 0; + +/***** Globals *****/ + +/***** Functions *****/ + +// ***************************************************************************** +int main(void) +{ + printf("\n\n\n***** MAX32665 Dual Core Example *****\n"); + printf("Similar to the 'Hello World' example but split the\n"); + printf("lights and console uart between core 0 and core 1.\n"); + printf("Halting this example with a debugger will not stop core 1.\n\n"); + + MXC_SEMA_Init(); + + MXC_SEMA_GetSema(0); + + Start_Core1(); + + MXC_SEMA_FreeSema(1); + + mxc_tmr_cfg_t tmr_cfg; + tmr_cfg.pres = MXC_TMR_PRES_1; + tmr_cfg.mode = MXC_TMR_MODE_CONTINUOUS; + tmr_cfg.cmp_cnt = PeripheralClock / 2; + tmr_cfg.pol = 0; + MXC_TMR_Init(MXC_TMR2, &tmr_cfg); + + MXC_TMR_Start(MXC_TMR2); + + while (1) { + // Wait for Core 1 to update count and release the semaphore + while (MXC_SEMA_CheckSema(0) == E_BUSY) {} + MXC_SEMA_GetSema(0); + + printf("Core 0: Pong: %d\n", count0); + + LED_On(0); + LED_Off(1); + + MXC_TMR_Delay(MXC_TMR2, MXC_DELAY_MSEC(500)); + + // Update the count for Core 1 and release the semaphore + count1++; + MXC_SEMA_FreeSema(1); + } +} diff --git a/Examples/MAX32665/Dual_Core/Core1/main_core1.c b/Examples/MAX32665/Dual_Core/Core1/main_core1.c new file mode 100644 index 00000000000..10032e7154d --- /dev/null +++ b/Examples/MAX32665/Dual_Core/Core1/main_core1.c @@ -0,0 +1,66 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main_core1.c + * @brief The main application for Core 1. + * @details Core 1 synchronizes with Core 0. + */ + +/***** Includes *****/ +#include +#include +#include "mxc_device.h" +#include "mxc_delay.h" +#include "led.h" +#include "board.h" +#include "sema.h" +#include "tmr.h" + +/***** Definitions *****/ +extern int count0; +extern int count1; + +/***** Globals *****/ + +/***** Functions *****/ + +// ***************************************************************************** +// main_core1 is Core 1's official main function that is called at program startup. +int main_core1(void) +{ + printf("Core 1: enter while loop.\n"); + while (1) { + // Wait for Core 0 to release the semaphore + while (MXC_SEMA_GetSema(1) == E_BUSY) {} + + // Print the updated value from Core 0 + printf("Core 1: Ping: %d\n", count1); + + LED_Off(0); + LED_On(1); + + MXC_TMR_Delay(MXC_TMR1, MXC_DELAY_MSEC(500)); + + // Update the count for Core 0 and release the semaphore + count0++; + MXC_SEMA_FreeSema(0); + } +} diff --git a/Examples/MAX32665/Dual_Core/Dual_Core.launch b/Examples/MAX32665/Dual_Core/Dual_Core.launch new file mode 100644 index 00000000000..2259acd354c --- /dev/null +++ b/Examples/MAX32665/Dual_Core/Dual_Core.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/Dual_Core/Makefile b/Examples/MAX32665/Dual_Core/Makefile new file mode 100644 index 00000000000..585cabea5f5 --- /dev/null +++ b/Examples/MAX32665/Dual_Core/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32665 +TARGET_UC := MAX32665 +TARGET_LC := max32665 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32665/Dual_Core/README.md b/Examples/MAX32665/Dual_Core/README.md new file mode 100644 index 00000000000..864bb37bd4e --- /dev/null +++ b/Examples/MAX32665/Dual_Core/README.md @@ -0,0 +1,41 @@ +## Description + +A basic getting started program for using both ARM cores. + +Based off the Hello_World example, the console UART, LED toggling, and incremental count are +split between both cores. + +Please check the board.c file in ${MSDKPath}\Libraries\Boards\MAX32665\${BoardName}\Source path to learn switch and LED pins for specific board. + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +Set `ARM_DUALCORE=1` to build with the Core 1 startup and system files. + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. + +## Expected Output + +The Console UART of the device will output these messages: + +``` +***** MAX32665 Dual Core Example ***** +Similar to the 'Hello World' example but split the +lights and console uart between core 0 and core 1. +Halting this example with a debugger will not stop core 1. + +Core 1: enter while loop. +Core 1: Ping: 0 +Core 0: Pong: 1 +Core 1: Ping: 1 +Core 0: Pong: 2 +Core 1: Pong: 2 +``` diff --git a/Examples/MAX32665/Dual_Core/project.mk b/Examples/MAX32665/Dual_Core/project.mk new file mode 100644 index 00000000000..b4370cdac10 --- /dev/null +++ b/Examples/MAX32665/Dual_Core/project.mk @@ -0,0 +1,37 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Add your config here! + +# Build with the necessary Core1 startup/system files. +ARM_DUALCORE=1 + +# Separate directories for Core 0 and Core 1 code. +VPATH += Core0 +VPATH += Core1 + +IPATH += Core0 +IPATH += Core1 diff --git a/Examples/MAX32665/ECC/.vscode/README.md b/Examples/MAX32665/ECC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ECC/.vscode/README.md +++ b/Examples/MAX32665/ECC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ECC/.vscode/settings.json b/Examples/MAX32665/ECC/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/ECC/.vscode/settings.json +++ b/Examples/MAX32665/ECC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ECC/Makefile b/Examples/MAX32665/ECC/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/ECC/Makefile +++ b/Examples/MAX32665/ECC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ECC/main.c b/Examples/MAX32665/ECC/main.c index 1c1a46ff6c9..c4c7b0c1ec2 100644 --- a/Examples/MAX32665/ECC/main.c +++ b/Examples/MAX32665/ECC/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/ECC/project.mk b/Examples/MAX32665/ECC/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/ECC/project.mk +++ b/Examples/MAX32665/ECC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/EEPROM_Emulator/.vscode/README.md b/Examples/MAX32665/EEPROM_Emulator/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/EEPROM_Emulator/.vscode/README.md +++ b/Examples/MAX32665/EEPROM_Emulator/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/EEPROM_Emulator/.vscode/settings.json b/Examples/MAX32665/EEPROM_Emulator/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/EEPROM_Emulator/.vscode/settings.json +++ b/Examples/MAX32665/EEPROM_Emulator/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/EEPROM_Emulator/Makefile b/Examples/MAX32665/EEPROM_Emulator/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/EEPROM_Emulator/Makefile +++ b/Examples/MAX32665/EEPROM_Emulator/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/EEPROM_Emulator/include/cache.h b/Examples/MAX32665/EEPROM_Emulator/include/cache.h index 37e514da28c..9d0ff94adfb 100644 --- a/Examples/MAX32665/EEPROM_Emulator/include/cache.h +++ b/Examples/MAX32665/EEPROM_Emulator/include/cache.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/EEPROM_Emulator/include/eeprom.h b/Examples/MAX32665/EEPROM_Emulator/include/eeprom.h index 3b03479cf2e..206c5859e82 100644 --- a/Examples/MAX32665/EEPROM_Emulator/include/eeprom.h +++ b/Examples/MAX32665/EEPROM_Emulator/include/eeprom.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/EEPROM_Emulator/main.c b/Examples/MAX32665/EEPROM_Emulator/main.c index e3544b2bef4..19d240c0195 100644 --- a/Examples/MAX32665/EEPROM_Emulator/main.c +++ b/Examples/MAX32665/EEPROM_Emulator/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/EEPROM_Emulator/project.mk b/Examples/MAX32665/EEPROM_Emulator/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32665/EEPROM_Emulator/project.mk +++ b/Examples/MAX32665/EEPROM_Emulator/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/EEPROM_Emulator/src/cache.c b/Examples/MAX32665/EEPROM_Emulator/src/cache.c index 17bc7b57c13..adf98b89839 100644 --- a/Examples/MAX32665/EEPROM_Emulator/src/cache.c +++ b/Examples/MAX32665/EEPROM_Emulator/src/cache.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/EEPROM_Emulator/src/eeprom.c b/Examples/MAX32665/EEPROM_Emulator/src/eeprom.c index 5db5d5a9a27..a080e358834 100644 --- a/Examples/MAX32665/EEPROM_Emulator/src/eeprom.c +++ b/Examples/MAX32665/EEPROM_Emulator/src/eeprom.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Flash/.vscode/README.md b/Examples/MAX32665/Flash/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Flash/.vscode/README.md +++ b/Examples/MAX32665/Flash/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Flash/.vscode/settings.json b/Examples/MAX32665/Flash/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/Flash/.vscode/settings.json +++ b/Examples/MAX32665/Flash/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Flash/Makefile b/Examples/MAX32665/Flash/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/Flash/Makefile +++ b/Examples/MAX32665/Flash/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Flash/main.c b/Examples/MAX32665/Flash/main.c index 2e80380f017..6a8c72ce87d 100644 --- a/Examples/MAX32665/Flash/main.c +++ b/Examples/MAX32665/Flash/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -60,7 +59,7 @@ volatile uint32_t isr_flags; //****************************************************************************** int button_pressed = 0; -void button_handler() +void button_handler(void) { button_pressed = 1; } @@ -121,7 +120,7 @@ void setup_irqs(void) isr_cnt = 0; } -int write_test_pattern() +int write_test_pattern(void) { int err; // A flash address must be in the erased state before writing to it, because the @@ -163,7 +162,7 @@ int write_test_pattern() return err; } -int validate_test_pattern() +int validate_test_pattern(void) { int err = 0; @@ -183,7 +182,7 @@ int validate_test_pattern() return err; } -int erase_magic() +int erase_magic(void) { /* To modify a location in flash that has already been written to, diff --git a/Examples/MAX32665/Flash/project.mk b/Examples/MAX32665/Flash/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32665/Flash/project.mk +++ b/Examples/MAX32665/Flash/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Flash_CLI/.vscode/README.md b/Examples/MAX32665/Flash_CLI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Flash_CLI/.vscode/README.md +++ b/Examples/MAX32665/Flash_CLI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Flash_CLI/.vscode/settings.json b/Examples/MAX32665/Flash_CLI/.vscode/settings.json index fa2d5ded89d..e0832cbe1cb 100755 --- a/Examples/MAX32665/Flash_CLI/.vscode/settings.json +++ b/Examples/MAX32665/Flash_CLI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Flash_CLI/FreeRTOSConfig.h b/Examples/MAX32665/Flash_CLI/FreeRTOSConfig.h index 4aa073ebaff..cbc50006b87 100644 --- a/Examples/MAX32665/Flash_CLI/FreeRTOSConfig.h +++ b/Examples/MAX32665/Flash_CLI/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Flash_CLI/Makefile b/Examples/MAX32665/Flash_CLI/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/Flash_CLI/Makefile +++ b/Examples/MAX32665/Flash_CLI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Flash_CLI/definitions.h b/Examples/MAX32665/Flash_CLI/definitions.h index 97762f7f054..faf33f2e170 100644 --- a/Examples/MAX32665/Flash_CLI/definitions.h +++ b/Examples/MAX32665/Flash_CLI/definitions.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Flash_CLI/main.c b/Examples/MAX32665/Flash_CLI/main.c index 8a765cf8723..2b0edc0f466 100644 --- a/Examples/MAX32665/Flash_CLI/main.c +++ b/Examples/MAX32665/Flash_CLI/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Flash_CLI/project.mk b/Examples/MAX32665/Flash_CLI/project.mk index c0903b97abf..badcd52d540 100644 --- a/Examples/MAX32665/Flash_CLI/project.mk +++ b/Examples/MAX32665/Flash_CLI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/FreeRTOSDemo/.vscode/README.md b/Examples/MAX32665/FreeRTOSDemo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/FreeRTOSDemo/.vscode/README.md +++ b/Examples/MAX32665/FreeRTOSDemo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/FreeRTOSDemo/.vscode/settings.json b/Examples/MAX32665/FreeRTOSDemo/.vscode/settings.json index 21012d36ca8..4c8248df848 100755 --- a/Examples/MAX32665/FreeRTOSDemo/.vscode/settings.json +++ b/Examples/MAX32665/FreeRTOSDemo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/FreeRTOSDemo/FreeRTOSConfig.h b/Examples/MAX32665/FreeRTOSDemo/FreeRTOSConfig.h index ea6f6566f02..467339d4c66 100644 --- a/Examples/MAX32665/FreeRTOSDemo/FreeRTOSConfig.h +++ b/Examples/MAX32665/FreeRTOSDemo/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/FreeRTOSDemo/Makefile b/Examples/MAX32665/FreeRTOSDemo/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/FreeRTOSDemo/Makefile +++ b/Examples/MAX32665/FreeRTOSDemo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/FreeRTOSDemo/freertos_tickless.c b/Examples/MAX32665/FreeRTOSDemo/freertos_tickless.c index f72831132dc..90400009b40 100644 --- a/Examples/MAX32665/FreeRTOSDemo/freertos_tickless.c +++ b/Examples/MAX32665/FreeRTOSDemo/freertos_tickless.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/FreeRTOSDemo/main.c b/Examples/MAX32665/FreeRTOSDemo/main.c index 94a55924498..e1edac6d0fa 100644 --- a/Examples/MAX32665/FreeRTOSDemo/main.c +++ b/Examples/MAX32665/FreeRTOSDemo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/FreeRTOSDemo/project.mk b/Examples/MAX32665/FreeRTOSDemo/project.mk index c0903b97abf..badcd52d540 100644 --- a/Examples/MAX32665/FreeRTOSDemo/project.mk +++ b/Examples/MAX32665/FreeRTOSDemo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/GPIO/.vscode/README.md b/Examples/MAX32665/GPIO/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/GPIO/.vscode/README.md +++ b/Examples/MAX32665/GPIO/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/GPIO/.vscode/settings.json b/Examples/MAX32665/GPIO/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/GPIO/.vscode/settings.json +++ b/Examples/MAX32665/GPIO/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/GPIO/Makefile b/Examples/MAX32665/GPIO/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/GPIO/Makefile +++ b/Examples/MAX32665/GPIO/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/GPIO/example_config.h b/Examples/MAX32665/GPIO/example_config.h index a588b9e2f36..a021a5421b5 100644 --- a/Examples/MAX32665/GPIO/example_config.h +++ b/Examples/MAX32665/GPIO/example_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/GPIO/main.c b/Examples/MAX32665/GPIO/main.c index 1f5fa1480c4..be4e1d48314 100644 --- a/Examples/MAX32665/GPIO/main.c +++ b/Examples/MAX32665/GPIO/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/GPIO/project.mk b/Examples/MAX32665/GPIO/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/GPIO/project.mk +++ b/Examples/MAX32665/GPIO/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/HTMR/.vscode/README.md b/Examples/MAX32665/HTMR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/HTMR/.vscode/README.md +++ b/Examples/MAX32665/HTMR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/HTMR/.vscode/settings.json b/Examples/MAX32665/HTMR/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/HTMR/.vscode/settings.json +++ b/Examples/MAX32665/HTMR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/HTMR/Makefile b/Examples/MAX32665/HTMR/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/HTMR/Makefile +++ b/Examples/MAX32665/HTMR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/HTMR/main.c b/Examples/MAX32665/HTMR/main.c index ccf29e957e6..f172c2ea8b5 100644 --- a/Examples/MAX32665/HTMR/main.c +++ b/Examples/MAX32665/HTMR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -66,12 +65,12 @@ void HTMR0_IRQHandler(void) return; } -void buttonHandler() +void buttonHandler(void) { buttonPressed = 1; } -void alarmSetHandler() +void alarmSetHandler(void) { MXC_HTMR_Stop(MXC_HTMR0); diff --git a/Examples/MAX32665/HTMR/project.mk b/Examples/MAX32665/HTMR/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/HTMR/project.mk +++ b/Examples/MAX32665/HTMR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Hash/.vscode/README.md b/Examples/MAX32665/Hash/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Hash/.vscode/README.md +++ b/Examples/MAX32665/Hash/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Hash/.vscode/settings.json b/Examples/MAX32665/Hash/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/Hash/.vscode/settings.json +++ b/Examples/MAX32665/Hash/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Hash/Makefile b/Examples/MAX32665/Hash/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/Hash/Makefile +++ b/Examples/MAX32665/Hash/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Hash/main.c b/Examples/MAX32665/Hash/main.c index c47fd626b84..996ce316908 100644 --- a/Examples/MAX32665/Hash/main.c +++ b/Examples/MAX32665/Hash/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Hash/project.mk b/Examples/MAX32665/Hash/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/Hash/project.mk +++ b/Examples/MAX32665/Hash/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Hello_World/.vscode/README.md b/Examples/MAX32665/Hello_World/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Hello_World/.vscode/README.md +++ b/Examples/MAX32665/Hello_World/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Hello_World/.vscode/settings.json b/Examples/MAX32665/Hello_World/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/Hello_World/.vscode/settings.json +++ b/Examples/MAX32665/Hello_World/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Hello_World/Makefile b/Examples/MAX32665/Hello_World/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/Hello_World/Makefile +++ b/Examples/MAX32665/Hello_World/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Hello_World/main.c b/Examples/MAX32665/Hello_World/main.c index bea69a62300..ad20d280fff 100644 --- a/Examples/MAX32665/Hello_World/main.c +++ b/Examples/MAX32665/Hello_World/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Hello_World/project.mk b/Examples/MAX32665/Hello_World/project.mk index 92ec793db88..f1aab416ba2 100644 --- a/Examples/MAX32665/Hello_World/project.mk +++ b/Examples/MAX32665/Hello_World/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Hello_World_Cpp/.vscode/README.md b/Examples/MAX32665/Hello_World_Cpp/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Hello_World_Cpp/.vscode/README.md +++ b/Examples/MAX32665/Hello_World_Cpp/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Hello_World_Cpp/.vscode/settings.json b/Examples/MAX32665/Hello_World_Cpp/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/Hello_World_Cpp/.vscode/settings.json +++ b/Examples/MAX32665/Hello_World_Cpp/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Hello_World_Cpp/Makefile b/Examples/MAX32665/Hello_World_Cpp/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/Hello_World_Cpp/Makefile +++ b/Examples/MAX32665/Hello_World_Cpp/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Hello_World_Cpp/main.cpp b/Examples/MAX32665/Hello_World_Cpp/main.cpp index daade0e995d..fdf8363cde1 100644 --- a/Examples/MAX32665/Hello_World_Cpp/main.cpp +++ b/Examples/MAX32665/Hello_World_Cpp/main.cpp @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -66,7 +65,7 @@ class LED { int blink_count; }; -int main() +int main(void) { LED led = LED(0); diff --git a/Examples/MAX32665/Hello_World_Cpp/project.mk b/Examples/MAX32665/Hello_World_Cpp/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX32665/Hello_World_Cpp/project.mk +++ b/Examples/MAX32665/Hello_World_Cpp/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/I2C/.vscode/README.md b/Examples/MAX32665/I2C/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/I2C/.vscode/README.md +++ b/Examples/MAX32665/I2C/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/I2C/.vscode/settings.json b/Examples/MAX32665/I2C/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/I2C/.vscode/settings.json +++ b/Examples/MAX32665/I2C/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/I2C/Makefile b/Examples/MAX32665/I2C/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/I2C/Makefile +++ b/Examples/MAX32665/I2C/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/I2C/main.c b/Examples/MAX32665/I2C/main.c index cb9851fc22b..e26560ee30a 100644 --- a/Examples/MAX32665/I2C/main.c +++ b/Examples/MAX32665/I2C/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -195,7 +194,7 @@ int verifyData(void) } // ***************************************************************************** -int main() +int main(void) { printf("\n******** I2C Master-Slave Transaction Demo *********\n"); printf("\nThis example uses one I2C peripheral as a master to\n"); diff --git a/Examples/MAX32665/I2C/project.mk b/Examples/MAX32665/I2C/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/I2C/project.mk +++ b/Examples/MAX32665/I2C/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/I2C_MNGR/.vscode/README.md b/Examples/MAX32665/I2C_MNGR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/I2C_MNGR/.vscode/README.md +++ b/Examples/MAX32665/I2C_MNGR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/I2C_MNGR/.vscode/settings.json b/Examples/MAX32665/I2C_MNGR/.vscode/settings.json index c35cf7dacee..a40bac02f6e 100755 --- a/Examples/MAX32665/I2C_MNGR/.vscode/settings.json +++ b/Examples/MAX32665/I2C_MNGR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/I2C_MNGR/FreeRTOSConfig.h b/Examples/MAX32665/I2C_MNGR/FreeRTOSConfig.h index 4f2c8e06249..0e4ee3180ed 100644 --- a/Examples/MAX32665/I2C_MNGR/FreeRTOSConfig.h +++ b/Examples/MAX32665/I2C_MNGR/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/I2C_MNGR/Makefile b/Examples/MAX32665/I2C_MNGR/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/I2C_MNGR/Makefile +++ b/Examples/MAX32665/I2C_MNGR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/I2C_MNGR/i2c_mngr/i2c_mngr.c b/Examples/MAX32665/I2C_MNGR/i2c_mngr/i2c_mngr.c index 2c7dd4d7111..04c3c4ee429 100644 --- a/Examples/MAX32665/I2C_MNGR/i2c_mngr/i2c_mngr.c +++ b/Examples/MAX32665/I2C_MNGR/i2c_mngr/i2c_mngr.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +38,7 @@ typedef struct { static i2c_txn_mngr_t s_mngr; /******************************************************************************/ -int I2C_MNGR_Init() +int I2C_MNGR_Init(void) { s_mngr.inst0 = MXC_I2C0_BUS0; s_mngr.inst1 = MXC_I2C1_BUS0; diff --git a/Examples/MAX32665/I2C_MNGR/i2c_mngr/i2c_mngr.h b/Examples/MAX32665/I2C_MNGR/i2c_mngr/i2c_mngr.h index c4273538273..9f862c4e4f1 100644 --- a/Examples/MAX32665/I2C_MNGR/i2c_mngr/i2c_mngr.h +++ b/Examples/MAX32665/I2C_MNGR/i2c_mngr/i2c_mngr.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +54,7 @@ typedef struct { * @brief Initializes I2C transaction manager * @return #E_NO_ERROR if succeeded, error code otherwise */ -int I2C_MNGR_Init(); +int I2C_MNGR_Init(void); /* * @brief Executes I2C transaction diff --git a/Examples/MAX32665/I2C_MNGR/main.c b/Examples/MAX32665/I2C_MNGR/main.c index 57604f5ff1b..444c73ecda5 100644 --- a/Examples/MAX32665/I2C_MNGR/main.c +++ b/Examples/MAX32665/I2C_MNGR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/I2C_MNGR/project.mk b/Examples/MAX32665/I2C_MNGR/project.mk index 0acc6367122..bc6304c935b 100644 --- a/Examples/MAX32665/I2C_MNGR/project.mk +++ b/Examples/MAX32665/I2C_MNGR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/I2C_SCAN/.vscode/README.md b/Examples/MAX32665/I2C_SCAN/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/I2C_SCAN/.vscode/README.md +++ b/Examples/MAX32665/I2C_SCAN/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/I2C_SCAN/.vscode/settings.json b/Examples/MAX32665/I2C_SCAN/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/I2C_SCAN/.vscode/settings.json +++ b/Examples/MAX32665/I2C_SCAN/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/I2C_SCAN/Makefile b/Examples/MAX32665/I2C_SCAN/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/I2C_SCAN/Makefile +++ b/Examples/MAX32665/I2C_SCAN/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/I2C_SCAN/main.c b/Examples/MAX32665/I2C_SCAN/main.c index 6afb2224ea0..45141a98705 100644 --- a/Examples/MAX32665/I2C_SCAN/main.c +++ b/Examples/MAX32665/I2C_SCAN/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -51,7 +50,7 @@ typedef enum { FAILED, PASSED } test_t; uint8_t counter = 0; // ***************************************************************************** -int main() +int main(void) { printf("\n******** I2C SLAVE ADDRESS SCANNER *********\n"); printf("\nThis example finds the addresses of any I2C Slave devices connected to the"); diff --git a/Examples/MAX32665/I2C_SCAN/project.mk b/Examples/MAX32665/I2C_SCAN/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/I2C_SCAN/project.mk +++ b/Examples/MAX32665/I2C_SCAN/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/I2C_Sensor/.vscode/README.md b/Examples/MAX32665/I2C_Sensor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/I2C_Sensor/.vscode/README.md +++ b/Examples/MAX32665/I2C_Sensor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/I2C_Sensor/.vscode/settings.json b/Examples/MAX32665/I2C_Sensor/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/I2C_Sensor/.vscode/settings.json +++ b/Examples/MAX32665/I2C_Sensor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/I2C_Sensor/Makefile b/Examples/MAX32665/I2C_Sensor/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/I2C_Sensor/Makefile +++ b/Examples/MAX32665/I2C_Sensor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/I2C_Sensor/main.c b/Examples/MAX32665/I2C_Sensor/main.c index d18c0ca05fb..f2b0aa2b679 100644 --- a/Examples/MAX32665/I2C_Sensor/main.c +++ b/Examples/MAX32665/I2C_Sensor/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/I2C_Sensor/project.mk b/Examples/MAX32665/I2C_Sensor/project.mk index 3751974fb29..fd2c123c701 100644 --- a/Examples/MAX32665/I2C_Sensor/project.mk +++ b/Examples/MAX32665/I2C_Sensor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/ICC/.vscode/README.md b/Examples/MAX32665/ICC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/ICC/.vscode/README.md +++ b/Examples/MAX32665/ICC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/ICC/.vscode/settings.json b/Examples/MAX32665/ICC/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/ICC/.vscode/settings.json +++ b/Examples/MAX32665/ICC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/ICC/Makefile b/Examples/MAX32665/ICC/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/ICC/Makefile +++ b/Examples/MAX32665/ICC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/ICC/main.c b/Examples/MAX32665/ICC/main.c index 5ecc1637081..6b0c091c74a 100644 --- a/Examples/MAX32665/ICC/main.c +++ b/Examples/MAX32665/ICC/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/ICC/project.mk b/Examples/MAX32665/ICC/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/ICC/project.mk +++ b/Examples/MAX32665/ICC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/LP/.vscode/README.md b/Examples/MAX32665/LP/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/LP/.vscode/README.md +++ b/Examples/MAX32665/LP/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/LP/.vscode/settings.json b/Examples/MAX32665/LP/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/LP/.vscode/settings.json +++ b/Examples/MAX32665/LP/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/LP/Makefile b/Examples/MAX32665/LP/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/LP/Makefile +++ b/Examples/MAX32665/LP/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/LP/lp-nonsecure.ld b/Examples/MAX32665/LP/lp-nonsecure.ld index faac5d08832..f5482b5a987 100644 --- a/Examples/MAX32665/LP/lp-nonsecure.ld +++ b/Examples/MAX32665/LP/lp-nonsecure.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/LP/lp-sla.ld b/Examples/MAX32665/LP/lp-sla.ld index 49d90a09318..5e139cc9d4e 100644 --- a/Examples/MAX32665/LP/lp-sla.ld +++ b/Examples/MAX32665/LP/lp-sla.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/LP/main.c b/Examples/MAX32665/LP/main.c index 7d75f1f75b2..b47ba70e022 100644 --- a/Examples/MAX32665/LP/main.c +++ b/Examples/MAX32665/LP/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/LP/project.mk b/Examples/MAX32665/LP/project.mk index 868e8483771..06e8d5f3116 100644 --- a/Examples/MAX32665/LP/project.mk +++ b/Examples/MAX32665/LP/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Library_Generate/.vscode/README.md b/Examples/MAX32665/Library_Generate/.vscode/README.md index e2e9a1a6522..a740741c3ab 100644 --- a/Examples/MAX32665/Library_Generate/.vscode/README.md +++ b/Examples/MAX32665/Library_Generate/.vscode/README.md @@ -7,11 +7,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) * If it's not in the README, check the UG. * If it's not in the UG, open a ticket! -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -38,7 +38,7 @@ The steps below are also available in video form in "Understanding Artificial In 2. Run the installer executable, and ensure that "Visual Studio Code Support" is enabled for your installation. - ![Selected Components](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/installer_components.JPG) + ![Selected Components](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/installer_components.JPG) 3. Finish the MSDK installation, taking note of where the MSDK was installed. @@ -54,7 +54,7 @@ The steps below are also available in video form in "Understanding Artificial In 9. Type "open settings json" and select the "Preferences: Open Settings (JSON)" option (_not_ the "Preferences: Open _Default_ Settings (JSON)"). This will open your user settings.json file in VS Code's editor. - ![Open Settings JSON Command](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/open_settings_json.jpg) + ![Open Settings JSON Command](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/open_settings_json.jpg) 10. Add the entries below into your user settings.json file. @@ -82,7 +82,7 @@ This section covers basic usage of the VSCode-Maxim project files. For document Visual Studio Code is built around a "working directory" paradigm. The editor is always rooted in a working directory, and the main mechanism for changing that directory is `File -> Open Folder...`. -![File -> Open Folder](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/file_openfolder.JPG) +![File -> Open Folder](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/file_openfolder.JPG) As a result, you'll notice that there is no "New Project" mechanism. A "project" in VS Code is simply a folder. It will look inside of the opened folder for a `.vscode` _sub_-folder to load project-specific settings from. @@ -90,11 +90,11 @@ A project that is configured for VS Code will have, at minimum, a .vscode sub-fo Ex: -![Example Directory Contents](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/opening_projects_2.jpg) +![Example Directory Contents](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/opening_projects_2.jpg) ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MSDK installation. @@ -102,7 +102,7 @@ Additionally, empty project templates and a drag-and-drop folder for "injecting" Once a project is opened 4 available build tasks will become available via `Terminal > Run Build task...` or the shortcut `Ctrl+Shift+B`. These tasks are configured by the `.vscode/task.json` file. -![Build Tasks Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/buildtasks.JPG) +![Build Tasks Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/buildtasks.JPG) #### Build @@ -138,7 +138,7 @@ Once a project is opened 4 available build tasks will become available via `Term ### Debugging -![Debug Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger.JPG) +![Debug Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger.JPG) Debugging is enabled by Visual Studio Code's integrated debugger. Launch configurations can be found in the `.vscode/launch.json` file. @@ -162,11 +162,11 @@ In general, the MAX-series microcontrollers have the following debugger limitati 3. Launch the debugger with `Run > Start Debugging`, with the shortcut `F5`, or via the `Run and Debug` window (Ctrl + Shift + D) and the green "launch" arrow. - ![Debug Tab](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_window.JPG) + ![Debug Tab](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_window.JPG) 4. The debugger will launch a GDB client & OpenOCD server, reset the microcontroller, and should break on entry into `main`. - ![Debugger Break on Main](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_breakmain.JPG) + ![Debugger Break on Main](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_breakmain.JPG) #### Using the Debugger @@ -174,13 +174,13 @@ In general, the MAX-series microcontrollers have the following debugger limitati The main interface for the debugger is the debugger control bar: -![Debugger Control Bar Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_bar.JPG) +![Debugger Control Bar Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_bar.JPG) `Continue | Step Over | Step Into | Step Out | Restart | Stop` Breakpoints can be set by clicking in the space next to the line number in a source code file. A red dot indicates a line to break on. Breakpoints can be removed by clicking on them again. Ex: -![Breakpoint](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/breakpoint.JPG) +![Breakpoint](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/breakpoint.JPG) ## Project Configuration @@ -190,7 +190,7 @@ Breakpoints can be set by clicking in the space next to the line number in a sou **When a change is made to this file, VS Code should be reloaded with CTRL+SHIFT+P -> Reload Window (or alternatively restarted completely) to force a re-parse.** -![Reload Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/reload_window.JPG) +![Reload Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/reload_window.JPG) The default project configuration should work for most use cases as long as `"target"` and `"board"` are set correctly. @@ -227,7 +227,7 @@ The following configuration options are available: * ... can be found in the `Libraries/Boards` folder of the MSDK * For example, the supported options for the MAX78000 are `"EvKit_V1"`, `"FTHR_RevA"`, and `"MAXREFDES178"`. - ![MAX78000 Boards](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/78000_boards.JPG) + ![MAX78000 Boards](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/78000_boards.JPG) ### Advanced Config Options @@ -353,7 +353,7 @@ A project's build system is managed by two files found in the project's root dir * `Makefile` * `project.mk` -![Files are located in the root directory](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) +![Files are located in the root directory](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) When the command... @@ -416,7 +416,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the @@ -540,7 +540,7 @@ If you want to start from scratch, take this option. ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Library_Generate/Makefile b/Examples/MAX32665/Library_Generate/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/Library_Generate/Makefile +++ b/Examples/MAX32665/Library_Generate/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Library_Generate/gpiolib.c b/Examples/MAX32665/Library_Generate/gpiolib.c index 5c8845edc78..252f6df4c44 100644 --- a/Examples/MAX32665/Library_Generate/gpiolib.c +++ b/Examples/MAX32665/Library_Generate/gpiolib.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Library_Generate/gpiolib.h b/Examples/MAX32665/Library_Generate/gpiolib.h index 7acad3fb7b8..855a7c0676f 100644 --- a/Examples/MAX32665/Library_Generate/gpiolib.h +++ b/Examples/MAX32665/Library_Generate/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Library_Generate/project.mk b/Examples/MAX32665/Library_Generate/project.mk index 01dcd9fbb2a..b5729be6ef0 100644 --- a/Examples/MAX32665/Library_Generate/project.mk +++ b/Examples/MAX32665/Library_Generate/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Library_Use/.vscode/README.md b/Examples/MAX32665/Library_Use/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Library_Use/.vscode/README.md +++ b/Examples/MAX32665/Library_Use/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Library_Use/.vscode/settings.json b/Examples/MAX32665/Library_Use/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/Library_Use/.vscode/settings.json +++ b/Examples/MAX32665/Library_Use/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Library_Use/Makefile b/Examples/MAX32665/Library_Use/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/Library_Use/Makefile +++ b/Examples/MAX32665/Library_Use/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Library_Use/lib/include/gpiolib.h b/Examples/MAX32665/Library_Use/lib/include/gpiolib.h index 1c3c83ede39..01f58f85b85 100644 --- a/Examples/MAX32665/Library_Use/lib/include/gpiolib.h +++ b/Examples/MAX32665/Library_Use/lib/include/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Library_Use/main.c b/Examples/MAX32665/Library_Use/main.c index a9c20ec444f..c686476d185 100644 --- a/Examples/MAX32665/Library_Use/main.c +++ b/Examples/MAX32665/Library_Use/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Library_Use/project.mk b/Examples/MAX32665/Library_Use/project.mk index 50c796a0e9b..064e85ac9df 100644 --- a/Examples/MAX32665/Library_Use/project.mk +++ b/Examples/MAX32665/Library_Use/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/MAA/.vscode/README.md b/Examples/MAX32665/MAA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/MAA/.vscode/README.md +++ b/Examples/MAX32665/MAA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/MAA/.vscode/settings.json b/Examples/MAX32665/MAA/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/MAA/.vscode/settings.json +++ b/Examples/MAX32665/MAA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/MAA/Makefile b/Examples/MAX32665/MAA/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/MAA/Makefile +++ b/Examples/MAX32665/MAA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/MAA/main.c b/Examples/MAX32665/MAA/main.c index 4aa43923b14..ca966b48b98 100644 --- a/Examples/MAX32665/MAA/main.c +++ b/Examples/MAX32665/MAA/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/MAA/project.mk b/Examples/MAX32665/MAA/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/MAA/project.mk +++ b/Examples/MAX32665/MAA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/OTP_Dump/.vscode/README.md b/Examples/MAX32665/OTP_Dump/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/OTP_Dump/.vscode/README.md +++ b/Examples/MAX32665/OTP_Dump/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/OTP_Dump/.vscode/settings.json b/Examples/MAX32665/OTP_Dump/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/OTP_Dump/.vscode/settings.json +++ b/Examples/MAX32665/OTP_Dump/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/OTP_Dump/Makefile b/Examples/MAX32665/OTP_Dump/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/OTP_Dump/Makefile +++ b/Examples/MAX32665/OTP_Dump/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/OTP_Dump/main.c b/Examples/MAX32665/OTP_Dump/main.c index 019054a034f..bc6e42416c2 100644 --- a/Examples/MAX32665/OTP_Dump/main.c +++ b/Examples/MAX32665/OTP_Dump/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/OTP_Dump/project.mk b/Examples/MAX32665/OTP_Dump/project.mk index 67f14bba4d2..9a7cc168b77 100644 --- a/Examples/MAX32665/OTP_Dump/project.mk +++ b/Examples/MAX32665/OTP_Dump/project.mk @@ -1,9 +1,26 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # ********************************************************** diff --git a/Examples/MAX32665/OWM/.vscode/README.md b/Examples/MAX32665/OWM/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/OWM/.vscode/README.md +++ b/Examples/MAX32665/OWM/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/OWM/.vscode/settings.json b/Examples/MAX32665/OWM/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/OWM/.vscode/settings.json +++ b/Examples/MAX32665/OWM/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/OWM/Makefile b/Examples/MAX32665/OWM/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/OWM/Makefile +++ b/Examples/MAX32665/OWM/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/OWM/main.c b/Examples/MAX32665/OWM/main.c index 861b840bbcc..0b284688d90 100644 --- a/Examples/MAX32665/OWM/main.c +++ b/Examples/MAX32665/OWM/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/OWM/project.mk b/Examples/MAX32665/OWM/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/OWM/project.mk +++ b/Examples/MAX32665/OWM/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Pulse_Train/.vscode/README.md b/Examples/MAX32665/Pulse_Train/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Pulse_Train/.vscode/README.md +++ b/Examples/MAX32665/Pulse_Train/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Pulse_Train/.vscode/settings.json b/Examples/MAX32665/Pulse_Train/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/Pulse_Train/.vscode/settings.json +++ b/Examples/MAX32665/Pulse_Train/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Pulse_Train/Makefile b/Examples/MAX32665/Pulse_Train/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/Pulse_Train/Makefile +++ b/Examples/MAX32665/Pulse_Train/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Pulse_Train/main.c b/Examples/MAX32665/Pulse_Train/main.c index 79797eebed3..56e7a5616f0 100644 --- a/Examples/MAX32665/Pulse_Train/main.c +++ b/Examples/MAX32665/Pulse_Train/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -45,7 +44,7 @@ /***** Functions *****/ // ***************************************************************************** -static void PB_Start_Stop_handler() +static void PB_Start_Stop_handler(void) { uint32_t enablePTMask; diff --git a/Examples/MAX32665/Pulse_Train/project.mk b/Examples/MAX32665/Pulse_Train/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/Pulse_Train/project.mk +++ b/Examples/MAX32665/Pulse_Train/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/RPU/.vscode/README.md b/Examples/MAX32665/RPU/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/RPU/.vscode/README.md +++ b/Examples/MAX32665/RPU/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/RPU/.vscode/settings.json b/Examples/MAX32665/RPU/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/RPU/.vscode/settings.json +++ b/Examples/MAX32665/RPU/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/RPU/Makefile b/Examples/MAX32665/RPU/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/RPU/Makefile +++ b/Examples/MAX32665/RPU/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/RPU/main.c b/Examples/MAX32665/RPU/main.c index 99b2590ee4f..77375ce9a65 100644 --- a/Examples/MAX32665/RPU/main.c +++ b/Examples/MAX32665/RPU/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -36,14 +35,10 @@ #include "rpu.h" #include "tmr.h" #include "led.h" -#include "core1.h" /***** Definitions *****/ /***** Globals *****/ -//#if defined ( __GNUC__) -// extern uint8_t __load_start_cpu1; -//#endif /***** Functions *****/ void HardFault_Handler(void) @@ -54,7 +49,7 @@ void HardFault_Handler(void) while (1) {} } -int Core1_Main(void) +int main_core1(void) { int err; // The RPU defaults to all access enabled @@ -87,7 +82,7 @@ int main(void) MXC_Delay(500000); LED_Off(1); - Core1_Start(); + Start_Core1(); MXC_Delay(1000); // Try to read TMR3's config register diff --git a/Examples/MAX32665/RPU/project.mk b/Examples/MAX32665/RPU/project.mk index 6b431a22292..1818f08ca16 100644 --- a/Examples/MAX32665/RPU/project.mk +++ b/Examples/MAX32665/RPU/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -13,3 +30,6 @@ # For more information on how sing process works, see # https://www.analog.com/en/education/education-library/videos/6313214207112.html SBT=0 + +# Build the Core1 startup/system files. +ARM_DUALCORE=1 diff --git a/Examples/MAX32665/RTC/.vscode/README.md b/Examples/MAX32665/RTC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/RTC/.vscode/README.md +++ b/Examples/MAX32665/RTC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/RTC/.vscode/settings.json b/Examples/MAX32665/RTC/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/RTC/.vscode/settings.json +++ b/Examples/MAX32665/RTC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/RTC/Makefile b/Examples/MAX32665/RTC/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/RTC/Makefile +++ b/Examples/MAX32665/RTC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/RTC/main.c b/Examples/MAX32665/RTC/main.c index a6bb4a0b862..3a4d106f9fd 100644 --- a/Examples/MAX32665/RTC/main.c +++ b/Examples/MAX32665/RTC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -107,12 +106,12 @@ void RTC_IRQHandler(void) } volatile int buttonPressed = 0; -void buttonHandler() +void buttonHandler(void) { buttonPressed = 1; } -void printTime() +void printTime(void) { int day, hr, min, err; uint32_t sec, rtc_readout; diff --git a/Examples/MAX32665/RTC/project.mk b/Examples/MAX32665/RTC/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/RTC/project.mk +++ b/Examples/MAX32665/RTC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/RTC_Backup/.vscode/README.md b/Examples/MAX32665/RTC_Backup/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/RTC_Backup/.vscode/README.md +++ b/Examples/MAX32665/RTC_Backup/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/RTC_Backup/.vscode/settings.json b/Examples/MAX32665/RTC_Backup/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/RTC_Backup/.vscode/settings.json +++ b/Examples/MAX32665/RTC_Backup/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/RTC_Backup/Makefile b/Examples/MAX32665/RTC_Backup/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/RTC_Backup/Makefile +++ b/Examples/MAX32665/RTC_Backup/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/RTC_Backup/main.c b/Examples/MAX32665/RTC_Backup/main.c index d6967addfe2..d18f09b65eb 100644 --- a/Examples/MAX32665/RTC_Backup/main.c +++ b/Examples/MAX32665/RTC_Backup/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -63,7 +62,7 @@ void RTC_IRQHandler(void) {} // ***************************************************************************** -void rescheduleAlarm() +void rescheduleAlarm(void) { uint32_t time; int flags = MXC_RTC_GetFlags(); @@ -89,7 +88,7 @@ void rescheduleAlarm() } // ***************************************************************************** -void printTime() +void printTime(void) { int day, hr, min; uint32_t sec; @@ -110,7 +109,7 @@ void printTime() } // ***************************************************************************** -int configureRTC() +int configureRTC(void) { int rtcTrim; diff --git a/Examples/MAX32665/RTC_Backup/project.mk b/Examples/MAX32665/RTC_Backup/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/RTC_Backup/project.mk +++ b/Examples/MAX32665/RTC_Backup/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/SCPA_OTP_Dump/.vscode/README.md b/Examples/MAX32665/SCPA_OTP_Dump/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/SCPA_OTP_Dump/.vscode/README.md +++ b/Examples/MAX32665/SCPA_OTP_Dump/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/SCPA_OTP_Dump/.vscode/settings.json b/Examples/MAX32665/SCPA_OTP_Dump/.vscode/settings.json index bc2660f8793..1fab9898258 100755 --- a/Examples/MAX32665/SCPA_OTP_Dump/.vscode/settings.json +++ b/Examples/MAX32665/SCPA_OTP_Dump/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/SCPA_OTP_Dump/Makefile b/Examples/MAX32665/SCPA_OTP_Dump/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/SCPA_OTP_Dump/Makefile +++ b/Examples/MAX32665/SCPA_OTP_Dump/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/SCPA_OTP_Dump/README.md b/Examples/MAX32665/SCPA_OTP_Dump/README.md index d209cee4bd4..4218f12f9da 100644 --- a/Examples/MAX32665/SCPA_OTP_Dump/README.md +++ b/Examples/MAX32665/SCPA_OTP_Dump/README.md @@ -18,11 +18,15 @@ PROJ_CFLAGS+=-DMAX32665_A2 ### Project Usage -Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. +Universal instructions on building this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +NOTE: This SCP Applet example project cannot be flashed and debugged like a regular example. It must be sent to the ROM bootloader using the SCP protocol. The MSDK offers Secure Bootloader Tools (SBT) in the `Tools/SBT` folder, and the `send_scp` utility is used to send the SCP packets to the device. + +See the [Secure Boot Tools User Guide](https://pdfserv.maximintegrated.com/en/an/ug7637-secure-boot-tools.pdf) for additional documentation. ### Project-Specific Build Notes -(None - this project builds as a standard example) +This project targets `scpa` builds by default (see [project.mk](project.mk)), which generates SCP packets for the application in the `build/scp_packets` folder. ## Required Connections @@ -30,9 +34,9 @@ Universal instructions on building, flashing, and debugging this project can be - Open a console (Powershell or bash) then send scp packages to device. ## Expected Output - ` - send_scp -c -i UART -s scp_packets\packet.list" - ` +``` +$ send_scp -c -i UART -s build/scp_packets/packet.list + [==================================================== ] 73% @@ -109,3 +113,4 @@ Please wait, reading data...
Disconnected !
SCP session OK
+``` \ No newline at end of file diff --git a/Examples/MAX32665/SCPA_OTP_Dump/main.c b/Examples/MAX32665/SCPA_OTP_Dump/main.c index 0af436148e4..6c6340df065 100644 --- a/Examples/MAX32665/SCPA_OTP_Dump/main.c +++ b/Examples/MAX32665/SCPA_OTP_Dump/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/SCPA_OTP_Dump/project.mk b/Examples/MAX32665/SCPA_OTP_Dump/project.mk index da65933463b..a5f5f811ac8 100644 --- a/Examples/MAX32665/SCPA_OTP_Dump/project.mk +++ b/Examples/MAX32665/SCPA_OTP_Dump/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/SCPA_OTP_Dump/utils.c b/Examples/MAX32665/SCPA_OTP_Dump/utils.c index ae02a263b80..63e6ae19fbf 100644 --- a/Examples/MAX32665/SCPA_OTP_Dump/utils.c +++ b/Examples/MAX32665/SCPA_OTP_Dump/utils.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/SCPA_OTP_Dump/utils.h b/Examples/MAX32665/SCPA_OTP_Dump/utils.h index f4b48c5ec22..5999976c937 100644 --- a/Examples/MAX32665/SCPA_OTP_Dump/utils.h +++ b/Examples/MAX32665/SCPA_OTP_Dump/utils.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/SDHC_FAT/.vscode/README.md b/Examples/MAX32665/SDHC_FAT/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/SDHC_FAT/.vscode/README.md +++ b/Examples/MAX32665/SDHC_FAT/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/SDHC_FAT/.vscode/settings.json b/Examples/MAX32665/SDHC_FAT/.vscode/settings.json index 1b7ea0a0abc..06ce485f1c4 100755 --- a/Examples/MAX32665/SDHC_FAT/.vscode/settings.json +++ b/Examples/MAX32665/SDHC_FAT/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/SDHC_FAT/Makefile b/Examples/MAX32665/SDHC_FAT/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/SDHC_FAT/Makefile +++ b/Examples/MAX32665/SDHC_FAT/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/SDHC_FAT/main.c b/Examples/MAX32665/SDHC_FAT/main.c index 5bac7a09dc1..95e02d64965 100644 --- a/Examples/MAX32665/SDHC_FAT/main.c +++ b/Examples/MAX32665/SDHC_FAT/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -86,7 +85,7 @@ void generateMessage(unsigned length) } } -int mount() +int mount(void) { fs = &fs_obj; if ((err = f_mount(fs, "", 1)) != FR_OK) { //Mount the default drive to fs now @@ -102,7 +101,7 @@ int mount() return err; } -int umount() +int umount(void) { if ((err = f_mount(NULL, "", 0)) != FR_OK) { //Unmount the default drive from its mount point printf("Error unmounting volume: %s\n", FF_ERRORS[err]); @@ -114,7 +113,7 @@ int umount() return err; } -int formatSDHC() +int formatSDHC(void) { printf("\n\n*****THE DRIVE WILL BE FORMATTED IN 5 SECONDS*****\n"); printf("**************PRESS ANY KEY TO ABORT**************\n\n"); @@ -147,7 +146,7 @@ int formatSDHC() return err; } -int getSize() +int getSize(void) { QWORD disksize = 0; QWORD available_bytes = 0; @@ -173,7 +172,7 @@ int getSize() return err; } -int ls() +int ls(void) { if (!mounted) { mount(); @@ -206,7 +205,7 @@ int ls() return err; } -int createFile() +int createFile(void) { unsigned int length = 128; @@ -245,7 +244,7 @@ int createFile() return err; } -int appendFile() +int appendFile(void) { unsigned int length = 0; @@ -284,7 +283,7 @@ int appendFile() return err; } -int mkdir() +int mkdir(void) { if (!mounted) { mount(); @@ -311,7 +310,7 @@ int mkdir() return err; } -int cd() +int cd(void) { if (!mounted) { mount(); @@ -338,7 +337,7 @@ int cd() return err; } -int delete () +int delete (void) { if (!mounted) { mount(); @@ -360,7 +359,7 @@ int delete () return err; } -int example() +int example(void) { unsigned int length = 256; diff --git a/Examples/MAX32665/SDHC_FAT/project.mk b/Examples/MAX32665/SDHC_FAT/project.mk index e27fffe4357..0f3c560f4b8 100644 --- a/Examples/MAX32665/SDHC_FAT/project.mk +++ b/Examples/MAX32665/SDHC_FAT/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/SDHC_Raw/.vscode/README.md b/Examples/MAX32665/SDHC_Raw/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/SDHC_Raw/.vscode/README.md +++ b/Examples/MAX32665/SDHC_Raw/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/SDHC_Raw/.vscode/settings.json b/Examples/MAX32665/SDHC_Raw/.vscode/settings.json index 1b7ea0a0abc..06ce485f1c4 100755 --- a/Examples/MAX32665/SDHC_Raw/.vscode/settings.json +++ b/Examples/MAX32665/SDHC_Raw/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/SDHC_Raw/Makefile b/Examples/MAX32665/SDHC_Raw/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/SDHC_Raw/Makefile +++ b/Examples/MAX32665/SDHC_Raw/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/SDHC_Raw/main.c b/Examples/MAX32665/SDHC_Raw/main.c index ff72bf9337e..34f03cc48a0 100644 --- a/Examples/MAX32665/SDHC_Raw/main.c +++ b/Examples/MAX32665/SDHC_Raw/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/SDHC_Raw/project.mk b/Examples/MAX32665/SDHC_Raw/project.mk index 76174416037..5874e8a6fa1 100644 --- a/Examples/MAX32665/SDHC_Raw/project.mk +++ b/Examples/MAX32665/SDHC_Raw/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/SPI/.vscode/README.md b/Examples/MAX32665/SPI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/SPI/.vscode/README.md +++ b/Examples/MAX32665/SPI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/SPI/.vscode/settings.json b/Examples/MAX32665/SPI/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/SPI/.vscode/settings.json +++ b/Examples/MAX32665/SPI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/SPI/Makefile b/Examples/MAX32665/SPI/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/SPI/Makefile +++ b/Examples/MAX32665/SPI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/SPI/main.c b/Examples/MAX32665/SPI/main.c index 6fef746349e..ebe1c11d266 100644 --- a/Examples/MAX32665/SPI/main.c +++ b/Examples/MAX32665/SPI/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/SPI/project.mk b/Examples/MAX32665/SPI/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/SPI/project.mk +++ b/Examples/MAX32665/SPI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/SPIXF/.vscode/README.md b/Examples/MAX32665/SPIXF/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/SPIXF/.vscode/README.md +++ b/Examples/MAX32665/SPIXF/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/SPIXF/.vscode/settings.json b/Examples/MAX32665/SPIXF/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/SPIXF/.vscode/settings.json +++ b/Examples/MAX32665/SPIXF/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/SPIXF/Makefile b/Examples/MAX32665/SPIXF/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/SPIXF/Makefile +++ b/Examples/MAX32665/SPIXF/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/SPIXF/main.c b/Examples/MAX32665/SPIXF/main.c index 37b1e59c0c3..1350fb36161 100644 --- a/Examples/MAX32665/SPIXF/main.c +++ b/Examples/MAX32665/SPIXF/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -62,7 +61,7 @@ uint8_t *__xip_addr; #endif /******************************************************************************/ -void spixf_cfg_setup() +void spixf_cfg_setup(void) { // Disable the SPIXFC before setting the SPIXF MXC_SPIXF_Disable(); diff --git a/Examples/MAX32665/SPIXF/project.mk b/Examples/MAX32665/SPIXF/project.mk index c96b2c27afa..1ad0400b825 100644 --- a/Examples/MAX32665/SPIXF/project.mk +++ b/Examples/MAX32665/SPIXF/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/SPIXF/ramfunc.c b/Examples/MAX32665/SPIXF/ramfunc.c index 72c562dac1b..0b764e73683 100644 --- a/Examples/MAX32665/SPIXF/ramfunc.c +++ b/Examples/MAX32665/SPIXF/ramfunc.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/SPIXF_SFCC/.vscode/README.md b/Examples/MAX32665/SPIXF_SFCC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/SPIXF_SFCC/.vscode/README.md +++ b/Examples/MAX32665/SPIXF_SFCC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/SPIXF_SFCC/.vscode/settings.json b/Examples/MAX32665/SPIXF_SFCC/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/SPIXF_SFCC/.vscode/settings.json +++ b/Examples/MAX32665/SPIXF_SFCC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/SPIXF_SFCC/Makefile b/Examples/MAX32665/SPIXF_SFCC/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/SPIXF_SFCC/Makefile +++ b/Examples/MAX32665/SPIXF_SFCC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/SPIXF_SFCC/main.c b/Examples/MAX32665/SPIXF_SFCC/main.c index 4e64a2c7e1f..62d6831f73f 100644 --- a/Examples/MAX32665/SPIXF_SFCC/main.c +++ b/Examples/MAX32665/SPIXF_SFCC/main.c @@ -5,10 +5,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -81,7 +80,7 @@ __attribute__((section(".xip_section"))) void icc_test_func(void) } /******************************************************************************/ -void spixf_cfg_setup() +void spixf_cfg_setup(void) { MXC_SPIXF_Disable(); // Disable the SPIXFC before setting the SPIXF diff --git a/Examples/MAX32665/SPIXF_SFCC/project.mk b/Examples/MAX32665/SPIXF_SFCC/project.mk index 1cdd0d5bb57..28c98703ad6 100644 --- a/Examples/MAX32665/SPIXF_SFCC/project.mk +++ b/Examples/MAX32665/SPIXF_SFCC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/SPIXR/.vscode/README.md b/Examples/MAX32665/SPIXR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/SPIXR/.vscode/README.md +++ b/Examples/MAX32665/SPIXR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/SPIXR/.vscode/settings.json b/Examples/MAX32665/SPIXR/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/SPIXR/.vscode/settings.json +++ b/Examples/MAX32665/SPIXR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/SPIXR/Makefile b/Examples/MAX32665/SPIXR/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/SPIXR/Makefile +++ b/Examples/MAX32665/SPIXR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/SPIXR/main.c b/Examples/MAX32665/SPIXR/main.c index ed7db3bfe02..d53c024a3f9 100644 --- a/Examples/MAX32665/SPIXR/main.c +++ b/Examples/MAX32665/SPIXR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/SPIXR/project.mk b/Examples/MAX32665/SPIXR/project.mk index c512e6d33dd..8f972ce6e48 100644 --- a/Examples/MAX32665/SPIXR/project.mk +++ b/Examples/MAX32665/SPIXR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/SPI_3Wire/.vscode/README.md b/Examples/MAX32665/SPI_3Wire/.vscode/README.md old mode 100644 new mode 100755 index 90fbcefc65d..5b355bd51c9 --- a/Examples/MAX32665/SPI_3Wire/.vscode/README.md +++ b/Examples/MAX32665/SPI_3Wire/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/SPI_3Wire/.vscode/settings.json b/Examples/MAX32665/SPI_3Wire/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/SPI_3Wire/.vscode/settings.json +++ b/Examples/MAX32665/SPI_3Wire/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/SPI_3Wire/Makefile b/Examples/MAX32665/SPI_3Wire/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/SPI_3Wire/Makefile +++ b/Examples/MAX32665/SPI_3Wire/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/SPI_3Wire/main.c b/Examples/MAX32665/SPI_3Wire/main.c index 172854580c9..ecdca599a52 100644 --- a/Examples/MAX32665/SPI_3Wire/main.c +++ b/Examples/MAX32665/SPI_3Wire/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2024 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2024 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2024 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/SPI_3Wire/project.mk b/Examples/MAX32665/SPI_3Wire/project.mk index 2f4090db024..013374aa11c 100644 --- a/Examples/MAX32665/SPI_3Wire/project.mk +++ b/Examples/MAX32665/SPI_3Wire/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/SRCC/.vscode/README.md b/Examples/MAX32665/SRCC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/SRCC/.vscode/README.md +++ b/Examples/MAX32665/SRCC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/SRCC/.vscode/settings.json b/Examples/MAX32665/SRCC/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/SRCC/.vscode/settings.json +++ b/Examples/MAX32665/SRCC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/SRCC/Makefile b/Examples/MAX32665/SRCC/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/SRCC/Makefile +++ b/Examples/MAX32665/SRCC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/SRCC/main.c b/Examples/MAX32665/SRCC/main.c index ff4777eacd5..1505ca31d0c 100644 --- a/Examples/MAX32665/SRCC/main.c +++ b/Examples/MAX32665/SRCC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/SRCC/project.mk b/Examples/MAX32665/SRCC/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/SRCC/project.mk +++ b/Examples/MAX32665/SRCC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Semaphore/.vscode/README.md b/Examples/MAX32665/Semaphore/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Semaphore/.vscode/README.md +++ b/Examples/MAX32665/Semaphore/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Semaphore/.vscode/settings.json b/Examples/MAX32665/Semaphore/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/Semaphore/.vscode/settings.json +++ b/Examples/MAX32665/Semaphore/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Semaphore/Makefile b/Examples/MAX32665/Semaphore/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/Semaphore/Makefile +++ b/Examples/MAX32665/Semaphore/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Semaphore/main.c b/Examples/MAX32665/Semaphore/main.c index 2591a099621..1098c1de554 100644 --- a/Examples/MAX32665/Semaphore/main.c +++ b/Examples/MAX32665/Semaphore/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Semaphore/project.mk b/Examples/MAX32665/Semaphore/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/Semaphore/project.mk +++ b/Examples/MAX32665/Semaphore/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/TMR/.vscode/README.md b/Examples/MAX32665/TMR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/TMR/.vscode/README.md +++ b/Examples/MAX32665/TMR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/TMR/.vscode/settings.json b/Examples/MAX32665/TMR/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/TMR/.vscode/settings.json +++ b/Examples/MAX32665/TMR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/TMR/Makefile b/Examples/MAX32665/TMR/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/TMR/Makefile +++ b/Examples/MAX32665/TMR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/TMR/main.c b/Examples/MAX32665/TMR/main.c index e656bd9c610..808b83202e2 100644 --- a/Examples/MAX32665/TMR/main.c +++ b/Examples/MAX32665/TMR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -73,7 +72,7 @@ /***** Functions *****/ -void PWMTimer() +void PWMTimer(void) { // Declare variables mxc_gpio_cfg_t gpio_pwm; //to configure GPIO @@ -116,14 +115,14 @@ void PWMTimer() } // Toggles GPIO when continuous timer repeats -void ContinuousTimerHandler() +void ContinuousTimerHandler(void) { // Clear interrupt MXC_TMR_ClearFlags(CONT_TIMER); MXC_GPIO_OutToggle(led_pin[0].port, led_pin[0].mask); } -void ContinuousTimer() +void ContinuousTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; @@ -152,14 +151,14 @@ void ContinuousTimer() printf("Continuous timer started.\n\n"); } -void OneshotTimerHandler() +void OneshotTimerHandler(void) { // Clear interrupt MXC_TMR_ClearFlags(OST_TIMER); MXC_GPIO_OutToggle(led_pin[1].port, led_pin[1].mask); } -void OneshotTimer() +void OneshotTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; diff --git a/Examples/MAX32665/TMR/project.mk b/Examples/MAX32665/TMR/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/TMR/project.mk +++ b/Examples/MAX32665/TMR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/TRNG/.vscode/README.md b/Examples/MAX32665/TRNG/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/TRNG/.vscode/README.md +++ b/Examples/MAX32665/TRNG/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/TRNG/.vscode/settings.json b/Examples/MAX32665/TRNG/.vscode/settings.json index 69c184a0bad..8f2be20ec8c 100755 --- a/Examples/MAX32665/TRNG/.vscode/settings.json +++ b/Examples/MAX32665/TRNG/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/TRNG/Makefile b/Examples/MAX32665/TRNG/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/TRNG/Makefile +++ b/Examples/MAX32665/TRNG/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/TRNG/main.c b/Examples/MAX32665/TRNG/main.c index ce4dab1ee22..8967e67ad41 100644 --- a/Examples/MAX32665/TRNG/main.c +++ b/Examples/MAX32665/TRNG/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/TRNG/project.mk b/Examples/MAX32665/TRNG/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/TRNG/project.mk +++ b/Examples/MAX32665/TRNG/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Temp_Monitor/.vscode/README.md b/Examples/MAX32665/Temp_Monitor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Temp_Monitor/.vscode/README.md +++ b/Examples/MAX32665/Temp_Monitor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Temp_Monitor/.vscode/settings.json b/Examples/MAX32665/Temp_Monitor/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/Temp_Monitor/.vscode/settings.json +++ b/Examples/MAX32665/Temp_Monitor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Temp_Monitor/Makefile b/Examples/MAX32665/Temp_Monitor/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/Temp_Monitor/Makefile +++ b/Examples/MAX32665/Temp_Monitor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Temp_Monitor/main.c b/Examples/MAX32665/Temp_Monitor/main.c index 92c7923c45f..35433d43ef8 100644 --- a/Examples/MAX32665/Temp_Monitor/main.c +++ b/Examples/MAX32665/Temp_Monitor/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Temp_Monitor/project.mk b/Examples/MAX32665/Temp_Monitor/project.mk index 6e9394a6b76..1e472535726 100644 --- a/Examples/MAX32665/Temp_Monitor/project.mk +++ b/Examples/MAX32665/Temp_Monitor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Temp_Monitor/temp_monitor.c b/Examples/MAX32665/Temp_Monitor/temp_monitor.c index 95f4eba923d..f163a694421 100644 --- a/Examples/MAX32665/Temp_Monitor/temp_monitor.c +++ b/Examples/MAX32665/Temp_Monitor/temp_monitor.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/Temp_Monitor/temp_monitor.h b/Examples/MAX32665/Temp_Monitor/temp_monitor.h index b6a99db76e8..4162dbd9f66 100644 --- a/Examples/MAX32665/Temp_Monitor/temp_monitor.h +++ b/Examples/MAX32665/Temp_Monitor/temp_monitor.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/UART/.vscode/README.md b/Examples/MAX32665/UART/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/UART/.vscode/README.md +++ b/Examples/MAX32665/UART/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/UART/.vscode/settings.json b/Examples/MAX32665/UART/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/UART/.vscode/settings.json +++ b/Examples/MAX32665/UART/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/UART/Makefile b/Examples/MAX32665/UART/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/UART/Makefile +++ b/Examples/MAX32665/UART/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/UART/main.c b/Examples/MAX32665/UART/main.c index 19839e2b85d..ec3d1cc1ebd 100644 --- a/Examples/MAX32665/UART/main.c +++ b/Examples/MAX32665/UART/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -82,7 +81,7 @@ void readCallback(mxc_uart_req_t *req, int error) READ_FLAG = error; } -void buttonHandler() +void buttonHandler(void) { buttonPressed = 1; } diff --git a/Examples/MAX32665/UART/project.mk b/Examples/MAX32665/UART/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/UART/project.mk +++ b/Examples/MAX32665/UART/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/UART_DMA/.cproject b/Examples/MAX32665/UART_DMA/.cproject new file mode 100644 index 00000000000..bbbb2e72e57 --- /dev/null +++ b/Examples/MAX32665/UART_DMA/.cproject @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/UART_DMA/.project b/Examples/MAX32665/UART_DMA/.project new file mode 100644 index 00000000000..523d770068f --- /dev/null +++ b/Examples/MAX32665/UART_DMA/.project @@ -0,0 +1,26 @@ + + + UART_DMA + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX78002/USB/USB_HIDKeyboard/.settings/language.settings.xml b/Examples/MAX32665/UART_DMA/.settings/language.settings.xml similarity index 100% rename from Examples/MAX78002/USB/USB_HIDKeyboard/.settings/language.settings.xml rename to Examples/MAX32665/UART_DMA/.settings/language.settings.xml diff --git a/Examples/MAX78002/USB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32665/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX78002/USB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32665/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32665/UART_DMA/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32665/UART_DMA/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..ea6bca78c3f --- /dev/null +++ b/Examples/MAX32665/UART_DMA/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=UART_DMA +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32665 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32665/UART_DMA/.settings/org.eclipse.core.resources.prefs b/Examples/MAX32665/UART_DMA/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 00000000000..99f26c0203a --- /dev/null +++ b/Examples/MAX32665/UART_DMA/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/Examples/MAX32665/UART_DMA/.vscode/README.md b/Examples/MAX32665/UART_DMA/.vscode/README.md new file mode 100755 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32665/UART_DMA/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX78002/USB/USB_HIDKeyboard/.vscode/c_cpp_properties.json b/Examples/MAX32665/UART_DMA/.vscode/c_cpp_properties.json similarity index 100% rename from Examples/MAX78002/USB/USB_HIDKeyboard/.vscode/c_cpp_properties.json rename to Examples/MAX32665/UART_DMA/.vscode/c_cpp_properties.json diff --git a/Examples/MAX78002/USB/USB_MassStorage/.vscode/flash.gdb b/Examples/MAX32665/UART_DMA/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_MassStorage/.vscode/flash.gdb rename to Examples/MAX32665/UART_DMA/.vscode/flash.gdb diff --git a/Examples/MAX32690/USB/USB_MassStorage/.vscode/launch.json b/Examples/MAX32665/UART_DMA/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32690/USB/USB_MassStorage/.vscode/launch.json rename to Examples/MAX32665/UART_DMA/.vscode/launch.json diff --git a/Examples/MAX32665/UART_DMA/.vscode/settings.json b/Examples/MAX32665/UART_DMA/.vscode/settings.json new file mode 100755 index 00000000000..4cc8b36e2fb --- /dev/null +++ b/Examples/MAX32665/UART_DMA/.vscode/settings.json @@ -0,0 +1,84 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32665", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32665.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX78002/USB/USB_MassStorage/.vscode/tasks.json b/Examples/MAX32665/UART_DMA/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_MassStorage/.vscode/tasks.json rename to Examples/MAX32665/UART_DMA/.vscode/tasks.json diff --git a/Examples/MAX32665/UART_DMA/Makefile b/Examples/MAX32665/UART_DMA/Makefile new file mode 100644 index 00000000000..585cabea5f5 --- /dev/null +++ b/Examples/MAX32665/UART_DMA/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32665 +TARGET_UC := MAX32665 +TARGET_LC := max32665 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32665/UART_DMA/README.md b/Examples/MAX32665/UART_DMA/README.md new file mode 100644 index 00000000000..f6a9d74d320 --- /dev/null +++ b/Examples/MAX32665/UART_DMA/README.md @@ -0,0 +1,71 @@ +## Description + +To demonstrate the use of the UART peripheral with DMA, data is sent between two UART ports on the MAX32665. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +(None - this project builds as a standard example) + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. +- Open an terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect P0.20 (RX of UART1) and P0.1 (TX of UART2). + +## Expected Output + +The Console UART of the device will output these messages: + +``` +**************** UART Example ****************** +This example sends data from one UART to another + +Connect RX(Px.xx) of UARTx and TX(Px.xx) of UARTx. + +To indicate a successful UART transfer, LED1 will illuminate. + +Push SW2 to continue + +UART Baud : 115200 Hz +Test Length : 512 bytes + +-->UART Initialized + +-->Data verified + +-->Example Succeeded + +``` + +or + +``` +**************** UART Example ****************** +This example sends data from one UART to another + +Connect RX(Px.xx) of UARTx and TX(Px.xx) of UARTx. + +To indicate a successful UART transfer, LED1 will illuminate. + +Push SW2 to continue + +UART Baud : 115200 Hz +Test Length : 512 bytes + +Acquired DMA channel 0 for RX transaction +Acquired DMA channel 1 for TX transaction + +-->UART Initialized + +-->Data verified + +-->Example Succeeded + +``` \ No newline at end of file diff --git a/Examples/MAX32665/UART_DMA/UART_DMA.launch b/Examples/MAX32665/UART_DMA/UART_DMA.launch new file mode 100644 index 00000000000..20b976110cf --- /dev/null +++ b/Examples/MAX32665/UART_DMA/UART_DMA.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/UART_DMA/main.c b/Examples/MAX32665/UART_DMA/main.c new file mode 100644 index 00000000000..d11333857e3 --- /dev/null +++ b/Examples/MAX32665/UART_DMA/main.c @@ -0,0 +1,277 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Main for UART with DMA example. + * @details This example demonstrates how to use DMA with UART for data transfer. + * The example sets up DMA channels to handle UART transmissions and receptions, + * looping back the TX of one UART to the RX of another UART. A jumper must be + * connected between P0.20 (RX of UART1) and P0.1 (TX of UART2). + * The example uses either automatic or manual DMA handler configuration + * depending on the AUTOHANDLERS macro definition. + */ + +/***** Includes *****/ +#include +#include +#include +#include "mxc_device.h" +#include "pb.h" +#include "board.h" +#include "mxc_delay.h" +#include "uart.h" +#include "dma.h" +#include "nvic_table.h" +#include "led.h" + +/***** Definitions *****/ +#define AUTOHANDLERS + +#define UART_BAUD 115200 +#define BUFF_SIZE 512 + +#define RX_UART MXC_UART1 +#define TX_UART MXC_UART2 + +#define DMA MXC_DMA0 + +/***** Globals *****/ +volatile int READ_FLAG; +volatile int WRITE_FLAG; +volatile int buttonPressed; +static mxc_uart_req_t read_req; +static mxc_uart_req_t write_req; + +#ifndef BOARD_FTHR2 +#warning "This example has been written for the MAX32665 FTHR2 board." +#endif + +/***** Functions *****/ +#ifndef AUTOHANDLERS +void DMA_RX_Handler(void) +{ + MXC_DMA_Handler(DMA); +} + +void DMA_TX_Handler(void) +{ + MXC_DMA_Handler(DMA); +} +#endif + +void readCallback(mxc_uart_req_t *req, int error) +{ + READ_FLAG = error; +} + +void writeCallback(mxc_uart_req_t *req, int error) +{ + WRITE_FLAG = error; +} + +void buttonHandler(void) +{ + buttonPressed = 1; +} + +#ifdef AUTOHANDLERS +int exampleDMAAutoHandlers(void) +{ + int error = 0; + + // Auto DMA handlers will automatically initialize DMA, acquire & assign channels, + // and guarantee that each transaction's callback function is executed when + // the transaction is complete. + MXC_UART_SetAutoDMAHandlers(RX_UART, true); + MXC_UART_SetAutoDMAHandlers(TX_UART, true); + + // "READ_FLAG" is set in the read transaction's callback. It will be set to 0 when + // the read request completes successfully. We use it to wait for the DMA transaction + // to complete, since the DMA APIs are asynchronous (non-blocking) + READ_FLAG = 1; + + error = MXC_UART_TransactionDMA(&read_req, DMA); + if (error) { + printf("-->Error starting DMA read: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + error = MXC_UART_TransactionDMA(&write_req, DMA); + if (error) { + printf("-->Error starting DMA write: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + while (READ_FLAG) {} + + printf("-->Transaction completed\n"); + return READ_FLAG; +} +#else +int exampleDMAManualHandlers(void) +{ + int error = 0; + // Manally initialize DMA + MXC_DMA_Init(DMA); + + // Manually acquire a channel for the read request and assign it to the drivers. + int rx_channel = MXC_DMA_AcquireChannel(DMA); + if (rx_channel >= 0) { + printf("Acquired DMA channel %i for RX transaction\n", rx_channel); + } else { + printf("Failed to acquire RX DMA channel with error %i\n", rx_channel); + return rx_channel; + } + MXC_UART_SetRXDMAChannel(RX_UART, rx_channel); + + // Additionally, assign the NVIC IRQ to a function that calls "MXC_DMA_Handler()". + // This is required for any assigned callbacks to work. + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(rx_channel)); + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(rx_channel), DMA_RX_Handler); + + // Do the same for the write request. + int tx_channel = MXC_DMA_AcquireChannel(DMA); + if (tx_channel >= 0) { + printf("Acquired DMA channel %i for RX transaction\n", tx_channel); + } else { + printf("Failed to acquire RX DMA channel with error %i\n", tx_channel); + return tx_channel; + } + MXC_UART_SetTXDMAChannel(TX_UART, tx_channel); + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(tx_channel)); + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(tx_channel), DMA_TX_Handler); + + // Initialize flags. We will use these to monitor when the read/write requests + // have completed, since the DMA APIs are asynchronous. + WRITE_FLAG = 1; + READ_FLAG = 1; + + error = MXC_UART_TransactionDMA(&read_req, DMA); + if (error) { + printf("-->Error starting DMA read: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + error = MXC_UART_TransactionDMA(&write_req, DMA); + if (error) { + printf("-->Error starting DMA write: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + while (WRITE_FLAG) {} + while (READ_FLAG) {} + + printf("-->Transaction completed\n"); + return WRITE_FLAG; +} +#endif // AUTOHANDLERS + +/******************************************************************************/ +int main(void) +{ + int error, i, fail = 0; + uint8_t TxData[BUFF_SIZE]; + uint8_t RxData[BUFF_SIZE]; + + printf("\n\n**************** UART Example ******************\n"); + printf("This example sends data from one UART to another\n"); + printf("\nConnect P0.20 (RX of UART1) and P0.1 (TX of UART2).\n\n"); + printf("To indicate a successful UART transfer, LED1 will illuminate.\n"); + printf("\nPush SW2 to continue\n"); + + buttonPressed = 0; + PB_RegisterCallback(0, (pb_callback)buttonHandler); + while (!buttonPressed) {} + + printf("\nUART Baud \t: %d Hz\n", UART_BAUD); + printf("Test Length \t: %d bytes\n\n", BUFF_SIZE); + + // Initialize the data buffers + for (i = 0; i < BUFF_SIZE; i++) { + TxData[i] = i; + } + memset(RxData, 0x0, BUFF_SIZE); + + // Initialize the UART + error = MXC_UART_Init(TX_UART, UART_BAUD, MAP_A); + if (error < E_NO_ERROR) { + printf("-->Error initializing UART: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + error = MXC_UART_Init(RX_UART, UART_BAUD, MAP_A); + if (error < E_NO_ERROR) { + printf("-->Error initializing UART: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + // Setup request structs describing the transactions. + // Request structs are placed in the global scope so they + // don't go out of context. This can happen when a req struct + // is declared inside a function and the function completes. + // The memory would be freed, invalidating the UART driver's + // pointers to it. + read_req.uart = RX_UART; + read_req.rxData = RxData; + read_req.rxLen = BUFF_SIZE; + read_req.txLen = 0; + read_req.callback = readCallback; + + write_req.uart = TX_UART; + write_req.txData = TxData; + write_req.txLen = BUFF_SIZE; + write_req.rxLen = 0; + write_req.callback = writeCallback; + + printf("-->UART Initialized\n\n"); + +#ifdef AUTOHANDLERS + error = exampleDMAAutoHandlers(); +#else + error = exampleDMAManualHandlers(); +#endif + + if (READ_FLAG != E_NO_ERROR) { + printf("-->Error with read callback; %d\n", READ_FLAG); + fail++; + } + + if ((error = memcmp(RxData, TxData, BUFF_SIZE)) != 0) { + printf("-->Error verifying Data: %d\n", error); + fail++; + } else { + printf("-->Data verified\n"); + } + + if (fail != 0) { + printf("\n-->Example Failed\n"); + LED_On(0); // indicates FAIL + return E_FAIL; + } + + LED_On(1); // indicates SUCCESS + printf("\n-->Example Succeeded\n"); + return E_NO_ERROR; +} diff --git a/Examples/MAX32665/UART_DMA/project.mk b/Examples/MAX32665/UART_DMA/project.mk new file mode 100644 index 00000000000..6b431a22292 --- /dev/null +++ b/Examples/MAX32665/UART_DMA/project.mk @@ -0,0 +1,15 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Add your config here! + +# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 diff --git a/Examples/MAX32665/UCL/.vscode/README.md b/Examples/MAX32665/UCL/.vscode/README.md index f57d4364851..cc0783881d1 100644 --- a/Examples/MAX32665/UCL/.vscode/README.md +++ b/Examples/MAX32665/UCL/.vscode/README.md @@ -4,14 +4,14 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) -* [Wiki](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/wiki) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) +* [Wiki](https://github.com/analogdevicesinc/VSCode-Maxim/wiki) * If it's not in the readme, check the wiki. * If it's not in the wiki, open a ticket! ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. The following features are supported: @@ -91,7 +91,7 @@ Ex: ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MaximSDK installation. @@ -413,7 +413,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the diff --git a/Examples/MAX32665/UCL/Makefile b/Examples/MAX32665/UCL/Makefile index 0603d275f81..305dff48d5f 100644 --- a/Examples/MAX32665/UCL/Makefile +++ b/Examples/MAX32665/UCL/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -25,7 +24,7 @@ # in "project.mk", on the command-line, or with system environment # variables. -# See https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# See https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # for more detailed instructions on how to use this system. # The detailed instructions mentioned above are easier to read than @@ -375,7 +374,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/UCL/project.mk b/Examples/MAX32665/UCL/project.mk index ca2b51f866b..4e8a0ff0966 100644 --- a/Examples/MAX32665/UCL/project.mk +++ b/Examples/MAX32665/UCL/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/USB/USB_CDCACM/.cproject b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.cproject similarity index 100% rename from Examples/MAX32665/USB/USB_CDCACM/.cproject rename to Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.cproject diff --git a/Examples/MAX32665/USB/USB_CDCACM/.project b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.project similarity index 100% rename from Examples/MAX32665/USB/USB_CDCACM/.project rename to Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.project diff --git a/Examples/MAX78002/USB/USB_MassStorage/.settings/language.settings.xml b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.settings/language.settings.xml similarity index 100% rename from Examples/MAX78002/USB/USB_MassStorage/.settings/language.settings.xml rename to Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.settings/language.settings.xml diff --git a/Examples/MAX78002/USB/USB_MassStorage_ThroughPut/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.settings/org.eclipse.cdt.codan.core.prefs similarity index 100% rename from Examples/MAX78002/USB/USB_MassStorage_ThroughPut/.settings/org.eclipse.cdt.codan.core.prefs rename to Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.settings/org.eclipse.cdt.codan.core.prefs diff --git a/Examples/MAX32665/USB/USB_CDCACM/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.settings/org.eclipse.cdt.core.prefs similarity index 100% rename from Examples/MAX32665/USB/USB_CDCACM/.settings/org.eclipse.cdt.core.prefs rename to Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.settings/org.eclipse.cdt.core.prefs diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.vscode/README.md b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX78002/USB/USB_MassStorage/.vscode/c_cpp_properties.json b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.vscode/c_cpp_properties.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_MassStorage/.vscode/c_cpp_properties.json rename to Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.vscode/c_cpp_properties.json diff --git a/Examples/MAX78002/USB/USB_MassStorage_ThroughPut/.vscode/flash.gdb b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.vscode/flash.gdb old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_MassStorage_ThroughPut/.vscode/flash.gdb rename to Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.vscode/flash.gdb diff --git a/Examples/MAX78002/USB/USB_CDCACM/.vscode/launch.json b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_CDCACM/.vscode/launch.json rename to Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.vscode/launch.json diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.vscode/settings.json b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.vscode/settings.json new file mode 100644 index 00000000000..eb402af1900 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.vscode/settings.json @@ -0,0 +1,94 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32665", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32665.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX78002/USB/USB_MassStorage_ThroughPut/.vscode/tasks.json b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.vscode/tasks.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_MassStorage_ThroughPut/.vscode/tasks.json rename to Examples/MAX32665/USB/MAXUSB/USB_CDCACM/.vscode/tasks.json diff --git a/Examples/MAX32665/USB/USB_CDCACM/Driver/maxim_usb-uart_adapter.cat b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/Driver/maxim_usb-uart_adapter.cat similarity index 100% rename from Examples/MAX32665/USB/USB_CDCACM/Driver/maxim_usb-uart_adapter.cat rename to Examples/MAX32665/USB/MAXUSB/USB_CDCACM/Driver/maxim_usb-uart_adapter.cat diff --git a/Examples/MAX32665/USB/USB_CDCACM/Driver/maxim_usb-uart_adapter.inf b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/Driver/maxim_usb-uart_adapter.inf similarity index 100% rename from Examples/MAX32665/USB/USB_CDCACM/Driver/maxim_usb-uart_adapter.inf rename to Examples/MAX32665/USB/MAXUSB/USB_CDCACM/Driver/maxim_usb-uart_adapter.inf diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/Makefile b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/Makefile new file mode 100644 index 00000000000..a1375f471f3 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32665 +TARGET_UC := MAX32665 +TARGET_LC := max32665 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32665/USB/USB_CDCACM/README.md b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/README.md similarity index 100% rename from Examples/MAX32665/USB/USB_CDCACM/README.md rename to Examples/MAX32665/USB/MAXUSB/USB_CDCACM/README.md diff --git a/Examples/MAX32665/USB/USB_CDCACM/USB_CDCACM.launch b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/USB_CDCACM.launch similarity index 100% rename from Examples/MAX32665/USB/USB_CDCACM/USB_CDCACM.launch rename to Examples/MAX32665/USB/MAXUSB/USB_CDCACM/USB_CDCACM.launch diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/descriptors.h b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/descriptors.h new file mode 100644 index 00000000000..1b61a6a644e --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/descriptors.h @@ -0,0 +1,176 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32665_USB_MAXUSB_USB_CDCACM_DESCRIPTORS_H_ +#define EXAMPLES_MAX32665_USB_MAXUSB_USB_CDCACM_DESCRIPTORS_H_ + +#include +#include "usb.h" +#include "hid_kbd.h" + +MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { + 0x12, /* bLength = 18 */ + 0x01, /* bDescriptorType = Device */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x02, /* bDeviceClass = comm class (2) */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x0B6A, /* idVendor (Maxim Integrated) */ + 0x003C, /* idProduct */ + 0x0100, /* bcdDevice */ + 0x01, /* iManufacturer Descriptor ID */ + 0x02, /* iProduct Descriptor ID */ + 0x00, /* iSerialNumber = (0) No string */ + 0x01 /* bNumConfigurations */ +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + MXC_USB_interface_descriptor_t comm_interface_descriptor; + uint8_t header_functional_descriptor[5]; + uint8_t call_management_descriptor[5]; + uint8_t acm_functional_descriptor[4]; + uint8_t union_functional_descriptor[5]; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; + MXC_USB_interface_descriptor_t data_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; +} config_descriptor = { + { + 0x09, /* bLength = 9 */ + 0x02, /* bDescriptorType = Config (2) */ + 0x0043, /* wTotalLength(L/H) */ + 0x02, /* bNumInterfaces */ + 0x01, /* bConfigValue */ + 0x00, /* iConfiguration */ + 0xE0, /* bmAttributes (self-powered, remote wakeup) */ + 0x01, /* MaxPower is 2ma (units are 2ma/bit) */ + }, + { + /* First Interface Descriptor For Comm Class Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x02, /* bInterfaceClass = Communications Interface Class (2) */ + 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ + 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ + 0x00, /* iInterface */ + }, + { + /* Header Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x00, /* bDescriptorSubtype */ + 0x10, 0x01, /* bcdCDC */ + }, + { + /* Call Management Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x01, /* bDescriptorSubtype */ + 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ + 0x01, /* bmDataInterface */ + }, + { + /* Abstract Control Management Functional Descriptor */ + 0x04, /* bFunctionalLength = 4 */ + 0x24, /* bDescriptorType */ + 0x02, /* bDescriptorSubtype */ + 0x02, /* bmCapabilities */ + }, + { + /* Union Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x06, /* bDescriptorSubtype */ + 0x00, /* bmMasterInterface */ + 0x01, /* bmSlaveInterface0 */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0040, /* wMaxPacketSize */ + 0xff, /* bInterval (milliseconds) */ + }, + { + /* Second Interface Descriptor For Data Interface */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType (Interface) */ + 0x01, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints */ + 0x0a, /* bInterfaceClass = Data Interface (10) */ + 0x00, /* bInterfaceSubClass = none (0) */ + 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ + 0x00, /* biInterface = No Text String (0) */ + }, + { + /* OUT Endpoint 1 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #3) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00 /* bInterval (N/A) */ + } +}; + +__attribute__((aligned(4))) uint8_t lang_id_desc[] = { + 0x04, /* bLength */ + 0x03, /* bDescriptorType */ + 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ +}; + +__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, + 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t prod_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', 0, + ' ', 0, 'C', 0, 'D', 0, 'C', 0, '-', 0, 'A', 0, 'C', 0, 'M', 0, +}; + +/* Not currently used (see device descriptor), but could be enabled if desired */ +__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ + 0x03, /* bDescriptorType */ + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, + '0', 0, '0', 0, '0', 0, '1', 0 }; + +#endif // EXAMPLES_MAX32665_USB_MAXUSB_USB_CDCACM_DESCRIPTORS_H_ diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/main.c b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/main.c new file mode 100644 index 00000000000..f4b14a8bbbb --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/main.c @@ -0,0 +1,379 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief USB CDC-ACM example + * @details This project creates a virtual COM port, which loops back data sent to it. + * Load the project, connect a cable from the PC to the USB connector + * on the Evaluation Kit, and observe that the PC now recognizes a new COM port. + * A driver for the COM port, if needed, is located in the Driver/ subdirectory. + * + */ + +#include +#include +#include "led.h" +#include "pb.h" +#include "mxc_delay.h" +#include "usb.h" +#include "usb_event.h" +#include "enumerate.h" +#include "cdc_acm.h" +#include "descriptors.h" +#include "gcr_regs.h" +#include "mxc_sys.h" + +/***** Definitions *****/ +#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS +#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) + +#define BUFFER_SIZE 64 + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) + +/***** Global Data *****/ +volatile int configured; +volatile int suspended; +volatile unsigned int event_flags; +int remote_wake_en; + +/***** Function Prototypes *****/ +int usbStartupCallback(void); +int usbShutdownCallback(void); +static void usbAppSleep(void); +static void usbAppWakeup(void); +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int eventCallback(maxusb_event_t evt, void *data); +static int usbReadCallback(void); +static void echoUSB(void); + +/***** File Scope Variables *****/ + +/* This EP assignment must match the Configuration Descriptor */ +static acm_cfg_t acm_cfg = { + 1, /* EP OUT */ + MXC_USBHS_MAX_PACKET, /* OUT max packet size */ + 2, /* EP IN */ + MXC_USBHS_MAX_PACKET, /* IN max packet size */ + 3, /* EP Notify */ + MXC_USBHS_MAX_PACKET, /* Notify max packet size */ +}; + +static volatile int usb_read_complete; + +/* User-supplied function to delay usec micro-seconds */ +void delay_us(unsigned int usec) +{ + /* mxc_delay() takes unsigned long, so can't use it directly */ + MXC_Delay(usec); +} + +/******************************************************************************/ +int main(void) +{ + maxusb_cfg_options_t usb_opts; + + printf("\n\n***** " TOSTRING(TARGET) " USB CDC-ACM Example *****\n"); + printf("Waiting for VBUS...\n"); + + /* Initialize state */ + configured = 0; + suspended = 0; + event_flags = 0; + remote_wake_en = 0; + + /* Start out in full speed */ + usb_opts.enable_hs = 0; + usb_opts.delay_us = delay_us; /* Function which will be used for delays */ + usb_opts.init_callback = usbStartupCallback; + usb_opts.shutdown_callback = usbShutdownCallback; + + /* Initialize the usb module */ + if (MXC_USB_Init(&usb_opts) != 0) { + printf("MXC_USB_Init() failed\n"); + + while (1) {} + } + + /* Initialize the enumeration module */ + if (enum_init() != 0) { + printf("enum_init() failed\n"); + + while (1) {} + } + + /* Register enumeration data */ + enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); + enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); + enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); + enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); + + /* Handle configuration */ + enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); + + /* Handle feature set/clear */ + enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); + enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); + + /* Initialize the class driver */ + if (acm_init(&config_descriptor.comm_interface_descriptor) != 0) { + printf("acm_init() failed\n"); + + while (1) {} + } + + /* Register callbacks */ + MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); + MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); + acm_register_callback(ACM_CB_READ_READY, usbReadCallback); + usb_read_complete = 0; + + /* Start with USB in low power mode */ + usbAppSleep(); + NVIC_EnableIRQ(USB_IRQn); + + /* Wait for events */ + while (1) { + echoUSB(); + + if (suspended || !configured) { + LED_Off(0); + } else { + LED_On(0); + } + + if (event_flags) { + /* Display events */ + if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); + printf("VBUS Disconnect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); + printf("VBUS Connect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); + printf("Bus Reset\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); + printf("Suspended\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); + printf("Resume\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { + MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); + printf("Enumeration complete. Waiting for characters from serial port just " + "created...\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { + MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); + printf("Remote Wakeup\n"); + } + } + } +} + +/* This callback is used to allow the driver to call part specific initialization functions. */ +/******************************************************************************/ +int usbStartupCallback(void) +{ + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clkcn & MXC_F_GCR_CLKCN_HIRC96M_EN)) { + MXC_GCR->clkcn |= MXC_F_GCR_CLKCN_HIRC96M_EN; + + if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLKCN_HIRC96M_RDY) != E_NO_ERROR) { + return E_TIME_OUT; + } + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +int usbShutdownCallback(void) +{ + MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +static void usbAppSleep(void) +{ + /* TODO: Place low-power code here */ + suspended = 1; +} + +/******************************************************************************/ +static void usbAppWakeup(void) +{ + /* TODO: Place low-power code here */ + suspended = 0; +} + +/******************************************************************************/ +static void echoUSB(void) +{ + int chars; + uint8_t buffer[BUFFER_SIZE]; + + if ((chars = acm_canread()) > 0) { + if (chars > BUFFER_SIZE) { + chars = BUFFER_SIZE; + } + + // Read the data from USB + if (acm_read(buffer, chars) != chars) { + printf("acm_read() failed\n"); + return; + } + + // Echo it back + if (acm_present()) { + if (acm_write(buffer, chars) != chars) { + printf("acm_write() failed\n"); + } + } + } +} + +/******************************************************************************/ +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + /* Confirm the configuration value */ + if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { + configured = 1; + MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); + + acm_cfg.out_ep = config_descriptor.endpoint_descriptor_1.bEndpointAddress & 0x7; + acm_cfg.out_maxpacket = config_descriptor.endpoint_descriptor_1.wMaxPacketSize; + acm_cfg.in_ep = config_descriptor.endpoint_descriptor_2.bEndpointAddress & 0x7; + acm_cfg.in_maxpacket = config_descriptor.endpoint_descriptor_2.wMaxPacketSize; + acm_cfg.notify_ep = config_descriptor.endpoint_descriptor_3.bEndpointAddress & 0x7; + acm_cfg.notify_maxpacket = config_descriptor.endpoint_descriptor_3.wMaxPacketSize; + + return acm_configure(&acm_cfg); /* Configure the device class */ + } else if (sud->wValue == 0) { + configured = 0; + return acm_deconfigure(); + } + + return -1; +} + +/******************************************************************************/ +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 1; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/******************************************************************************/ +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 0; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/******************************************************************************/ +static int eventCallback(maxusb_event_t evt, void *data) +{ + /* Set event flag */ + MXC_SETBIT(&event_flags, evt); + + switch (evt) { + case MAXUSB_EVENT_NOVBUS: + MXC_USB_EventDisable(MAXUSB_EVENT_BRST); + MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); + MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); + MXC_USB_Disconnect(); + configured = 0; + enum_clearconfig(); + acm_deconfigure(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_VBUS: + MXC_USB_EventClear(MAXUSB_EVENT_BRST); + MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_SUSP); + MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); + MXC_USB_Connect(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_BRST: + usbAppWakeup(); + enum_clearconfig(); + acm_deconfigure(); + configured = 0; + suspended = 0; + break; + + case MAXUSB_EVENT_SUSP: + usbAppSleep(); + break; + + case MAXUSB_EVENT_DPACT: + usbAppWakeup(); + break; + + default: + break; + } + + return 0; +} + +/******************************************************************************/ +static int usbReadCallback(void) +{ + usb_read_complete = 1; + return 0; +} + +/******************************************************************************/ +void USB_IRQHandler(void) +{ + MXC_USB_EventHandler(); +} + +/******************************************************************************/ +void SysTick_Handler(void) +{ + MXC_DelayHandler(); +} diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/project.mk b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/project.mk new file mode 100644 index 00000000000..4d1fda00515 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CDCACM/project.mk @@ -0,0 +1,33 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable MAXUSB library +LIB_MAXUSB = 1 diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.cproject b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.cproject similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.cproject rename to Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.cproject diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.project b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.project similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.project rename to Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.project diff --git a/Examples/MAX78002/USB/USB_MassStorage_ThroughPut/.settings/language.settings.xml b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/language.settings.xml similarity index 100% rename from Examples/MAX78002/USB/USB_MassStorage_ThroughPut/.settings/language.settings.xml rename to Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/language.settings.xml diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.core.prefs similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.core.prefs rename to Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.core.prefs diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/README.md b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX78002/USB/USB_MassStorage_ThroughPut/.vscode/c_cpp_properties.json b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/c_cpp_properties.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_MassStorage_ThroughPut/.vscode/c_cpp_properties.json rename to Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/c_cpp_properties.json diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX78002/USB/USB_CompositeDevice_MSC_CDC/.vscode/launch.json b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_CompositeDevice_MSC_CDC/.vscode/launch.json rename to Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/launch.json diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json new file mode 100644 index 00000000000..eb402af1900 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json @@ -0,0 +1,94 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32665", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32665.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/Makefile b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/Makefile new file mode 100644 index 00000000000..e08182e4384 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32665 +TARGET_UC := MAX32665 +TARGET_LC := max32665 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/README.md b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/README.md similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/README.md rename to Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/README.md diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/USB_CompositeDevice_MSC_CDC.launch b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/USB_CompositeDevice_MSC_CDC.launch similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/USB_CompositeDevice_MSC_CDC.launch rename to Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/USB_CompositeDevice_MSC_CDC.launch diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/descriptors.h b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/descriptors.h new file mode 100644 index 00000000000..11ca461981e --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/descriptors.h @@ -0,0 +1,443 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32665_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ +#define EXAMPLES_MAX32665_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ + +#include +#include "usb.h" +#include "hid_kbd.h" + +MXC_USB_device_descriptor_t __attribute__((aligned(4))) composite_device_descriptor = { + 0x12, /* bLength */ + 0x01, /* bDescriptorType = Device */ + 0x0200, + /* bcdUSB USB spec rev (BCD) */ /// + 0xEF, /* bDeviceClass = code specified by interface descriptors */ + 0x02, /* bDeviceSubClass = code specified by interface descriptors */ + 0x01, /* bDeviceProtocol = code specified by interface descriptors */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x0B6A, /* idVendor (Maxim Integrated) */ + 0x003C, + /* idProduct */ /// + 0x0100, /* bcdDevice */ + 0x01, /* iManufacturer Descriptor ID */ + 0x02, /* iProduct Descriptor ID */ + 0x00, /* iSerialNumber Descriptor ID */ + 0x01 /* bNumConfigurations */ +}; + +/* Device qualifier needed for high-speed operation */ +MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) +composite_device_qualifier_descriptor = { + 0x0A, /* bLength = 10 */ + 0x06, /* bDescriptorType = Device Qualifier */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0xEF, /* bDeviceClass = Unspecified */ + 0x02, /* bDeviceSubClass */ + 0x01, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x01, /* bNumConfigurations */ + 0x00 /* Reserved, must be 0 */ +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #0 Mass Storage Device */ + MXC_USB_interface_descriptor_t msc_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; + /* Interface Association Descriptor */ + uint8_t interface_association_descriptor[8]; + /* Interface #1 CDCACM Device */ + MXC_USB_interface_descriptor_t comm_interface_descriptor; + uint8_t header_functional_descriptor[5]; + uint8_t call_management_descriptor[5]; + uint8_t acm_functional_descriptor[4]; + uint8_t union_functional_descriptor[5]; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; + /* Interface #2 CDC Data*/ + MXC_USB_interface_descriptor_t data_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; +} + +composite_config_descriptor = { + { + 0x09, /* bLength */ + 0x02, /* bDescriptorType = Config */ + 0x0062, /* wTotalLength(L/H) = 98 bytes */ + 0x03, /* bNumInterfaces */ + 0x01, /* bConfigurationValue */ + 0x02, /* iConfiguration */ /// + 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ + 0x01, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + /********** Interface #0 : Mass Storage Device **********/ + { + /* Second Interface Descriptor For MSC Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints (one for IN one for OUT) */ + 0x08, /* bInterfaceClass = Mass Storage (8) */ + 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ + 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ + 0x05, /* iInterface */ + }, + { + /* OUT Endpoint 1 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00 /* bInterval (N/A) */ + }, + /********** Interface Association Descriptor **********/ + { + 0x08, /* bLength */ + 0x0B, /* bDescriptorType */ + 0x01, /* bFirstInterface */ + 0x02, /* bInterfaceCount */ + 0x02, /* bFunctionClass */ + 0x02, /* bFunctionSubClass */ + 0x01, /* bFunctionProtocol */ + 0x00, /* iFunction */ + }, + /********** Interface #1 : COMM Interface **********/ + { + /* First Interface Descriptor For Comm Class Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x01, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x02, /* bInterfaceClass = Communications Interface Class (2) */ + 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ + 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ + 0x04, /* iInterface */ + }, + { + /* Header Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x00, /* bDescriptorSubtype */ + 0x10, 0x01, /* bcdCDC */ + }, + { + /* Call Management Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x01, /* bDescriptorSubtype */ + 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ + 0x01, /* bmDataInterface */ + }, + { + /* Abstract Control Management Functional Descriptor */ + 0x04, /* bFunctionalLength = 4 */ + 0x24, /* bDescriptorType */ + 0x02, /* bDescriptorSubtype */ + 0x02, /* bmCapabilities */ + }, + { + /* Union Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x06, /* bDescriptorSubtype */ + 0x00, /* bmMasterInterface */ + 0x01, /* bmSlaveInterface0 */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x84, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0040, /* wMaxPacketSize */ + 0xff, /* bInterval (milliseconds) */ + }, + { + /* Second Interface Descriptor For Data Interface */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType (Interface) */ + 0x02, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints */ + 0x0a, /* bInterfaceClass = Data Interface (10) */ + 0x00, /* bInterfaceSubClass = none (0) */ + 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ + 0x04, /* biInterface = No Text String (0) */ + }, + { + /* OUT Endpoint 1 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x05, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #3) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #0 Mass Storage Device */ + MXC_USB_interface_descriptor_t msc_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; + /* Interface Association Descriptor */ + uint8_t interface_association_descriptor[8]; + /* Interface #1 CDCACM Device */ + MXC_USB_interface_descriptor_t comm_interface_descriptor; + uint8_t header_functional_descriptor[5]; + uint8_t call_management_descriptor[5]; + uint8_t acm_functional_descriptor[4]; + uint8_t union_functional_descriptor[5]; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; + /* Interface #2 CDC Data*/ + MXC_USB_interface_descriptor_t data_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; +} + +composite_config_descriptor_hs = { + { + 0x09, /* bLength */ + 0x02, /* bDescriptorType = Config */ + 0x0062, /* wTotalLength(L/H) */ + 0x03, /* bNumInterfaces */ + 0x01, /* bConfigurationValue */ + 0x02, /* iConfiguration */ + 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + /********** Interface #0 : Mass Storage Device **********/ + { + /* Second Interface Descriptor For MSC Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints (one for IN one for OUT) */ + 0x08, /* bInterfaceClass = Mass Storage (8) */ + 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ + 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ + 0x05, /* iInterface */ + }, + { + /* OUT Endpoint 1 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x01, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x01 /* bInterval (N/A) */ + }, + /********** Interface Association Descriptor **********/ + { + 0x08, /* bLength */ + 0x0B, /* bDescriptorType */ + 0x01, /* bFirstInterface */ + 0x02, /* bInterfaceCount */ + 0x02, /* bFunctionClass */ + 0x02, /* bFunctionSubClass */ + 0x01, /* bFunctionProtocol */ + 0x00, /* iFunction */ + }, + /********** Interface #1 : COMM Interface **********/ + { + /* First Interface Descriptor For Comm Class Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x01, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x02, /* bInterfaceClass = Communications Interface Class (2) */ + 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ + 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ + 0x04, /* iInterface */ + }, + { + /* Header Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x00, /* bDescriptorSubtype */ + 0x10, 0x01, /* bcdCDC */ + }, + { + /* Call Management Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x01, /* bDescriptorSubtype */ + 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ + 0x01, /* bmDataInterface */ + }, + { + /* Abstract Control Management Functional Descriptor */ + 0x04, /* bFunctionalLength = 4 */ + 0x24, /* bDescriptorType */ + 0x02, /* bDescriptorSubtype */ + 0x02, /* bmCapabilities */ + }, + { + /* Union Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x06, /* bDescriptorSubtype */ + 0x00, /* bmMasterInterface */ + 0x01, /* bmSlaveInterface0 */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x84, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0200, /* wMaxPacketSize */ + 0xff, /* bInterval (milliseconds) */ + }, + { + /* Second Interface Descriptor For Data Interface */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType (Interface) */ + 0x02, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints */ + 0x0a, /* bInterfaceClass = Data Interface (10) */ + 0x00, /* bInterfaceSubClass = none (0) */ + 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ + 0x04, /* biInterface = No Text String (0) */ + }, + { + /* OUT Endpoint 1 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x05, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #3) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, +}; + +__attribute__((aligned(4))) uint8_t report_descriptor[] = { + 0x05, 0x01, /* Usage Page (generic desktop) */ + 0x09, 0x06, /* Usage (keyboard) */ + 0xa1, 0x01, /* Collection */ + 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ + 0x19, 0xe0, /* Usage Minimum = 224 */ + 0x29, 0xe7, /* Usage Maximum = 231 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x01, /* Logical Maximum = 1 */ + 0x75, 0x01, /* Report Size = 1 */ + 0x95, 0x08, /* Report Count = 8 */ + 0x81, 0x02, /* Input(Data,Variable,Absolute) */ + 0x95, 0x01, /* Report Count = 1 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x81, 0x01, /* Input(Constant) */ + 0x19, 0x00, /* Usage Minimum = 0 */ + 0x29, 0x65, /* Usage Maximum = 101 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x65, /* Logical Maximum = 101 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x95, 0x01, /* Report Count = 1 */ + 0x81, 0x00, /* Input(Data,Variable,Array) */ + 0xc0 /* End Collection */ +}; + +__attribute__((aligned(4))) uint8_t lang_id_desc[] = { + 0x04, /* bLength */ + 0x03, /* bDescriptorType */ + 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ +}; + +__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, + 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t prod_id_desc[] = { + 0x34, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', + 0, 'C', 0, 'o', 0, 'm', 0, 'p', 0, 'o', 0, 's', 0, 'i', 0, 't', 0, + 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, +}; + +__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ + 0x03, /* bDescriptorType */ + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, + '0', 0, '0', 0, '0', 0, '1', 0 }; + +__attribute__((aligned(4))) uint8_t cdcacm_func_desc[] = { + 0x20, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', + 0, ' ', 0, 'C', 0, 'D', 0, 'C', 0, 'A', 0, 'C', 0, 'M', 0, +}; + +__attribute__((aligned(4))) uint8_t msc_func_desc[] = { + 0x3A, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', 0, 'M', + 0, 'a', 0, 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, + 'g', 0, 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, +}; + +#endif // EXAMPLES_MAX32665_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/main.c b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/main.c new file mode 100644 index 00000000000..1c361609e7b --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/main.c @@ -0,0 +1,444 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief USB composite device with Mass Storage driver class and CDC-SCM driver class. +*/ + +#include +#include +#include "mxc_sys.h" +#include "mxc_delay.h" +#include "board.h" +#include "led.h" +#include "usb.h" +#include "usb_event.h" +#include "enumerate.h" +#include "cdc_acm.h" +#include "msc.h" +#include "descriptors.h" +#include "mscmem.h" +#include "gcr_regs.h" + +/* **** Definitions **** */ +#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS +#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) + +#define BUFFER_SIZE 64 + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) + +/* **** Global Data **** */ +volatile int configured; +volatile int suspended; +volatile unsigned int event_flags; +int remote_wake_en; + +/* **** Function Prototypes **** */ + +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int eventCallback(maxusb_event_t evt, void *data); +static void usbAppSleep(void); +static void usbAppWakeup(void); +static int usbReadCallback(void); +int usbStartupCallback(void); +int usbShutdownCallback(void); +static void echoUSB(void); + +/* This EP assignment must match the Configuration Descriptor */ +static msc_cfg_t msc_cfg = { + 1, /* EP OUT */ + MXC_USBHS_MAX_PACKET, /* OUT max packet size */ + 2, /* EP IN */ + MXC_USBHS_MAX_PACKET, /* IN max packet size */ +}; + +static const msc_idstrings_t ids = { + "MAXIM", /* Vendor string. Maximum of 8 bytes */ + "MSC Example", /* Product string. Maximum of 16 bytes */ + "1.0" /* Version string. Maximum of 4 bytes */ +}; + +/* This EP assignment must match the Configuration Descriptor */ +static acm_cfg_t acm_cfg = { + 2, /* EP OUT */ + MXC_USBHS_MAX_PACKET, /* OUT max packet size */ + 3, /* EP IN */ + MXC_USBHS_MAX_PACKET, /* IN max packet size */ + 4, /* EP Notify */ + MXC_USBHS_MAX_PACKET, /* Notify max packet size */ +}; + +static volatile int usb_read_complete; + +/* Functions to control "disk" memory. See msc.h for definitions. */ +static const msc_mem_t mem = { mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, + mscmem_Size, mscmem_Read, mscmem_Write }; + +/** + * User-supplied function to delay usec micro-seconds + * + * @param[in] usec The usec time to delay. + */ +void delay_us(unsigned int usec) +{ + /* mxc_delay() takes unsigned long, so can't use it directly */ + MXC_Delay(usec); +} + +/* ************************************************************************** */ +int main(void) +{ + maxusb_cfg_options_t usb_opts; + + printf("\n\n***** " TOSTRING( + TARGET) " USB Composite Device (CDCACM and Mass Storage) Example *****\n"); + printf("Waiting for VBUS...\n"); + + /* Initialize state */ + configured = 0; + suspended = 0; + event_flags = 0; + remote_wake_en = 0; + + /* Start out in full speed */ + usb_opts.enable_hs = 1; /* 0:Full Speed 1:High Speed */ + usb_opts.delay_us = delay_us; /* Function which will be used for delays */ + usb_opts.init_callback = usbStartupCallback; + usb_opts.shutdown_callback = usbShutdownCallback; + + /* Initialize the usb module */ + if (MXC_USB_Init(&usb_opts) != 0) { + printf("usb_init() failed\n"); + while (1) {} + } + + /* Initialize the enumeration module */ + if (enum_init() != 0) { + printf("enum_init() failed\n"); + while (1) {} + } + + /* Register enumeration data */ + enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&composite_device_descriptor, 0); + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); + if (usb_opts.enable_hs) { + /* Two additional descriptors needed for high-speed operation */ + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor_hs, 0); + enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&composite_device_qualifier_descriptor, + 0); + } + enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); + enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); + enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); + enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); + enum_register_descriptor(ENUM_DESC_STRING, cdcacm_func_desc, 4); + enum_register_descriptor(ENUM_DESC_STRING, msc_func_desc, 5); + + /* Handle configuration */ + enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); + + /* Handle feature set/clear */ + enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); + enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); + + /* Initialize the class driver */ + if (msc_init(&composite_config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { + printf("msc_init() failed\n"); + while (1) {} + } + + if (acm_init(&composite_config_descriptor.comm_interface_descriptor) != 0) { + printf("acm_init() failed\n"); + while (1) {} + } + + /* Register callbacks */ + MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); + MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); + acm_register_callback(ACM_CB_READ_READY, usbReadCallback); + usb_read_complete = 0; + + /* Start with USB in low power mode */ + usbAppSleep(); + NVIC_EnableIRQ(USB_IRQn); + + /* Wait for events */ + while (1) { + echoUSB(); + + if (suspended || !configured) { + LED_Off(0); + } else { + LED_On(0); + } + + if (event_flags) { + /* Display events */ + if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); + printf("VBUS Disconnect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); + printf("VBUS Connect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); + printf("Bus Reset\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { /// + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); + printf("Bus Reset Done: %s speed\n", + (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); + printf("Suspended\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); + printf("Resume\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { + MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); + printf("Enumeration complete...\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { + MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); + printf("Remote Wakeup\n"); + } + } + } +} + +/******************************************************************************/ +static void echoUSB(void) +{ + int chars; + uint8_t buffer[BUFFER_SIZE]; + + if ((chars = acm_canread()) > 0) { + if (chars > BUFFER_SIZE) { + chars = BUFFER_SIZE; + } + + // Read the data from USB + if (acm_read(buffer, chars) != chars) { + printf("acm_read() failed\n"); + return; + } + + // Echo it back + if (acm_present()) { + if (acm_write(buffer, chars) != chars) { + printf("acm_write() failed\n"); + } + } + } +} + +/******************************************************************************/ +int usbStartupCallback(void) +{ + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clkcn & MXC_F_GCR_CLKCN_HIRC96M_EN)) { + MXC_GCR->clkcn |= MXC_F_GCR_CLKCN_HIRC96M_EN; + + if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLKCN_HIRC96M_RDY) != E_NO_ERROR) { + return E_TIME_OUT; + } + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +int usbShutdownCallback(void) +{ + MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/* ************************************************************************** */ + +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + /* Confirm the configuration value */ + if (sud->wValue == composite_config_descriptor.config_descriptor.bConfigurationValue) { + // on++; + configured = 1; + MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); + if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { /// + msc_cfg.out_ep = composite_config_descriptor_hs.endpoint_descriptor_1.bEndpointAddress & + 0x7; + msc_cfg.out_maxpacket = + composite_config_descriptor_hs.endpoint_descriptor_1.wMaxPacketSize; + msc_cfg.in_ep = composite_config_descriptor_hs.endpoint_descriptor_2.bEndpointAddress & + 0x7; + msc_cfg.in_maxpacket = + composite_config_descriptor_hs.endpoint_descriptor_2.wMaxPacketSize; + } else { + msc_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_1.bEndpointAddress & + 0x7; + msc_cfg.out_maxpacket = + composite_config_descriptor.endpoint_descriptor_1.wMaxPacketSize; + msc_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_2.bEndpointAddress & + 0x7; + msc_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_2.wMaxPacketSize; + } + + acm_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_4.bEndpointAddress & 0x7; + acm_cfg.out_maxpacket = composite_config_descriptor.endpoint_descriptor_4.wMaxPacketSize; + acm_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_5.bEndpointAddress & 0x7; + acm_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_5.wMaxPacketSize; + acm_cfg.notify_ep = composite_config_descriptor.endpoint_descriptor_3.bEndpointAddress & + 0x7; + acm_cfg.notify_maxpacket = composite_config_descriptor.endpoint_descriptor_3.wMaxPacketSize; + + msc_configure(&msc_cfg); + return acm_configure(&acm_cfg); + /* Configure the device class */ + } else if (sud->wValue == 0) { + configured = 0; + msc_deconfigure(); + return acm_deconfigure(); + } + + return -1; +} + +/* ************************************************************************** */ + +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 1; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/* ************************************************************************** */ + +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 0; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/* ************************************************************************** */ + +static void usbAppSleep(void) +{ + /* TODO: Place low-power code here */ + suspended = 1; +} + +/* ************************************************************************** */ + +static void usbAppWakeup(void) +{ + /* TODO: Place low-power code here */ + suspended = 0; +} + +/* ************************************************************************** */ +static int eventCallback(maxusb_event_t evt, void *data) +{ + /* Set event flag */ + MXC_SETBIT(&event_flags, evt); + + switch (evt) { + case MAXUSB_EVENT_NOVBUS: + MXC_USB_EventDisable(MAXUSB_EVENT_BRST); + MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); + MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); + MXC_USB_Disconnect(); + configured = 0; + enum_clearconfig(); + msc_deconfigure(); + acm_deconfigure(); + usbAppSleep(); + break; + case MAXUSB_EVENT_VBUS: + MXC_USB_EventClear(MAXUSB_EVENT_BRST); + MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); /// + MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, eventCallback, NULL); /// + MXC_USB_EventClear(MAXUSB_EVENT_SUSP); + MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); + MXC_USB_Connect(); + usbAppSleep(); + break; + case MAXUSB_EVENT_BRST: + usbAppWakeup(); + enum_clearconfig(); + msc_deconfigure(); + acm_deconfigure(); + configured = 0; + suspended = 0; + break; + case MAXUSB_EVENT_BRSTDN: /// + if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor_hs, + 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor, 0); + } else { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor_hs, + 0); + } + break; + case MAXUSB_EVENT_SUSP: + usbAppSleep(); + break; + case MAXUSB_EVENT_DPACT: + usbAppWakeup(); + break; + default: + break; + } + + return 0; +} + +/* ************************************************************************** */ + +void USB_IRQHandler(void) +{ + MXC_USB_EventHandler(); +} + +/******************************************************************************/ +static int usbReadCallback(void) +{ + usb_read_complete = 1; + return 0; +} diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.c b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.c new file mode 100644 index 00000000000..22424de1c94 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.c @@ -0,0 +1,312 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file mscmem.h + * @brief Memory routines used by the USB Mass Storage Class example. + * See the msc_mem_t structure in msc.h for function details. + * @details Functions are provided for using the internal RAM of the + * device or the external SPI flash memory. Use the SPIXF_DISK + * and RAM_DISK defines to select the desired memory at compile + * time. + */ + +#include "mscmem.h" +#include +#include +#include "Ext_Flash.h" +#include "spixf.h" + +/***** Definitions *****/ + +#define SPIXF_DISK 1 +#define RAM_DISK 0 + +#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ +#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ + +/***** Global Data *****/ + +/***** File Scope Variables *****/ + +static int initialized = 0; +static int running = 0; + +#if SPIXF_DISK + +#undef EXT_FLASH_BAUD +#define EXT_FLASH_BAUD 5000000 /* SPI clock rate to communicate with the external flash */ + +#define EXT_FLASH_SECTOR_SIZE 4096 /* Number of bytes in one sector of the external flash */ +#define EXT_FLASH_SECTOR_SIZE_SHIFT \ + 12 /* The shift value used to convert between addresses and block numbers */ +#define EXT_FLASH_NUM_SECTORS 2048 /* Total number of sectors in the external flash */ + +#define MXC_SPIXF_WIDTH Ext_Flash_DataLine_Single /*Number of data lines*/ + +#define LBA_PER_SECTOR (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) +#define INVALID_SECTOR \ + EXT_FLASH_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ + +/***** File Scope Variables *****/ +static uint32_t sectorNum = INVALID_SECTOR; +static uint8_t sector[EXT_FLASH_SECTOR_SIZE]; +static int sectorDirty = 0; + +/***** Function Prototypes *****/ +static uint32_t getSectorNum(uint32_t lba); +static uint32_t getSectorAddr(uint32_t lba); +static uint32_t getSector(uint32_t num); + +/******************************************************************************/ +static uint32_t getSectorNum(uint32_t lba) +{ + /* Absolute_address = lba * LBA_SIZE */ + /* Sector_num = Absolute_address / EXT_FLASH_SECTOR_SIZE */ + /* Sector_num = lba * 512 / 4096 */ + return lba >> (EXT_FLASH_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); +} + +/******************************************************************************/ +static uint32_t getSectorAddr(uint32_t lba) +{ + /* eight 512 byte blocks in each sector */ + return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; +} + +/******************************************************************************/ +static uint32_t getSector(uint32_t num) +{ + /* New sector requested? */ + if (sectorNum != num) { + /* Is the current sector real? */ + if (sectorNum != INVALID_SECTOR) { + /* Was it written to after it was read from memory? */ + if (sectorDirty) { + /* Erase the old data. */ + Ext_Flash_Erase(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, Ext_Flash_Erase_4K); + /* Write the new */ + Ext_Flash_Program_Page(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, + EXT_FLASH_SECTOR_SIZE, MXC_SPIXF_WIDTH); + /* Mark data as clean */ + sectorDirty = 0; + } + } + + /* Requesting a new valid sector? */ + if (num != INVALID_SECTOR) { + Ext_Flash_Read(num << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, EXT_FLASH_SECTOR_SIZE, + MXC_SPIXF_WIDTH); + sectorDirty = 0; + sectorNum = num; + } + } + + return 0; +} + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + MXC_SPIXF_SetSPIFrequency(EXT_FLASH_BAUD); + Ext_Flash_Init(); + Ext_Flash_Reset(); + + if (MXC_SPIXF_WIDTH == Ext_Flash_DataLine_Quad) { + Ext_Flash_Quad(1); + } else { + Ext_Flash_Quad(0); + } + + initialized = 1; + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + /* Get number of 512 byte chunks the external flash contains. */ + return (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) * EXT_FLASH_NUM_SECTORS; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to external flash sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from external flash */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(buffer, sector + addr, LBA_SIZE); + + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to external flash sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from external flash */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(sector + addr, buffer, LBA_SIZE); + sectorDirty = 1; + + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Turn on the external flash if it is not already. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the initialization succeeded. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* TODO - could shut down XIPF interface here. */ + + /* Flush the currently cached sector if necessary. */ + if (getSector(INVALID_SECTOR)) { + return 1; + } + + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#elif RAM_DISK + +#define NUM_PAGES 0x100 +static uint8_t mem[NUM_PAGES][LBA_SIZE]; + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + initialized = 1; +#if (ERASE_MEMORY_ON_INIT) + memset(mem, 0, sizeof(mem)); +#endif + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + return NUM_PAGES; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(buffer, mem[lba], LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(mem[lba], buffer, LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Not much to do for this implementation. The RAM is always ready. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the RAM has been initialized. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* Nothing to do for this implementation. All data is written as it is */ + /* received so there are no pending writes that need to be flushed. */ + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#else +#error "You must assign either RAM_DISK or SPIXF_DISK to 1." +#endif diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.h b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.h new file mode 100644 index 00000000000..51032a9ecb9 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.h @@ -0,0 +1,84 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file mscmem.h + * @brief Memory routines used by the USB Mass Storage Class example. + * See the msc_mem_t structure in msc.h for function details. + */ + +#ifndef EXAMPLES_MAX32665_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ +#define EXAMPLES_MAX32665_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ + +#include + +/* **** Definitions **** */ +#define ERASE_MEMORY_ON_INIT \ + 1 /* Configuration option to clear the memory (to 0s) on initialization. */ +/* Use 1 to clear or 0 to leave untouched. */ +/** + * @brief Perform any initialization necessary to prepare the memory for reading/writing data. + * @returns 0 if initialization is successful, non-zero if an error occurred. + */ +int mscmem_Init(void); + +/** + * @brief Activates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Start(void); + +/** + * @brief Deactivates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Stop(void); + +/** + * @brief Reports the total size of the mass-storage memory. + * @returns The number of 512 byte blocks contained in the memory. + */ +uint32_t mscmem_Size(void); + +/** + * @brief Reads 512 bytes of data from the memory. + * @param lba The index of the 512 byte block to read. + * @param buffer A byte array of at least 512 bytes to hold the values read. + * @returns 0 if reading is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Read(uint32_t lba, uint8_t *buffer); + +/** + * @brief Writes 512 bytes of data to the memory. + * @param lba The index of the 512 byte block to write. + * @param buffer A byte array of at least 512 bytes holding the values to write. + * @returns 0 if writing is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Write(uint32_t lba, uint8_t *buffer); + +/** + * @brief Checks if the memory is ready to be read/written. + * @returns non-zero if the memory is ready, 0 otherwise. + */ +int mscmem_Ready(void); + +#endif // EXAMPLES_MAX32665_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/project.mk b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/project.mk new file mode 100644 index 00000000000..c5eadd63ad9 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/project.mk @@ -0,0 +1,37 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable MAXUSB library +LIB_MAXUSB = 1 + +ifneq ($(BOARD),EvKit_V1) +$(error ERR_NOTSUPPORTED: This example requires an external flash IC that is only available for the MAX32665EVKIT) +endif diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.cproject b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.cproject similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.cproject rename to Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.cproject diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.project b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.project similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.project rename to Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.project diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.core.prefs similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.core.prefs rename to Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.core.prefs diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/README.md b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX78002/USB/USB_CompositeDevice_MSC_HID/.vscode/launch.json b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_CompositeDevice_MSC_HID/.vscode/launch.json rename to Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/launch.json diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/settings.json b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/settings.json new file mode 100644 index 00000000000..eb402af1900 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/settings.json @@ -0,0 +1,94 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32665", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32665.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/Makefile b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/Makefile new file mode 100644 index 00000000000..e08182e4384 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32665 +TARGET_UC := MAX32665 +TARGET_LC := max32665 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/README.md b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/README.md similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/README.md rename to Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/README.md diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/USB_CompositeDevice_MSC_HID.launch b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/USB_CompositeDevice_MSC_HID.launch similarity index 100% rename from Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/USB_CompositeDevice_MSC_HID.launch rename to Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/USB_CompositeDevice_MSC_HID.launch diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/descriptors.h b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/descriptors.h new file mode 100644 index 00000000000..8b2016918c4 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/descriptors.h @@ -0,0 +1,215 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32665_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ +#define EXAMPLES_MAX32665_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ + +#include +#include "usb.h" +#include "hid_kbd.h" + +MXC_USB_device_descriptor_t __attribute__((aligned(4))) composite_device_descriptor = { + 0x12, /* bLength */ + 0x01, /* bDescriptorType = Device */ + 0x0200, + /* bcdUSB USB spec rev (BCD) */ /// + 0x00, /* bDeviceClass = code specified by interface descriptors */ + 0x00, /* bDeviceSubClass = code specified by interface descriptors */ + 0x00, /* bDeviceProtocol = code specified by interface descriptors */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x0B6A, /* idVendor (Maxim Integrated) */ + 0x003C, + /* idProduct */ /// + 0x0100, /* bcdDevice */ + 0x01, /* iManufacturer Descriptor ID */ + 0x02, /* iProduct Descriptor ID */ + 0x03, /* iSerialNumber Descriptor ID */ + 0x01 /* bNumConfigurations */ +}; + +/* Device qualifier needed for high-speed operation */ +MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) +composite_device_qualifier_descriptor = { + 0x0A, /* bLength = 10 */ + 0x01, /* bDescriptorType = Device Qualifier */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x00, /* bDeviceClass = Unspecified */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x01, /* bNumConfigurations */ + 0x00 /* Reserved, must be 0 */ +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #1 HID Keyboard */ + MXC_USB_interface_descriptor_t hid_interface_descriptor; + hid_descriptor_t hid_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; + /* Interface #2 Mass Storage Device */ + MXC_USB_interface_descriptor_t msc_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; +} + +composite_config_descriptor = { + { + 0x09, /* bLength */ + 0x02, /* bDescriptorType = Config */ + 0x0039, /* wTotalLength(L/H) = 57 bytes */ + 0x02, /* bNumInterfaces */ + 0x01, /* bConfigurationValue */ + 0x02, /* iConfiguration */ + 0xA0, /* bmAttributes (bus-powered, remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + /********** Interface #0 : HID Keyboard **********/ + { + /* First Interface Descriptor */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x03, /* bInterfaceClass = HID */ + 0x00, /* bInterfaceSubClass */ + 0x00, /* bInterfaceProtocol */ + 0x04, /* iInterface */ + }, + { + /* HID Descriptor */ + 0x09, /* bFunctionalLength */ + 0x21, /* bDescriptorType = HID */ + 0x0110, /* bcdHID Rev 1.1 */ + 0x00, /* bCountryCode */ + 0x01, /* bNumDescriptors */ + 0x22, /* bDescriptorType = Report */ + 0x002b, /* wDescriptorLength */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0040, /* wMaxPacketSize */ + 0x0a /* bInterval (milliseconds) */ + }, + /********** Interface #1 : Mass Storage Device **********/ + { + /* Second Interface Descriptor For MSC Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x01, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints (one for IN one for OUT) */ + 0x08, /* bInterfaceClass = Mass Storage (8) */ + 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ + 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ + 0x05, /* iInterface */ + }, + { + /* OUT Endpoint 1 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00 /* bInterval (N/A) */ + }, +}; + +__attribute__((aligned(4))) uint8_t report_descriptor[] = { + 0x05, 0x01, /* Usage Page (generic desktop) */ + 0x09, 0x06, /* Usage (keyboard) */ + 0xa1, 0x01, /* Collection */ + 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ + 0x19, 0xe0, /* Usage Minimum = 224 */ + 0x29, 0xe7, /* Usage Maximum = 231 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x01, /* Logical Maximum = 1 */ + 0x75, 0x01, /* Report Size = 1 */ + 0x95, 0x08, /* Report Count = 8 */ + 0x81, 0x02, /* Input(Data,Variable,Absolute) */ + 0x95, 0x01, /* Report Count = 1 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x81, 0x01, /* Input(Constant) */ + 0x19, 0x00, /* Usage Minimum = 0 */ + 0x29, 0x65, /* Usage Maximum = 101 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x65, /* Logical Maximum = 101 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x95, 0x01, /* Report Count = 1 */ + 0x81, 0x00, /* Input(Data,Variable,Array) */ + 0xc0 /* End Collection */ +}; + +__attribute__((aligned(4))) uint8_t lang_id_desc[] = { + 0x04, /* bLength */ + 0x03, /* bDescriptorType */ + 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ +}; + +__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, + 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t prod_id_desc[] = { + 0x34, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', + 0, 'C', 0, 'o', 0, 'm', 0, 'p', 0, 'o', 0, 's', 0, 'i', 0, 't', 0, + 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, +}; + +__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ + 0x03, /* bDescriptorType */ + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, + '0', 0, '0', 0, '0', 0, '1', 0 }; + +__attribute__((aligned(4))) uint8_t hidkbd_func_desc[] = { + 0x24, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', + 0, 'K', 0, 'e', 0, 'y', 0, 'b', 0, 'o', 0, 'a', 0, 'r', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t msc_func_desc[] = { + 0x3A, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', 0, 'M', + 0, 'a', 0, 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, + 'g', 0, 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, +}; + +#endif // EXAMPLES_MAX32665_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/main.c b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/main.c new file mode 100644 index 00000000000..0c8fb246323 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/main.c @@ -0,0 +1,404 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief USB composite device with Mass Storage driver class and HID driver class. +*/ + +#include +#include +#include "gcr_regs.h" +#include "mxc_sys.h" +#include "led.h" +#include "pb.h" +#include "mxc_delay.h" +#include "usb.h" +#include "usb_event.h" +#include "enumerate.h" +#include "hid_kbd.h" +#include "msc.h" +#include "descriptors.h" +#include "mscmem.h" + +/* **** Definitions **** */ +#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS +#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) + +/* **** Global Data **** */ +volatile int configured; +volatile int suspended; +volatile unsigned int event_flags; +int remote_wake_en; + +/* This EP assignment must match the Configuration Descriptor */ +static msc_cfg_t msc_cfg = { + 1, /* EP OUT */ + MXC_USBHS_MAX_PACKET, /* OUT max packet size */ + 2, /* EP IN */ + MXC_USBHS_MAX_PACKET, /* IN max packet size */ +}; + +static const msc_idstrings_t ids = { + "MAXIM", /* Vendor string. Maximum of 8 bytes */ + "MSC Example", /* Product string. Maximum of 16 bytes */ + "1.0" /* Version string. Maximum of 4 bytes */ +}; + +/* Functions to control "disk" memory. See msc.h for definitions. */ +static const msc_mem_t mem = { + mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, mscmem_Size, mscmem_Read, mscmem_Write, +}; + +/* **** Function Prototypes **** */ +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int eventCallback(maxusb_event_t evt, void *data); +static void usbAppSleep(void); +static void usbAppWakeup(void); +static void buttonCallback(void *pb); +int usbStartupCallback(void); +int usbShutdownCallback(void); + +/** + * User-supplied function to delay usec micro-seconds + * + * @param[in] usec The usec time to delay. + */ +void delay_us(unsigned int usec) +{ + /* mxc_delay() takes unsigned long, so can't use it directly */ + MXC_Delay(usec); +} + +/* ************************************************************************** */ + +void USB_IRQHandler(void) +{ + MXC_USB_EventHandler(); +} + +/* ************************************************************************** */ +int main(void) +{ + maxusb_cfg_options_t usb_opts; + + printf("\n\n***** " TOSTRING( + TARGET) " USB Composite Device (Keyboard and Mass Storage) Example *****\n"); + printf("Waiting for VBUS...\n"); + + /* Initialize state */ + configured = 0; + suspended = 0; + event_flags = 0; + remote_wake_en = 0; + + /* Start out in full speed */ + usb_opts.enable_hs = 0; + usb_opts.delay_us = delay_us; /* Function which will be used for delays */ + usb_opts.init_callback = usbStartupCallback; + usb_opts.shutdown_callback = usbShutdownCallback; + + /* Initialize the usb module */ + if (MXC_USB_Init(&usb_opts) != 0) { + printf("usb_init() failed\n"); + + while (1) {} + } + + /* Initialize the enumeration module */ + if (enum_init() != 0) { + printf("enum_init() failed\n"); + + while (1) {} + } + + /* Register enumeration data */ + enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&composite_device_descriptor, 0); + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); + enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); + enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); + enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); + enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); + enum_register_descriptor(ENUM_DESC_STRING, hidkbd_func_desc, 4); + enum_register_descriptor(ENUM_DESC_STRING, msc_func_desc, 5); + + /* Handle configuration */ + enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); + + /* Handle feature set/clear */ + enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); + enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); + + /* Initialize the class driver */ + if (msc_init(&composite_config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { + printf("msc_init() failed\n"); + + while (1) {} + } + + if (hidkbd_init(&composite_config_descriptor.hid_interface_descriptor, + &composite_config_descriptor.hid_descriptor, report_descriptor) != 0) { + printf("hidkbd_init() failed\n"); + + while (1) {} + } + + /* Register callbacks */ + MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); + MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); + + /* Register callback for keyboard events */ + if (PB_RegisterCallback(0, buttonCallback) != E_NO_ERROR) { + printf("PB_RegisterCallback() failed\n"); + + while (1) {} + } + + /* Start with USB in low power mode */ + usbAppSleep(); + NVIC_EnableIRQ(USB_IRQn); + + /* Wait for events */ + while (1) { + if (suspended || !configured) { + LED_Off(0); + } else { + LED_On(0); + } + + if (event_flags) { + /* Display events */ + if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); + printf("VBUS Disconnect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); + printf("VBUS Connect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); + printf("Bus Reset\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); + printf("Suspended\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); + printf("Resume\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { + MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); + printf("Enumeration complete. Press SW2 to send character.\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { + MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); + printf("Remote Wakeup\n"); + } + } + } +} + +/******************************************************************************/ +int usbStartupCallback(void) +{ + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clkcn & MXC_F_GCR_CLKCN_HIRC96M_EN)) { + MXC_GCR->clkcn |= MXC_F_GCR_CLKCN_HIRC96M_EN; + + if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLKCN_HIRC96M_RDY) != E_NO_ERROR) { + return E_TIME_OUT; + } + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +int usbShutdownCallback(void) +{ + MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/* ************************************************************************** */ + +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 1; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/* ************************************************************************** */ + +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 0; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/* ************************************************************************** */ + +static void usbAppSleep(void) +{ + /* TODO: Place low-power code here */ + suspended = 1; +} + +/* ************************************************************************** */ + +static void usbAppWakeup(void) +{ + /* TODO: Place low-power code here */ + suspended = 0; +} + +/* ************************************************************************** */ + +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + /* Confirm the configuration value */ + if (sud->wValue == composite_config_descriptor.config_descriptor.bConfigurationValue) { + // on++; + configured = 1; + MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); + msc_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_1.bEndpointAddress & 0x7; + msc_cfg.out_maxpacket = composite_config_descriptor.endpoint_descriptor_1.wMaxPacketSize; + msc_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_2.bEndpointAddress & 0x7; + msc_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_2.wMaxPacketSize; + + msc_configure(&msc_cfg); + return hidkbd_configure(composite_config_descriptor.endpoint_descriptor_3.bEndpointAddress & + USB_EP_NUM_MASK); + } else if (sud->wValue == 0) { + configured = 0; + msc_deconfigure(); + return hidkbd_deconfigure(); + } + + return -1; +} + +/* ************************************************************************** */ + +static int eventCallback(maxusb_event_t evt, void *data) +{ + /* Set event flag */ + MXC_SETBIT(&event_flags, evt); + + switch (evt) { + case MAXUSB_EVENT_NOVBUS: + MXC_USB_EventDisable(MAXUSB_EVENT_BRST); + MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); + MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); + MXC_USB_Disconnect(); + configured = 0; + enum_clearconfig(); + hidkbd_deconfigure(); + msc_deconfigure(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_VBUS: + MXC_USB_EventClear(MAXUSB_EVENT_BRST); + MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_SUSP); + MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); + MXC_USB_Connect(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_BRST: + usbAppWakeup(); + enum_clearconfig(); + hidkbd_deconfigure(); + msc_deconfigure(); + configured = 0; + suspended = 0; + break; + + case MAXUSB_EVENT_SUSP: + usbAppSleep(); + break; + + case MAXUSB_EVENT_DPACT: + usbAppWakeup(); + break; + + default: + break; + } + + return 0; +} + +/* ************************************************************************** */ + +void buttonCallback(void *pb) +{ + static const uint8_t chars[] = "Maxim Integrated\n"; + static int i = 0; + int count = 0; + int button_pressed = 0; + + //determine if interrupt triggered by bounce or a true button press + while (PB_Get(0) && !button_pressed) { + count++; + + if (count > 1000) { + button_pressed = 1; + } + } + + if (button_pressed) { + LED_Toggle(0); + + if (configured) { + if (suspended && remote_wake_en) { + /* The bus is suspended. Wake up the host */ + suspended = 0; + usbAppWakeup(); + MXC_USB_RemoteWakeup(); + MXC_SETBIT(&event_flags, EVENT_REMOTE_WAKE); + } else { + if (i >= (sizeof(chars) - 1)) { + i = 0; + } + + hidkbd_keypress(chars[i++]); + } + } + } +} diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.c b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.c new file mode 100644 index 00000000000..22424de1c94 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.c @@ -0,0 +1,312 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file mscmem.h + * @brief Memory routines used by the USB Mass Storage Class example. + * See the msc_mem_t structure in msc.h for function details. + * @details Functions are provided for using the internal RAM of the + * device or the external SPI flash memory. Use the SPIXF_DISK + * and RAM_DISK defines to select the desired memory at compile + * time. + */ + +#include "mscmem.h" +#include +#include +#include "Ext_Flash.h" +#include "spixf.h" + +/***** Definitions *****/ + +#define SPIXF_DISK 1 +#define RAM_DISK 0 + +#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ +#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ + +/***** Global Data *****/ + +/***** File Scope Variables *****/ + +static int initialized = 0; +static int running = 0; + +#if SPIXF_DISK + +#undef EXT_FLASH_BAUD +#define EXT_FLASH_BAUD 5000000 /* SPI clock rate to communicate with the external flash */ + +#define EXT_FLASH_SECTOR_SIZE 4096 /* Number of bytes in one sector of the external flash */ +#define EXT_FLASH_SECTOR_SIZE_SHIFT \ + 12 /* The shift value used to convert between addresses and block numbers */ +#define EXT_FLASH_NUM_SECTORS 2048 /* Total number of sectors in the external flash */ + +#define MXC_SPIXF_WIDTH Ext_Flash_DataLine_Single /*Number of data lines*/ + +#define LBA_PER_SECTOR (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) +#define INVALID_SECTOR \ + EXT_FLASH_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ + +/***** File Scope Variables *****/ +static uint32_t sectorNum = INVALID_SECTOR; +static uint8_t sector[EXT_FLASH_SECTOR_SIZE]; +static int sectorDirty = 0; + +/***** Function Prototypes *****/ +static uint32_t getSectorNum(uint32_t lba); +static uint32_t getSectorAddr(uint32_t lba); +static uint32_t getSector(uint32_t num); + +/******************************************************************************/ +static uint32_t getSectorNum(uint32_t lba) +{ + /* Absolute_address = lba * LBA_SIZE */ + /* Sector_num = Absolute_address / EXT_FLASH_SECTOR_SIZE */ + /* Sector_num = lba * 512 / 4096 */ + return lba >> (EXT_FLASH_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); +} + +/******************************************************************************/ +static uint32_t getSectorAddr(uint32_t lba) +{ + /* eight 512 byte blocks in each sector */ + return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; +} + +/******************************************************************************/ +static uint32_t getSector(uint32_t num) +{ + /* New sector requested? */ + if (sectorNum != num) { + /* Is the current sector real? */ + if (sectorNum != INVALID_SECTOR) { + /* Was it written to after it was read from memory? */ + if (sectorDirty) { + /* Erase the old data. */ + Ext_Flash_Erase(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, Ext_Flash_Erase_4K); + /* Write the new */ + Ext_Flash_Program_Page(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, + EXT_FLASH_SECTOR_SIZE, MXC_SPIXF_WIDTH); + /* Mark data as clean */ + sectorDirty = 0; + } + } + + /* Requesting a new valid sector? */ + if (num != INVALID_SECTOR) { + Ext_Flash_Read(num << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, EXT_FLASH_SECTOR_SIZE, + MXC_SPIXF_WIDTH); + sectorDirty = 0; + sectorNum = num; + } + } + + return 0; +} + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + MXC_SPIXF_SetSPIFrequency(EXT_FLASH_BAUD); + Ext_Flash_Init(); + Ext_Flash_Reset(); + + if (MXC_SPIXF_WIDTH == Ext_Flash_DataLine_Quad) { + Ext_Flash_Quad(1); + } else { + Ext_Flash_Quad(0); + } + + initialized = 1; + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + /* Get number of 512 byte chunks the external flash contains. */ + return (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) * EXT_FLASH_NUM_SECTORS; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to external flash sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from external flash */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(buffer, sector + addr, LBA_SIZE); + + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to external flash sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from external flash */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(sector + addr, buffer, LBA_SIZE); + sectorDirty = 1; + + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Turn on the external flash if it is not already. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the initialization succeeded. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* TODO - could shut down XIPF interface here. */ + + /* Flush the currently cached sector if necessary. */ + if (getSector(INVALID_SECTOR)) { + return 1; + } + + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#elif RAM_DISK + +#define NUM_PAGES 0x100 +static uint8_t mem[NUM_PAGES][LBA_SIZE]; + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + initialized = 1; +#if (ERASE_MEMORY_ON_INIT) + memset(mem, 0, sizeof(mem)); +#endif + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + return NUM_PAGES; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(buffer, mem[lba], LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(mem[lba], buffer, LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Not much to do for this implementation. The RAM is always ready. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the RAM has been initialized. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* Nothing to do for this implementation. All data is written as it is */ + /* received so there are no pending writes that need to be flushed. */ + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#else +#error "You must assign either RAM_DISK or SPIXF_DISK to 1." +#endif diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.h b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.h new file mode 100644 index 00000000000..956f368934f --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.h @@ -0,0 +1,44 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file mscmem.h + * @brief Memory routines used by the USB Mass Storage Class example. + * See the msc_mem_t structure in msc.h for function details. + */ + +#ifndef EXAMPLES_MAX32665_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ +#define EXAMPLES_MAX32665_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ + +#include + +#define ERASE_MEMORY_ON_INIT \ + 1 /* Configuration option to clear the memory (to 0s) on initialization. */ +/* Use 1 to clear or 0 to leave untouched. */ + +int mscmem_Init(void); +int mscmem_Start(void); +int mscmem_Stop(void); +int mscmem_Ready(void); +uint32_t mscmem_Size(void); +int mscmem_Read(uint32_t lba, uint8_t *buffer); +int mscmem_Write(uint32_t lba, uint8_t *buffer); + +#endif // EXAMPLES_MAX32665_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ diff --git a/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/project.mk b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/project.mk new file mode 100644 index 00000000000..3899015bbcb --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_CompositeDevice_MSC_HID/project.mk @@ -0,0 +1,38 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable MAXUSB library +LIB_MAXUSB = 1 + +ifneq ($(BOARD),EvKit_V1) +$(error ERR_NOTSUPPORTED: This example requires an external flash IC that is only available for the MAX32665EVKIT) +endif + diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/.cproject b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.cproject similarity index 100% rename from Examples/MAX32665/USB/USB_HIDKeyboard/.cproject rename to Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.cproject diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/.project b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.project similarity index 100% rename from Examples/MAX32665/USB/USB_HIDKeyboard/.project rename to Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.project diff --git a/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.settings/language.settings.xml b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.settings/org.eclipse.cdt.core.prefs similarity index 100% rename from Examples/MAX32665/USB/USB_HIDKeyboard/.settings/org.eclipse.cdt.core.prefs rename to Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.settings/org.eclipse.cdt.core.prefs diff --git a/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/README.md b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/c_cpp_properties.json b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/flash.gdb b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX78002/USB/USB_HIDKeyboard/.vscode/launch.json b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_HIDKeyboard/.vscode/launch.json rename to Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/launch.json diff --git a/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/settings.json b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/settings.json new file mode 100644 index 00000000000..eb402af1900 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/settings.json @@ -0,0 +1,94 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32665", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32665.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/tasks.json b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/Makefile b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/Makefile new file mode 100644 index 00000000000..e08182e4384 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32665 +TARGET_UC := MAX32665 +TARGET_LC := max32665 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/README.md b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/README.md similarity index 100% rename from Examples/MAX32665/USB/USB_HIDKeyboard/README.md rename to Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/README.md diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/USB_HIDKeyboard.launch b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/USB_HIDKeyboard.launch similarity index 100% rename from Examples/MAX32665/USB/USB_HIDKeyboard/USB_HIDKeyboard.launch rename to Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/USB_HIDKeyboard.launch diff --git a/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/descriptors.h b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/descriptors.h new file mode 100644 index 00000000000..41b460959e0 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/descriptors.h @@ -0,0 +1,142 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32665_USB_MAXUSB_USB_HIDKEYBOARD_DESCRIPTORS_H_ +#define EXAMPLES_MAX32665_USB_MAXUSB_USB_HIDKEYBOARD_DESCRIPTORS_H_ + +#include +#include "usb.h" +#include "hid_kbd.h" + +MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { + 0x12, /* bLength */ + 0x01, /* bDescriptorType = Device */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x00, /* bDeviceClass = Unspecified */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x0B6A, /* idVendor (Maxim Integrated) */ + 0x003C, /* idProduct */ + 0x0100, /* bcdDevice */ + 0x01, /* iManufacturer Descriptor ID */ + 0x02, /* iProduct Descriptor ID */ + 0x03, /* iSerialNumber Descriptor ID */ + 0x01 /* bNumConfigurations */ +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + MXC_USB_interface_descriptor_t interface_descriptor; + hid_descriptor_t hid_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor; +} config_descriptor = { { + 0x09, /* bLength */ + 0x02, /* bDescriptorType = Config */ + 0x0022, /* wTotalLength(L/H) = 34 bytes */ + 0x01, /* bNumInterfaces */ + 0x01, /* bConfigurationValue */ + 0x00, /* iConfiguration */ + 0xA0, /* bmAttributes (bus-powered, remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + { + /* First Interface Descriptor */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x03, /* bInterfaceClass = HID */ + 0x00, /* bInterfaceSubClass */ + 0x00, /* bInterfaceProtocol */ + 0x00, /* iInterface */ + }, + { + /* HID Descriptor */ + 0x09, /* bFunctionalLength */ + 0x21, /* bDescriptorType = HID */ + 0x0110, /* bcdHID Rev 1.1 */ + 0x00, /* bCountryCode */ + 0x01, /* bNumDescriptors */ + 0x22, /* bDescriptorType = Report */ + 0x002b, /* wDescriptorLength */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0040, /* wMaxPacketSize */ + 0x0a /* bInterval (milliseconds) */ + } }; + +__attribute__((aligned(4))) uint8_t report_descriptor[] = { + 0x05, 0x01, /* Usage Page (generic desktop) */ + 0x09, 0x06, /* Usage (keyboard) */ + 0xa1, 0x01, /* Collection */ + 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ + 0x19, 0xe0, /* Usage Minimum = 224 */ + 0x29, 0xe7, /* Usage Maximum = 231 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x01, /* Logical Maximum = 1 */ + 0x75, 0x01, /* Report Size = 1 */ + 0x95, 0x08, /* Report Count = 8 */ + 0x81, 0x02, /* Input(Data,Variable,Absolute) */ + 0x95, 0x01, /* Report Count = 1 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x81, 0x01, /* Input(Constant) */ + 0x19, 0x00, /* Usage Minimum = 0 */ + 0x29, 0x65, /* Usage Maximum = 101 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x65, /* Logical Maximum = 101 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x95, 0x01, /* Report Count = 1 */ + 0x81, 0x00, /* Input(Data,Variable,Array) */ + 0xc0 /* End Collection */ +}; + +__attribute__((aligned(4))) uint8_t lang_id_desc[] = { + 0x04, /* bLength */ + 0x03, /* bDescriptorType */ + 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ +}; + +__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, + 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t prod_id_desc[] = { + 0x2c, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', 0, ' ', 0, 'H', 0, 'I', 0, + 'D', 0, ' ', 0, 'K', 0, 'e', 0, 'y', 0, 'b', 0, 'o', 0, 'a', 0, 'r', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x20, /* bLength */ + 0x03, /* bDescriptorType */ + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, + '0', 0, '0', 0, '0', 0, '1', 0 }; + +#endif // EXAMPLES_MAX32665_USB_MAXUSB_USB_HIDKEYBOARD_DESCRIPTORS_H_ diff --git a/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/main.c b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/main.c new file mode 100644 index 00000000000..2a4dd8601db --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/main.c @@ -0,0 +1,360 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Demonstrates how to configure a the USB device controller as a HID keyboard class device + * @details The EvKit should enumerate as a HID Keyboard device after loading the project and + * attaching a cable from the PC to the USB connector on the Evaluation Kit. + * 1. LED0 (P2.17) will illuminate once enumeration and configuration is complete. + * 2. Open a text editor on the PC host and place cursor in edit box. + * 3. Pressing pushbutton SW1 (P0.16) will cause a message to be typed in on a virtual keyboard one character at a time. + * + */ + +#include +#include +#include "led.h" +#include "pb.h" +#include "mxc_delay.h" +#include "usb.h" +#include "usb_event.h" +#include "enumerate.h" +#include "hid_kbd.h" +#include "descriptors.h" +#include "gcr_regs.h" +#include "mxc_sys.h" + +/***** Definitions *****/ +#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS +#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) + +/***** Global Data *****/ +int remoteWake; +volatile int configured; +volatile int suspended; +volatile unsigned int evtFlags; + +/***** Function Prototypes *****/ +int usbStartupCallback(void); +int usbShutdownCallback(void); +void usDelay(unsigned int usec); +static void usbAppSleep(void); +static void usbAppWakeup(void); +static void buttonCallback(void *pb); +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int eventCallback(maxusb_event_t evt, void *data); + +/******************************************************************************/ +void USB_IRQHandler(void) +{ + MXC_USB_EventHandler(); +} + +/******************************************************************************/ +int main(void) +{ + maxusb_cfg_options_t usb_opts; + + printf("\n\n***** " TOSTRING(TARGET) " USB HID Keyboard Example *****\n"); + printf("Waiting for VBUS...\n"); + + /* Initialize state */ + configured = 0; + suspended = 0; + evtFlags = 0; + remoteWake = 0; + + /* Start out in full speed */ + usb_opts.enable_hs = 0; + usb_opts.delay_us = usDelay; /* Function which will be used for delays */ + usb_opts.init_callback = usbStartupCallback; + usb_opts.shutdown_callback = usbShutdownCallback; + + /* Initialize the usb module */ + if (MXC_USB_Init(&usb_opts) != 0) { + printf("MXC_USB_Init() failed\n"); + + while (1) {} + } + + /* Initialize the enumeration module */ + if (enum_init() != 0) { + printf("enum_init() failed\n"); + + while (1) {} + } + + /* Register enumeration data */ + enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); + enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); + enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); + enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); + enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); + + /* Handle configuration */ + enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); + + /* Handle feature set/clear */ + enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); + enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); + + /* Initialize the class driver */ + if (hidkbd_init(&config_descriptor.interface_descriptor, &config_descriptor.hid_descriptor, + report_descriptor) != 0) { + printf("hidkbd_init() failed\n"); + + while (1) {} + } + + /* Register callbacks */ + MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); + MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); + + /* Register callback for keyboard events */ + if (PB_RegisterCallback(0, buttonCallback) != E_NO_ERROR) { + printf("PB_RegisterCallback() failed\n"); + + while (1) {} + } + + /* Start with USB in low power mode */ + usbAppSleep(); + NVIC_EnableIRQ(USB_IRQn); + + /* Wait for events */ + while (1) { + if (suspended || !configured) { + LED_Off(0); + } else { + LED_On(0); + } + + if (evtFlags) { + /* Display events */ + if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_NOVBUS)) { + MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_NOVBUS); + printf("VBUS Disconnect\n"); + } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_VBUS)) { + MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_VBUS); + printf("VBUS Connect\n"); + } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_BRST)) { + MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_BRST); + printf("Bus Reset\n"); + } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_SUSP)) { + MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_SUSP); + printf("Suspended\n"); + } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_DPACT)) { + MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_DPACT); + printf("Resume\n"); + } else if (MXC_GETBIT(&evtFlags, EVENT_ENUM_COMP)) { + MXC_CLRBIT(&evtFlags, EVENT_ENUM_COMP); + printf("Enumeration complete. Press SW1 to send character.\n"); + } else if (MXC_GETBIT(&evtFlags, EVENT_REMOTE_WAKE)) { + MXC_CLRBIT(&evtFlags, EVENT_REMOTE_WAKE); + printf("Remote Wakeup\n"); + } + } + } +} + +/******************************************************************************/ +int usbStartupCallback(void) +{ + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clkcn & MXC_F_GCR_CLKCN_HIRC96M_EN)) { + MXC_GCR->clkcn |= MXC_F_GCR_CLKCN_HIRC96M_EN; + + if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLKCN_HIRC96M_RDY) != E_NO_ERROR) { + return E_TIME_OUT; + } + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +int usbShutdownCallback(void) +{ + MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +/* User-supplied function to delay usec micro-seconds */ +void usDelay(unsigned int usec) +{ + /* mxc_delay() takes unsigned long, so can't use it directly */ + MXC_Delay(usec); +} + +/******************************************************************************/ +static void usbAppSleep(void) +{ + /* TODO: Place low-power code here */ + suspended = 1; +} + +/******************************************************************************/ +static void usbAppWakeup(void) +{ + /* TODO: Place low-power code here */ + suspended = 0; +} + +/******************************************************************************/ +static void buttonCallback(void *pb) +{ + static const uint8_t chars[] = "Maxim Integrated\n"; + static int i = 0; + int count = 0; + int button_pressed = 0; + + //determine if interrupt triggered by bounce or a true button press + while (PB_Get(0) && !button_pressed) { + count++; + + if (count > 1000) { + button_pressed = 1; + } + } + + if (button_pressed) { + LED_Toggle(0); + + if (configured) { + if (suspended && remoteWake) { + /* The bus is suspended. Wake up the host */ + suspended = 0; + usbAppWakeup(); + MXC_USB_RemoteWakeup(); + MXC_SETBIT(&evtFlags, EVENT_REMOTE_WAKE); + } else { + if (i >= (sizeof(chars) - 1)) { + i = 0; + } + + hidkbd_keypress(chars[i++]); + } + } + } +} + +/******************************************************************************/ +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + /* Confirm the configuration value */ + if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { + configured = 1; + MXC_SETBIT(&evtFlags, EVENT_ENUM_COMP); + return hidkbd_configure(config_descriptor.endpoint_descriptor.bEndpointAddress & + USB_EP_NUM_MASK); + } else if (sud->wValue == 0) { + configured = 0; + return hidkbd_deconfigure(); + } + + return -1; +} + +/******************************************************************************/ +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remoteWake = 1; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/******************************************************************************/ +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remoteWake = 0; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/******************************************************************************/ +static int eventCallback(maxusb_event_t evt, void *data) +{ + /* Set event flag */ + MXC_SETBIT(&evtFlags, evt); + + switch (evt) { + case MAXUSB_EVENT_NOVBUS: + MXC_USB_EventDisable(MAXUSB_EVENT_BRST); + MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); + MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); + MXC_USB_Disconnect(); + configured = 0; + enum_clearconfig(); + hidkbd_deconfigure(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_VBUS: + MXC_USB_EventClear(MAXUSB_EVENT_BRST); + MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_SUSP); + MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); + MXC_USB_Connect(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_BRST: + usbAppWakeup(); + enum_clearconfig(); + hidkbd_deconfigure(); + configured = 0; + suspended = 0; + break; + + case MAXUSB_EVENT_SUSP: + usbAppSleep(); + break; + + case MAXUSB_EVENT_DPACT: + usbAppWakeup(); + break; + + default: + break; + } + + return 0; +} diff --git a/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/project.mk b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/project.mk new file mode 100644 index 00000000000..4d1fda00515 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_HIDKeyboard/project.mk @@ -0,0 +1,33 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable MAXUSB library +LIB_MAXUSB = 1 diff --git a/Examples/MAX32665/USB/USB_MassStorage/.cproject b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.cproject similarity index 100% rename from Examples/MAX32665/USB/USB_MassStorage/.cproject rename to Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.cproject diff --git a/Examples/MAX32665/USB/USB_MassStorage/.project b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.project similarity index 100% rename from Examples/MAX32665/USB/USB_MassStorage/.project rename to Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.project diff --git a/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.settings/language.settings.xml b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32665/USB/USB_MassStorage/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.settings/org.eclipse.cdt.core.prefs similarity index 100% rename from Examples/MAX32665/USB/USB_MassStorage/.settings/org.eclipse.cdt.core.prefs rename to Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.settings/org.eclipse.cdt.core.prefs diff --git a/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/README.md b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/c_cpp_properties.json b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/flash.gdb b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX78002/USB/USB_MassStorage/.vscode/launch.json b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_MassStorage/.vscode/launch.json rename to Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/launch.json diff --git a/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/settings.json b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/settings.json new file mode 100644 index 00000000000..eb402af1900 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/settings.json @@ -0,0 +1,94 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32665", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32665.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/tasks.json b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/Makefile b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/Makefile new file mode 100644 index 00000000000..e08182e4384 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32665 +TARGET_UC := MAX32665 +TARGET_LC := max32665 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32665/USB/USB_MassStorage/README.md b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/README.md similarity index 100% rename from Examples/MAX32665/USB/USB_MassStorage/README.md rename to Examples/MAX32665/USB/MAXUSB/USB_MassStorage/README.md diff --git a/Examples/MAX32665/USB/USB_MassStorage/USB_MassStorage.launch b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/USB_MassStorage.launch similarity index 100% rename from Examples/MAX32665/USB/USB_MassStorage/USB_MassStorage.launch rename to Examples/MAX32665/USB/MAXUSB/USB_MassStorage/USB_MassStorage.launch diff --git a/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/descriptors.h b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/descriptors.h new file mode 100644 index 00000000000..94435ae5751 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/descriptors.h @@ -0,0 +1,180 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32665_USB_MAXUSB_USB_MASSSTORAGE_DESCRIPTORS_H_ +#define EXAMPLES_MAX32665_USB_MAXUSB_USB_MASSSTORAGE_DESCRIPTORS_H_ + +#include +#include "usb.h" +#include "hid_kbd.h" + +MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { + 0x12, /* bLength = 18 */ + 0x01, /* bDescriptorType = Device */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x00, /* bDeviceClass = Unspecified */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x0B6A, /* idVendor (Maxim Integrated) */ + 0x4402, /* idProduct */ + 0x0100, /* bcdDevice */ + 0x01, /* iManufacturer Descriptor ID */ + 0x02, /* iProduct Descriptor ID */ + 0x03, /* iSerialNumber = (0) No string */ + 0x01 /* bNumConfigurations */ +}; + +/* Device qualifier needed for high-speed operation */ +MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) device_qualifier_descriptor = { + 0x0A, /* bLength = 10 */ + 0x06, /* bDescriptorType = Device Qualifier */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x00, /* bDeviceClass = Unspecified */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x01, /* bNumConfigurations */ + 0x00 /* Reserved, must be 0 */ +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #0 Mass Storage Device */ + MXC_USB_interface_descriptor_t msc_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; +} config_descriptor = { { + 0x09, /* bLength = 9 */ + 0x02, /* bDescriptorType = Config (2) */ + 0x0020, /* wTotalLength(L/H) */ + 0x01, /* bNumInterfaces */ + 0x01, /* bConfigValue */ + 0x00, /* iConfiguration */ + 0xC0, /* bmAttributes (self-powered, no remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + { + /* First Interface Descriptor For MSC Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints (one for INm one for OUT) */ + 0x08, /* bInterfaceClass = Mass Storage (8) */ + 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ + 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ + 0x00, /* iInterface */ + }, + { + /* OUT Endpoint 1 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00 /* bInterval (N/A) */ + } }; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #0 Mass Storage Device */ + MXC_USB_interface_descriptor_t msc_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; +} config_descriptor_hs = { { + 0x09, /* bLength = 9 */ + 0x02, /* bDescriptorType = Config (2) */ + 0x0020, /* wTotalLength(L/H) */ + 0x01, /* bNumInterfaces */ + 0x01, /* bConfigValue */ + 0x00, /* iConfiguration */ + 0xC0, /* bmAttributes (self-powered, no remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + { + /* First Interface Descriptor For MSC Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints (one for INm one for OUT) */ + 0x08, /* bInterfaceClass = Mass Storage (8) */ + 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ + 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ + 0x00, /* iInterface */ + }, + { + /* OUT Endpoint 1 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x01, /* bInterval */ + }, + { + /* IN Endpoint 2 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x01 /* bInterval */ + } }; + +__attribute__((aligned(4))) uint8_t lang_id_desc[] = { + 0x04, /* bLength */ + 0x03, /* bDescriptorType */ + 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ +}; + +__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, + 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t prod_id_desc[] = { + 0x38, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, 'U', 0, 'S', 0, 'B', 0, ' ', 0, 'M', 0, 'a', 0, + 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, 'g', 0, + 'e', 0, ' ', 0, 'E', 0, 'x', 0, 'a', 0, 'm', 0, 'p', 0, 'l', 0, 'e', 0, +}; + +/* Not currently used (see device descriptor), but could be enabled if desired */ +__attribute__((aligned(4))) +uint8_t serial_id_desc[] = { 26, /* bLength */ + 0x03, /* bDescriptorType */ + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, '1', 0 }; + +#endif // EXAMPLES_MAX32665_USB_MAXUSB_USB_MASSSTORAGE_DESCRIPTORS_H_ diff --git a/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/main.c b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/main.c new file mode 100644 index 00000000000..c943cf12e31 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/main.c @@ -0,0 +1,366 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief USB Mass Storage Class example + * @details This project creates a mass storage device using either on-board RAM or + * external SPI flash memory. Load the project, connect a cable from the PC + * to the USB connector. A new external drive should appear than can be read + * and written. + */ + +#include +#include +#include "mxc_sys.h" +#include "mxc_delay.h" +#include "board.h" +#include "led.h" +#include "usb.h" +#include "usb_event.h" +#include "enumerate.h" +#include "msc.h" +#include "descriptors.h" +#include "mscmem.h" +#include "gcr_regs.h" + +/***** Definitions *****/ +#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS +#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) + +#define BUFFER_SIZE 64 + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) + +/***** Global Data *****/ +volatile int configured; +volatile int suspended; +volatile unsigned int event_flags; +int remote_wake_en; + +/***** Function Prototypes *****/ +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int eventCallback(maxusb_event_t evt, void *data); +static void usbAppSleep(void); +static void usbAppWakeup(void); +int usbStartupCallback(void); +int usbShutdownCallback(void); + +/***** File Scope Variables *****/ + +/* Defaults, which will be changed by the configuration code */ +static msc_cfg_t msc_cfg = { + 1, /* EP OUT */ + MXC_USBHS_MAX_PACKET, /* OUT max packet size */ + 2, /* EP IN */ + MXC_USBHS_MAX_PACKET, /* IN max packet size */ +}; + +static const msc_idstrings_t ids = { + "MAXIM", /* Vendor string. Maximum of 8 bytes */ + "MSC Example", /* Product string. Maximum of 16 bytes */ + "1.0" /* Version string. Maximum of 4 bytes */ +}; + +/* Functions to control "disk" memory. See msc.h for definitions. */ +static const msc_mem_t mem = { + mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, mscmem_Size, mscmem_Read, mscmem_Write, +}; + +/* User-supplied function to delay usec micro-seconds */ +void delay_us(unsigned int usec) +{ + /* mxc_delay() takes unsigned long, so can't use it directly */ + MXC_Delay(usec); +} + +/******************************************************************************/ +int main(void) +{ + maxusb_cfg_options_t usb_opts; + + printf("\n\n***** " TOSTRING(TARGET) " USB Mass Storage Example *****\n"); + printf("Waiting for VBUS...\n"); + + /* Initialize state */ + configured = 0; + suspended = 0; + event_flags = 0; + remote_wake_en = 0; + + /* Start out in full speed */ + usb_opts.enable_hs = 1; + usb_opts.delay_us = delay_us; /* Function which will be used for delays */ + usb_opts.init_callback = usbStartupCallback; + usb_opts.shutdown_callback = usbShutdownCallback; + + /* Initialize the usb module */ + if (MXC_USB_Init(&usb_opts) != 0) { + printf("usb_init() failed\n"); + while (1) {} + } + + /* Initialize the enumeration module */ + if (enum_init() != 0) { + printf("enum_init() failed\n"); + while (1) {} + } + + /* Register enumeration data */ + enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); + + if (usb_opts.enable_hs) { + /* Two additional descriptors needed for high-speed operation */ + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); + enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&device_qualifier_descriptor, 0); + } + + enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); + enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); + enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); + enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); + + /* Handle configuration */ + enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); + + /* Handle feature set/clear */ + enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); + enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); + + /* Initialize the class driver */ + if (msc_init(&config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { + printf("msc_init() failed\n"); + while (1) {} + } + + /* Register callbacks */ + MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); + MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); + + /* Start with USB in low power mode */ + usbAppSleep(); + NVIC_EnableIRQ(USB_IRQn); + + /* Wait for events */ + while (1) { + if (suspended || !configured) { + LED_Off(0); + } else { + LED_On(0); + } + + if (event_flags) { + /* Display events */ + if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); + printf("VBUS Disconnect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); + printf("VBUS Connect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); + printf("Bus Reset\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); + printf("Bus Reset Done: %s speed\n", + (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); + printf("Suspended\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); + printf("Resume\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { + MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); + printf("Enumeration complete.\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { + MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); + printf("Remote Wakeup\n"); + } + } + } +} + +/******************************************************************************/ +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + /* Confirm the configuration value */ + if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { + configured = 1; + MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); + + if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { + msc_cfg.out_ep = config_descriptor_hs.endpoint_descriptor_1.bEndpointAddress & 0x7; + msc_cfg.out_maxpacket = config_descriptor_hs.endpoint_descriptor_1.wMaxPacketSize; + msc_cfg.in_ep = config_descriptor_hs.endpoint_descriptor_2.bEndpointAddress & 0x7; + msc_cfg.in_maxpacket = config_descriptor_hs.endpoint_descriptor_2.wMaxPacketSize; + } else { + msc_cfg.out_ep = config_descriptor.endpoint_descriptor_1.bEndpointAddress & 0x7; + msc_cfg.out_maxpacket = config_descriptor.endpoint_descriptor_1.wMaxPacketSize; + msc_cfg.in_ep = config_descriptor.endpoint_descriptor_2.bEndpointAddress & 0x7; + msc_cfg.in_maxpacket = config_descriptor.endpoint_descriptor_2.wMaxPacketSize; + } + + return msc_configure(&msc_cfg); /* Configure the device class */ + + } else if (sud->wValue == 0) { + configured = 0; + return msc_deconfigure(); + } + + return -1; +} + +/******************************************************************************/ +int usbStartupCallback(void) +{ + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clkcn & MXC_F_GCR_CLKCN_HIRC96M_EN)) { + MXC_GCR->clkcn |= MXC_F_GCR_CLKCN_HIRC96M_EN; + + if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLKCN_HIRC96M_RDY) != E_NO_ERROR) { + return E_TIME_OUT; + } + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +int usbShutdownCallback(void) +{ + MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 1; + } else { + /* Unknown callback */ + return -1; + } + + return 0; +} + +/******************************************************************************/ +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 0; + } else { + /* Unknown callback */ + return -1; + } + + return 0; +} + +/******************************************************************************/ +static void usbAppSleep(void) +{ + /* TODO: Place low-power code here */ + suspended = 1; +} + +/******************************************************************************/ +static void usbAppWakeup(void) +{ + /* TODO: Place low-power code here */ + suspended = 0; +} + +/******************************************************************************/ +static int eventCallback(maxusb_event_t evt, void *data) +{ + /* Set event flag */ + MXC_SETBIT(&event_flags, evt); + + switch (evt) { + case MAXUSB_EVENT_NOVBUS: + MXC_USB_EventDisable(MAXUSB_EVENT_BRST); + MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); + MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); + MXC_USB_Disconnect(); + configured = 0; + enum_clearconfig(); + msc_deconfigure(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_VBUS: + MXC_USB_EventClear(MAXUSB_EVENT_BRST); + MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); + MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_SUSP); + MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); + MXC_USB_Connect(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_BRST: + usbAppWakeup(); + enum_clearconfig(); + msc_deconfigure(); + configured = 0; + suspended = 0; + break; + + case MAXUSB_EVENT_BRSTDN: + if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor_hs, 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor, 0); + } else { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); + } + break; + + case MAXUSB_EVENT_SUSP: + usbAppSleep(); + break; + + case MAXUSB_EVENT_DPACT: + usbAppWakeup(); + break; + + default: + break; + } + + return 0; +} + +/******************************************************************************/ +void USB_IRQHandler(void) +{ + MXC_USB_EventHandler(); +} diff --git a/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/mscmem.c b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/mscmem.c new file mode 100644 index 00000000000..22424de1c94 --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/mscmem.c @@ -0,0 +1,312 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file mscmem.h + * @brief Memory routines used by the USB Mass Storage Class example. + * See the msc_mem_t structure in msc.h for function details. + * @details Functions are provided for using the internal RAM of the + * device or the external SPI flash memory. Use the SPIXF_DISK + * and RAM_DISK defines to select the desired memory at compile + * time. + */ + +#include "mscmem.h" +#include +#include +#include "Ext_Flash.h" +#include "spixf.h" + +/***** Definitions *****/ + +#define SPIXF_DISK 1 +#define RAM_DISK 0 + +#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ +#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ + +/***** Global Data *****/ + +/***** File Scope Variables *****/ + +static int initialized = 0; +static int running = 0; + +#if SPIXF_DISK + +#undef EXT_FLASH_BAUD +#define EXT_FLASH_BAUD 5000000 /* SPI clock rate to communicate with the external flash */ + +#define EXT_FLASH_SECTOR_SIZE 4096 /* Number of bytes in one sector of the external flash */ +#define EXT_FLASH_SECTOR_SIZE_SHIFT \ + 12 /* The shift value used to convert between addresses and block numbers */ +#define EXT_FLASH_NUM_SECTORS 2048 /* Total number of sectors in the external flash */ + +#define MXC_SPIXF_WIDTH Ext_Flash_DataLine_Single /*Number of data lines*/ + +#define LBA_PER_SECTOR (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) +#define INVALID_SECTOR \ + EXT_FLASH_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ + +/***** File Scope Variables *****/ +static uint32_t sectorNum = INVALID_SECTOR; +static uint8_t sector[EXT_FLASH_SECTOR_SIZE]; +static int sectorDirty = 0; + +/***** Function Prototypes *****/ +static uint32_t getSectorNum(uint32_t lba); +static uint32_t getSectorAddr(uint32_t lba); +static uint32_t getSector(uint32_t num); + +/******************************************************************************/ +static uint32_t getSectorNum(uint32_t lba) +{ + /* Absolute_address = lba * LBA_SIZE */ + /* Sector_num = Absolute_address / EXT_FLASH_SECTOR_SIZE */ + /* Sector_num = lba * 512 / 4096 */ + return lba >> (EXT_FLASH_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); +} + +/******************************************************************************/ +static uint32_t getSectorAddr(uint32_t lba) +{ + /* eight 512 byte blocks in each sector */ + return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; +} + +/******************************************************************************/ +static uint32_t getSector(uint32_t num) +{ + /* New sector requested? */ + if (sectorNum != num) { + /* Is the current sector real? */ + if (sectorNum != INVALID_SECTOR) { + /* Was it written to after it was read from memory? */ + if (sectorDirty) { + /* Erase the old data. */ + Ext_Flash_Erase(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, Ext_Flash_Erase_4K); + /* Write the new */ + Ext_Flash_Program_Page(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, + EXT_FLASH_SECTOR_SIZE, MXC_SPIXF_WIDTH); + /* Mark data as clean */ + sectorDirty = 0; + } + } + + /* Requesting a new valid sector? */ + if (num != INVALID_SECTOR) { + Ext_Flash_Read(num << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, EXT_FLASH_SECTOR_SIZE, + MXC_SPIXF_WIDTH); + sectorDirty = 0; + sectorNum = num; + } + } + + return 0; +} + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + MXC_SPIXF_SetSPIFrequency(EXT_FLASH_BAUD); + Ext_Flash_Init(); + Ext_Flash_Reset(); + + if (MXC_SPIXF_WIDTH == Ext_Flash_DataLine_Quad) { + Ext_Flash_Quad(1); + } else { + Ext_Flash_Quad(0); + } + + initialized = 1; + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + /* Get number of 512 byte chunks the external flash contains. */ + return (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) * EXT_FLASH_NUM_SECTORS; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to external flash sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from external flash */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(buffer, sector + addr, LBA_SIZE); + + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to external flash sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from external flash */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(sector + addr, buffer, LBA_SIZE); + sectorDirty = 1; + + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Turn on the external flash if it is not already. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the initialization succeeded. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* TODO - could shut down XIPF interface here. */ + + /* Flush the currently cached sector if necessary. */ + if (getSector(INVALID_SECTOR)) { + return 1; + } + + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#elif RAM_DISK + +#define NUM_PAGES 0x100 +static uint8_t mem[NUM_PAGES][LBA_SIZE]; + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + initialized = 1; +#if (ERASE_MEMORY_ON_INIT) + memset(mem, 0, sizeof(mem)); +#endif + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + return NUM_PAGES; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(buffer, mem[lba], LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(mem[lba], buffer, LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Not much to do for this implementation. The RAM is always ready. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the RAM has been initialized. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* Nothing to do for this implementation. All data is written as it is */ + /* received so there are no pending writes that need to be flushed. */ + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#else +#error "You must assign either RAM_DISK or SPIXF_DISK to 1." +#endif diff --git a/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/mscmem.h b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/mscmem.h new file mode 100644 index 00000000000..f652fe0199b --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/mscmem.h @@ -0,0 +1,85 @@ +/** + * @file + * @brief Memory routines used by the USB Mass Storage Class example. + * See the @ref msc_mem_t structure in msc.h for function details. + */ + +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32665_USB_MAXUSB_USB_MASSSTORAGE_MSCMEM_H_ +#define EXAMPLES_MAX32665_USB_MAXUSB_USB_MASSSTORAGE_MSCMEM_H_ + +/* **** Include Files **** */ +#include + +/* **** Definitions **** */ +#define ERASE_MEMORY_ON_INIT \ + 1 /* Configuration option to clear the memory (to 0s) on initialization. */ +/* Use 1 to clear or 0 to leave untouched. */ +/** + * @brief Perform any initialization necessary to prepare the memory for reading/writing data. + * @returns 0 if initialization is successful, non-zero if an error occurred. + */ +int mscmem_Init(void); + +/** + * @brief Activates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Start(void); + +/** + * @brief Deactivates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Stop(void); + +/** + * @brief Reports the total size of the mass-storage memory. + * @returns The number of 512 byte blocks contained in the memory. + */ +uint32_t mscmem_Size(void); + +/** + * @brief Reads 512 bytes of data from the memory. + * @param lba The index of the 512 byte block to read. + * @param buffer A byte array of at least 512 bytes to hold the values read. + * @returns 0 if reading is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Read(uint32_t lba, uint8_t *buffer); + +/** + * @brief Writes 512 bytes of data to the memory. + * @param lba The index of the 512 byte block to write. + * @param buffer A byte array of at least 512 bytes holding the values to write. + * @returns 0 if writing is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Write(uint32_t lba, uint8_t *buffer); + +/** + * @brief Checks if the memory is ready to be read/written. + * @returns non-zero if the memory is ready, 0 otherwise. + */ +int mscmem_Ready(void); + +#endif // EXAMPLES_MAX32665_USB_MAXUSB_USB_MASSSTORAGE_MSCMEM_H_ diff --git a/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/project.mk b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/project.mk new file mode 100644 index 00000000000..3899015bbcb --- /dev/null +++ b/Examples/MAX32665/USB/MAXUSB/USB_MassStorage/project.mk @@ -0,0 +1,38 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable MAXUSB library +LIB_MAXUSB = 1 + +ifneq ($(BOARD),EvKit_V1) +$(error ERR_NOTSUPPORTED: This example requires an external flash IC that is only available for the MAX32665EVKIT) +endif + diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/.cproject b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.cproject new file mode 100644 index 00000000000..2bb51c81ff2 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.cproject @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/.project b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.project new file mode 100644 index 00000000000..fa23f214065 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.project @@ -0,0 +1,26 @@ + + + cdc_msc + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/.settings/language.settings.xml b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..dcf786214af --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=cdc_msc +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32665 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/README.md b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/c_cpp_properties.json b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/flash.gdb b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX78002/USB/USB_MassStorage_ThroughPut/.vscode/launch.json b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/launch.json old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX78002/USB/USB_MassStorage_ThroughPut/.vscode/launch.json rename to Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/launch.json diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/settings.json b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/settings.json new file mode 100644 index 00000000000..eb402af1900 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/settings.json @@ -0,0 +1,94 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32665", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32665.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/tasks.json b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/Makefile b/Examples/MAX32665/USB/TinyUSB/cdc_msc/Makefile new file mode 100644 index 00000000000..a1375f471f3 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32665 +TARGET_UC := MAX32665 +TARGET_LC := max32665 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/README.md b/Examples/MAX32665/USB/TinyUSB/cdc_msc/README.md new file mode 100644 index 00000000000..b4c3c8ba1f0 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/README.md @@ -0,0 +1,41 @@ +## Description + +The example demonstrates the use of USB composite device with Mass Storage driver class and CDC-ACM driver class using the TinyUSB stack +on a bare-metal system +. After doing the required connections given below, run the program and two new devices appear in the device manager, a Portable device and COM Port. The README.TXT file on the portable device can be read. Open a terminal application on the PC at 115200 baud rate, and echo the characters on the terminal. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +tusb_config.h by default has logging disabled via the CFG_TUSB_DEBUG definition. +For TinyUSB console logging, set the debug level to 1, 2, or 3, with a higher value +indicating more verbose logging. + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR/UARTS) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. Make sure JP6 (2-3) is connected to UART. +- Default EV kit hardware configuration. + +## Expected Output + +By default, the console UART does not output any message. With CFG_TUSB_DEBUG set +to '2', the Console UART of the device will output these messages: + +``` +USBD init on controller 0, Highspeed = 1024 +sizeof(usbd_device_t) = 69 +sizeof(dcd_event_t) = 12 +sizeof(tu_fifo_t) = 20 +sizeof(tu_edpt_stream_t) = 112 +CDC init +MSC init +USBD Bus Reset : High Speed +``` diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/cdc_msc.launch b/Examples/MAX32665/USB/TinyUSB/cdc_msc/cdc_msc.launch new file mode 100644 index 00000000000..193f122c392 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/cdc_msc.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/main.c b/Examples/MAX32665/USB/TinyUSB/cdc_msc/main.c new file mode 100644 index 00000000000..ddeeeb4e321 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/main.c @@ -0,0 +1,210 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * Copyright (c) 2024 Analog Devices, Inc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" +#include "led.h" +#include "mxc_device.h" +#include "gcr_regs.h" +#include "mxc_sys.h" + +//--------------------------------------------------------------------+ +// MACRO CONSTANT TYPEDEF PROTOTYPES +//--------------------------------------------------------------------+ + +/* Blink pattern + * - 250 ms : device not mounted + * - 1000 ms : device mounted + * - 2500 ms : device is suspended + */ +enum { + BLINK_NOT_MOUNTED = 250, + BLINK_MOUNTED = 1000, + BLINK_SUSPENDED = 2500, +}; + +static uint32_t blink_interval_ms = BLINK_NOT_MOUNTED; + +void led_blinking_task(void); +void cdc_task(void); + +/*------------- MAIN -------------*/ +int main(void) +{ + board_init(); + + // init device stack on configured roothub port + tud_init(BOARD_TUD_RHPORT); + + if (board_init_after_tusb) { + board_init_after_tusb(); + } + + while (1) { + tud_task(); // tinyusb device task + led_blinking_task(); + + cdc_task(); + } +} + +//--------------------------------------------------------------------+ +// Device callbacks +//--------------------------------------------------------------------+ + +// Invoked when device is mounted +void tud_mount_cb(void) +{ + blink_interval_ms = BLINK_MOUNTED; +} + +// Invoked when device is unmounted +void tud_umount_cb(void) +{ + blink_interval_ms = BLINK_NOT_MOUNTED; +} + +// Invoked when usb bus is suspended +// remote_wakeup_en : if host allow us to perform remote wakeup +// Within 7ms, device must draw an average of current less than 2.5 mA from bus +void tud_suspend_cb(bool remote_wakeup_en) +{ + (void)remote_wakeup_en; + blink_interval_ms = BLINK_SUSPENDED; +} + +// Invoked when usb bus is resumed +void tud_resume_cb(void) +{ + blink_interval_ms = tud_mounted() ? BLINK_MOUNTED : BLINK_NOT_MOUNTED; +} + +//--------------------------------------------------------------------+ +// USB CDC +//--------------------------------------------------------------------+ +void cdc_task(void) +{ + // connected() check for DTR bit + // Most but not all terminal client set this when making connection + // if ( tud_cdc_connected() ) + { + // connected and there are data available + if (tud_cdc_available()) { + // read data + char buf[64]; + uint32_t count = tud_cdc_read(buf, sizeof(buf)); + (void)count; + + // Echo back + // Note: Skip echo by commenting out write() and write_flush() + // for throughput test e.g + // $ dd if=/dev/zero of=/dev/ttyACM0 count=10000 + tud_cdc_write(buf, count); + tud_cdc_write_flush(); + } + } +} + +// Invoked when cdc when line state changed e.g connected/disconnected +void tud_cdc_line_state_cb(uint8_t itf, bool dtr, bool rts) +{ + (void)itf; + (void)rts; + + if (dtr) { + // Terminal connected + } else { + // Terminal disconnected + } +} + +// Invoked when CDC interface received data from host +void tud_cdc_rx_cb(uint8_t itf) +{ + (void)itf; +} + +//--------------------------------------------------------------------+ +// BLINKING TASK +//--------------------------------------------------------------------+ +void led_blinking_task(void) +{ + static uint32_t start_ms = 0; + static bool led_state = false; + + // Blink every interval ms + if (board_millis() - start_ms < blink_interval_ms) + return; // not enough time + start_ms += blink_interval_ms; + + board_led_write(led_state); + led_state = 1 - led_state; // toggle +} + +//------------------------------------------------------------------------------ +// Wrapper functions to bridge TinyUSB BSP with MSDK BSP +//------------------------------------------------------------------------------ +void board_init(void) +{ + // 1ms tick timer + SysTick_Config(SystemCoreClock / 1000); + + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clkcn & MXC_F_GCR_CLKCN_HIRC96M_EN)) { + MXC_GCR->clkcn |= MXC_F_GCR_CLKCN_HIRC96M_EN; + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); +} + +void board_led_write(bool state) +{ + if (state) { + LED_On(0); + } else { + LED_Off(0); + } +} + +//--------------------------------------------------------------------+ +// Forward USB interrupt events to TinyUSB IRQ Handler +//--------------------------------------------------------------------+ +void USB_IRQHandler(void) +{ + tud_int_handler(0); +} + +volatile uint32_t system_ticks = 0; + +void SysTick_Handler(void) +{ + system_ticks++; +} + +uint32_t board_millis(void) +{ + return system_ticks; +} diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/msc_disk.c b/Examples/MAX32665/USB/TinyUSB/cdc_msc/msc_disk.c new file mode 100644 index 00000000000..c4d220423e8 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/msc_disk.c @@ -0,0 +1,276 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +#if CFG_TUD_MSC + +// whether host does safe-eject +static bool ejected = false; + +// Some MCU doesn't have enough 8KB SRAM to store the whole disk +// We will use Flash as read-only disk with board that has +// CFG_EXAMPLE_MSC_READONLY defined + +#define README_CONTENTS \ + "This is tinyusb's MassStorage Class demo.\r\n\r\n" \ + "If you find any bugs or get any questions, feel free to file an\r\n" \ + "issue at github.com/hathach/tinyusb" + +enum { + DISK_BLOCK_NUM = 16, // 8KB is the smallest size that windows allow to mount + DISK_BLOCK_SIZE = 512 +}; + +#ifdef CFG_EXAMPLE_MSC_READONLY +const +#endif + uint8_t msc_disk[DISK_BLOCK_NUM][DISK_BLOCK_SIZE] = { + //------------- Block0: Boot Sector -------------// + // byte_per_sector = DISK_BLOCK_SIZE; fat12_sector_num_16 = DISK_BLOCK_NUM; + // sector_per_cluster = 1; reserved_sectors = 1; + // fat_num = 1; fat12_root_entry_num = 16; + // sector_per_fat = 1; sector_per_track = 1; head_num = 1; hidden_sectors = 0; + // drive_number = 0x80; media_type = 0xf8; extended_boot_signature = 0x29; + // filesystem_type = "FAT12 "; volume_serial_number = 0x1234; volume_label = "TinyUSB MSC"; + // FAT magic code at offset 510-511 + { 0xEB, 0x3C, 0x90, 0x4D, 0x53, 0x44, 0x4F, 0x53, 0x35, 0x2E, 0x30, 0x00, 0x02, 0x01, 0x01, + 0x00, 0x01, 0x10, 0x00, 0x10, 0x00, 0xF8, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x29, 0x34, 0x12, 0x00, 0x00, 'T', 'i', + 'n', 'y', 'U', 'S', 'B', ' ', 'M', 'S', 'C', 0x46, 0x41, 0x54, 0x31, 0x32, 0x20, 0x20, + 0x20, 0x00, 0x00, + + // Zero up to 2 last bytes of FAT magic code + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x55, 0xAA }, + + //------------- Block1: FAT12 Table -------------// + { + 0xF8, 0xFF, 0xFF, 0xFF, + 0x0F // // first 2 entries must be F8FF, third entry is cluster end of readme file + }, + + //------------- Block2: Root Directory -------------// + { + // first entry is volume label + 'T', 'i', 'n', 'y', 'U', 'S', 'B', ' ', 'M', 'S', 'C', 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x6D, 0x65, 0x43, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, + // second entry is readme file + 'R', 'E', 'A', 'D', 'M', 'E', ' ', ' ', 'T', 'X', 'T', 0x20, 0x00, 0xC6, 0x52, 0x6D, + 0x65, 0x43, 0x65, 0x43, 0x00, 0x00, 0x88, 0x6D, 0x65, 0x43, 0x02, 0x00, + sizeof(README_CONTENTS) - 1, 0x00, 0x00, 0x00 // readme's files size (4 Bytes) + }, + + //------------- Block3: Readme Content -------------// + README_CONTENTS + }; + +// Invoked when received SCSI_CMD_INQUIRY +// Application fill vendor id, product id and revision with string up to 8, 16, 4 characters respectively +void tud_msc_inquiry_cb(uint8_t lun, uint8_t vendor_id[8], uint8_t product_id[16], + uint8_t product_rev[4]) +{ + (void)lun; + + const char vid[] = "TinyUSB"; + const char pid[] = "Mass Storage"; + const char rev[] = "1.0"; + + memcpy(vendor_id, vid, strlen(vid)); + memcpy(product_id, pid, strlen(pid)); + memcpy(product_rev, rev, strlen(rev)); +} + +// Invoked when received Test Unit Ready command. +// return true allowing host to read/write this LUN e.g SD card inserted +bool tud_msc_test_unit_ready_cb(uint8_t lun) +{ + (void)lun; + + // RAM disk is ready until ejected + if (ejected) { + // Additional Sense 3A-00 is NOT_FOUND + tud_msc_set_sense(lun, SCSI_SENSE_NOT_READY, 0x3a, 0x00); + return false; + } + + return true; +} + +// Invoked when received SCSI_CMD_READ_CAPACITY_10 and SCSI_CMD_READ_FORMAT_CAPACITY to determine the disk size +// Application update block count and block size +void tud_msc_capacity_cb(uint8_t lun, uint32_t *block_count, uint16_t *block_size) +{ + (void)lun; + + *block_count = DISK_BLOCK_NUM; + *block_size = DISK_BLOCK_SIZE; +} + +// Invoked when received Start Stop Unit command +// - Start = 0 : stopped power mode, if load_eject = 1 : unload disk storage +// - Start = 1 : active mode, if load_eject = 1 : load disk storage +bool tud_msc_start_stop_cb(uint8_t lun, uint8_t power_condition, bool start, bool load_eject) +{ + (void)lun; + (void)power_condition; + + if (load_eject) { + if (start) { + // load disk storage + } else { + // unload disk storage + ejected = true; + } + } + + return true; +} + +// Callback invoked when received READ10 command. +// Copy disk's data to buffer (up to bufsize) and return number of copied bytes. +int32_t tud_msc_read10_cb(uint8_t lun, uint32_t lba, uint32_t offset, void *buffer, + uint32_t bufsize) +{ + (void)lun; + + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + + uint8_t const *addr = msc_disk[lba] + offset; + memcpy(buffer, addr, bufsize); + + return (int32_t)bufsize; +} + +bool tud_msc_is_writable_cb(uint8_t lun) +{ + (void)lun; + +#ifdef CFG_EXAMPLE_MSC_READONLY + return false; +#else + return true; +#endif +} + +// Callback invoked when received WRITE10 command. +// Process data in buffer to disk's storage and return number of written bytes +int32_t tud_msc_write10_cb(uint8_t lun, uint32_t lba, uint32_t offset, uint8_t *buffer, + uint32_t bufsize) +{ + (void)lun; + + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + +#ifndef CFG_EXAMPLE_MSC_READONLY + uint8_t *addr = msc_disk[lba] + offset; + memcpy(addr, buffer, bufsize); +#else + (void)lba; + (void)offset; + (void)buffer; +#endif + + return (int32_t)bufsize; +} + +// Callback invoked when received an SCSI command not in built-in list below +// - READ_CAPACITY10, READ_FORMAT_CAPACITY, INQUIRY, MODE_SENSE6, REQUEST_SENSE +// - READ10 and WRITE10 has their own callbacks +int32_t tud_msc_scsi_cb(uint8_t lun, uint8_t const scsi_cmd[16], void *buffer, uint16_t bufsize) +{ + // read10 & write10 has their own callback and MUST not be handled here + + void const *response = NULL; + int32_t resplen = 0; + + // most scsi handled is input + bool in_xfer = true; + + switch (scsi_cmd[0]) { + default: + // Set Sense = Invalid Command Operation + tud_msc_set_sense(lun, SCSI_SENSE_ILLEGAL_REQUEST, 0x20, 0x00); + + // negative means error -> tinyusb could stall and/or response with failed status + resplen = -1; + break; + } + + // return resplen must not larger than bufsize + if (resplen > bufsize) + resplen = bufsize; + + if (response && (resplen > 0)) { + if (in_xfer) { + memcpy(buffer, response, (size_t)resplen); + } else { + // SCSI output + } + } + + return (int32_t)resplen; +} + +#endif diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/project.mk b/Examples/MAX32665/USB/TinyUSB/cdc_msc/project.mk new file mode 100644 index 00000000000..cab17ef384c --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/project.mk @@ -0,0 +1,17 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable TINYUSB library +LIB_TINYUSB = 1 +TINYUSB_CONFIG_DIR = ./ diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/tusb_config.h b/Examples/MAX32665/USB/TinyUSB/cdc_msc/tusb_config.h new file mode 100644 index 00000000000..f2e8cc268b0 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/tusb_config.h @@ -0,0 +1,114 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#ifndef EXAMPLES_MAX32665_USB_TINYUSB_CDC_MSC_TUSB_CONFIG_H_ +#define EXAMPLES_MAX32665_USB_TINYUSB_CDC_MSC_TUSB_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +//--------------------------------------------------------------------+ +// Board Specific Configuration +//--------------------------------------------------------------------+ + +// RHPort number used for device can be defined by board.mk, default to port 0 +#ifndef BOARD_TUD_RHPORT +#define BOARD_TUD_RHPORT 0 +#endif + +// RHPort max operational speed can defined by board.mk +#ifndef BOARD_TUD_MAX_SPEED +#define BOARD_TUD_MAX_SPEED OPT_MODE_DEFAULT_SPEED +#endif + +//-------------------------------------------------------------------- +// Common Configuration +//-------------------------------------------------------------------- + +// defined by compiler flags for flexibility +#ifndef CFG_TUSB_MCU +#error CFG_TUSB_MCU must be defined +#endif + +#ifndef CFG_TUSB_OS +#define CFG_TUSB_OS OPT_OS_NONE +#endif + +#ifndef CFG_TUSB_DEBUG +#define CFG_TUSB_DEBUG 0 +#endif + +// Enable Device stack +#define CFG_TUD_ENABLED 1 + +// Default is max speed that hardware controller could support with on-chip PHY +#define CFG_TUD_MAX_SPEED BOARD_TUD_MAX_SPEED + +/* USB DMA on some MCUs can only access a specific SRAM region with restriction on alignment. + * Tinyusb use follows macros to declare transferring memory so that they can be put + * into those specific section. + * e.g + * - CFG_TUSB_MEM SECTION : __attribute__ (( section(".usb_ram") )) + * - CFG_TUSB_MEM_ALIGN : __attribute__ ((aligned(4))) + */ +#ifndef CFG_TUSB_MEM_SECTION +#define CFG_TUSB_MEM_SECTION +#endif + +#ifndef CFG_TUSB_MEM_ALIGN +#define CFG_TUSB_MEM_ALIGN __attribute__((aligned(4))) +#endif + +//-------------------------------------------------------------------- +// DEVICE CONFIGURATION +//-------------------------------------------------------------------- + +#ifndef CFG_TUD_ENDPOINT0_SIZE +#define CFG_TUD_ENDPOINT0_SIZE 64 +#endif + +//------------- CLASS -------------// +#define CFG_TUD_CDC 1 +#define CFG_TUD_MSC 1 +#define CFG_TUD_HID 0 +#define CFG_TUD_MIDI 0 +#define CFG_TUD_VENDOR 0 + +// CDC FIFO size of TX and RX +#define CFG_TUD_CDC_RX_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) +#define CFG_TUD_CDC_TX_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) + +// CDC Endpoint transfer buffer size, more is faster +#define CFG_TUD_CDC_EP_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) + +// MSC Buffer size of Device Mass storage +#define CFG_TUD_MSC_EP_BUFSIZE 512 + +#ifdef __cplusplus +} +#endif + +#endif // EXAMPLES_MAX32665_USB_TINYUSB_CDC_MSC_TUSB_CONFIG_H_ diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc/usb_descriptors.c b/Examples/MAX32665/USB/TinyUSB/cdc_msc/usb_descriptors.c new file mode 100644 index 00000000000..2f35cebc140 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc/usb_descriptors.c @@ -0,0 +1,305 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +/* A combination of interfaces must have a unique product id, since PC will save device driver after the first plug. + * Same VID/PID with different interface e.g MSC (first), then CDC (later) will possibly cause system error on PC. + * + * Auto ProductID layout's Bitmap: + * [MSB] HID | MSC | CDC [LSB] + */ +#define _PID_MAP(itf, n) ((CFG_TUD_##itf) << (n)) +#define USB_PID \ + (0x4000 | _PID_MAP(CDC, 0) | _PID_MAP(MSC, 1) | _PID_MAP(HID, 2) | _PID_MAP(MIDI, 3) | \ + _PID_MAP(VENDOR, 4)) + +#define USB_VID 0xCafe +#define USB_BCD 0x0200 + +//--------------------------------------------------------------------+ +// Device Descriptors +//--------------------------------------------------------------------+ +tusb_desc_device_t const desc_device = { + .bLength = sizeof(tusb_desc_device_t), + .bDescriptorType = TUSB_DESC_DEVICE, + .bcdUSB = USB_BCD, + + // Use Interface Association Descriptor (IAD) for CDC + // As required by USB Specs IAD's subclass must be common class (2) and protocol must be IAD (1) + .bDeviceClass = TUSB_CLASS_MISC, + .bDeviceSubClass = MISC_SUBCLASS_COMMON, + .bDeviceProtocol = MISC_PROTOCOL_IAD, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + + .idVendor = USB_VID, + .idProduct = USB_PID, + .bcdDevice = 0x0100, + + .iManufacturer = 0x01, + .iProduct = 0x02, + .iSerialNumber = 0x03, + + .bNumConfigurations = 0x01 +}; + +// Invoked when received GET DEVICE DESCRIPTOR +// Application return pointer to descriptor +uint8_t const *tud_descriptor_device_cb(void) +{ + return (uint8_t const *)&desc_device; +} + +//--------------------------------------------------------------------+ +// Configuration Descriptor +//--------------------------------------------------------------------+ + +enum { ITF_NUM_CDC = 0, ITF_NUM_CDC_DATA, ITF_NUM_MSC, ITF_NUM_TOTAL }; + +#if CFG_TUSB_MCU == OPT_MCU_LPC175X_6X || CFG_TUSB_MCU == OPT_MCU_LPC177X_8X || \ + CFG_TUSB_MCU == OPT_MCU_LPC40XX +// LPC 17xx and 40xx endpoint type (bulk/interrupt/iso) are fixed by its number +// 0 control, 1 In, 2 Bulk, 3 Iso, 4 In, 5 Bulk etc ... +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x82 + +#define EPNUM_MSC_OUT 0x05 +#define EPNUM_MSC_IN 0x85 + +#elif CFG_TUSB_MCU == OPT_MCU_SAMG || CFG_TUSB_MCU == OPT_MCU_SAMX7X +// SAMG & SAME70 don't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x83 + +#define EPNUM_MSC_OUT 0x04 +#define EPNUM_MSC_IN 0x85 + +#elif CFG_TUSB_MCU == OPT_MCU_CXD56 +// CXD56 doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +// CXD56 USB driver has fixed endpoint type (bulk/interrupt/iso) and direction (IN/OUT) by its number +// 0 control (IN/OUT), 1 Bulk (IN), 2 Bulk (OUT), 3 In (IN), 4 Bulk (IN), 5 Bulk (OUT), 6 In (IN) +#define EPNUM_CDC_NOTIF 0x83 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x81 + +#define EPNUM_MSC_OUT 0x05 +#define EPNUM_MSC_IN 0x84 + +#elif CFG_TUSB_MCU == OPT_MCU_FT90X || CFG_TUSB_MCU == OPT_MCU_FT93X +// FT9XX doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x83 + +#define EPNUM_MSC_OUT 0x04 +#define EPNUM_MSC_IN 0x85 + +#elif CFG_TUSB_MCU == OPT_MCU_MAX32690 || CFG_TUSB_MCU == OPT_MCU_MAX32650 || \ + CFG_TUSB_MCU == OPT_MCU_MAX32666 || CFG_TUSB_MCU == OPT_MCU_MAX78002 +// MAX32 doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x83 + +#define EPNUM_MSC_OUT 0x04 +#define EPNUM_MSC_IN 0x85 + +#else +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x82 + +#define EPNUM_MSC_OUT 0x03 +#define EPNUM_MSC_IN 0x83 + +#endif + +#define CONFIG_TOTAL_LEN (TUD_CONFIG_DESC_LEN + TUD_CDC_DESC_LEN + TUD_MSC_DESC_LEN) + +// full speed configuration +uint8_t const desc_fs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP notification address and size, EP data address (out, in) and size. + TUD_CDC_DESCRIPTOR(ITF_NUM_CDC, 4, EPNUM_CDC_NOTIF, 8, EPNUM_CDC_OUT, EPNUM_CDC_IN, 64), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 5, EPNUM_MSC_OUT, EPNUM_MSC_IN, 64), +}; + +#if TUD_OPT_HIGH_SPEED +// Per USB specs: high speed capable device must report device_qualifier and other_speed_configuration + +// high speed configuration +uint8_t const desc_hs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP notification address and size, EP data address (out, in) and size. + TUD_CDC_DESCRIPTOR(ITF_NUM_CDC, 4, EPNUM_CDC_NOTIF, 8, EPNUM_CDC_OUT, EPNUM_CDC_IN, 512), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 5, EPNUM_MSC_OUT, EPNUM_MSC_IN, 512), +}; + +// other speed configuration +uint8_t desc_other_speed_config[CONFIG_TOTAL_LEN]; + +// device qualifier is mostly similar to device descriptor since we don't change configuration based on speed +tusb_desc_device_qualifier_t const desc_device_qualifier = { + .bLength = sizeof(tusb_desc_device_qualifier_t), + .bDescriptorType = TUSB_DESC_DEVICE_QUALIFIER, + .bcdUSB = USB_BCD, + + .bDeviceClass = TUSB_CLASS_MISC, + .bDeviceSubClass = MISC_SUBCLASS_COMMON, + .bDeviceProtocol = MISC_PROTOCOL_IAD, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + .bNumConfigurations = 0x01, + .bReserved = 0x00 +}; + +// Invoked when received GET DEVICE QUALIFIER DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete. +// device_qualifier descriptor describes information about a high-speed capable device that would +// change if the device were operating at the other speed. If not highspeed capable stall this request. +uint8_t const *tud_descriptor_device_qualifier_cb(void) +{ + return (uint8_t const *)&desc_device_qualifier; +} + +// Invoked when received GET OTHER SEED CONFIGURATION DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +// Configuration descriptor in the other speed e.g if high speed then this is for full speed and vice versa +uint8_t const *tud_descriptor_other_speed_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + + // if link speed is high return fullspeed config, and vice versa + // Note: the descriptor type is OHER_SPEED_CONFIG instead of CONFIG + memcpy(desc_other_speed_config, + (tud_speed_get() == TUSB_SPEED_HIGH) ? desc_fs_configuration : desc_hs_configuration, + CONFIG_TOTAL_LEN); + + desc_other_speed_config[1] = TUSB_DESC_OTHER_SPEED_CONFIG; + + return desc_other_speed_config; +} + +#endif // highspeed + +// Invoked when received GET CONFIGURATION DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const *tud_descriptor_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + +#if TUD_OPT_HIGH_SPEED + // Although we are highspeed, host may be fullspeed. + return (tud_speed_get() == TUSB_SPEED_HIGH) ? desc_hs_configuration : desc_fs_configuration; +#else + return desc_fs_configuration; +#endif +} + +//--------------------------------------------------------------------+ +// String Descriptors +//--------------------------------------------------------------------+ + +// String Descriptor Index +enum { + STRID_LANGID = 0, + STRID_MANUFACTURER, + STRID_PRODUCT, + STRID_SERIAL, +}; + +// array of pointer to string descriptors +char const *string_desc_arr[] = { + (const char[]){ 0x09, 0x04 }, // 0: is supported language is English (0x0409) + "TinyUSB", // 1: Manufacturer + "TinyUSB Device", // 2: Product + NULL, // 3: Serials will use unique ID if possible + "TinyUSB CDC", // 4: CDC Interface + "TinyUSB MSC", // 5: MSC Interface +}; + +static uint16_t _desc_str[32 + 1]; + +// Invoked when received GET STRING DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +uint16_t const *tud_descriptor_string_cb(uint8_t index, uint16_t langid) +{ + (void)langid; + size_t chr_count; + + switch (index) { + case STRID_LANGID: + memcpy(&_desc_str[1], string_desc_arr[0], 2); + chr_count = 1; + break; + + case STRID_SERIAL: + chr_count = board_usb_get_serial(_desc_str + 1, 32); + break; + + default: + // Note: the 0xEE index string is a Microsoft OS 1.0 Descriptors. + // https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/microsoft-defined-usb-descriptors + + if (!(index < sizeof(string_desc_arr) / sizeof(string_desc_arr[0]))) + return NULL; + + const char *str = string_desc_arr[index]; + + // Cap at max char + chr_count = strlen(str); + size_t const max_count = sizeof(_desc_str) / sizeof(_desc_str[0]) - 1; // -1 for string type + if (chr_count > max_count) + chr_count = max_count; + + // Convert ASCII string into UTF-16 + for (size_t i = 0; i < chr_count; i++) { + _desc_str[1 + i] = str[i]; + } + break; + } + + // first byte is length (including header), second byte is string type + _desc_str[0] = (uint16_t)((TUSB_DESC_STRING << 8) | (2 * chr_count + 2)); + + return _desc_str; +} diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.cproject b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.cproject new file mode 100644 index 00000000000..798f5fe4b6d --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.cproject @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.project b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.project new file mode 100644 index 00000000000..8a770c213dc --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.project @@ -0,0 +1,26 @@ + + + cdc_msc_freertos + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.settings/language.settings.xml b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..37237ec49c4 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=cdc_msc_freertos +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32665 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/README.md b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/c_cpp_properties.json b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/flash.gdb b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/launch.json b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/settings.json b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/settings.json new file mode 100644 index 00000000000..eb402af1900 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/settings.json @@ -0,0 +1,94 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32665", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32665.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/tasks.json b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/FreeRTOSConfig.h b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/FreeRTOSConfig.h new file mode 100644 index 00000000000..9b962aa2b87 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/FreeRTOSConfig.h @@ -0,0 +1,123 @@ +/** + * @file FreeRTOSConfig.h + * @brief FreeRTOSCOnfig function prototypes and data types. + */ + +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/* Define to prevent redundant inclusion */ +#ifndef EXAMPLES_MAX32665_USB_TINYUSB_CDC_MSC_FREERTOS_FREERTOSCONFIG_H_ +#define EXAMPLES_MAX32665_USB_TINYUSB_CDC_MSC_FREERTOS_FREERTOSCONFIG_H_ + +/* **** Includes **** */ +#include +#include "max32665.h" + +/** + * @brief Application specific definitions. + * @details These definitions should be adjusted for your particular hardware and + * application requirements. + * @note THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE + * FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE. + * + * @details See http://www.freertos.org/a00110.html. + */ + +/* CMSIS keeps a global updated with current system clock in Hz */ +#define configCPU_CLOCK_HZ ((uint32_t)120000000) + +/* Tick-less idle forces a 32768 Hz RTC-derived SysTick source, and a 256 Hz task tick */ +//#define configUSE_TICKLESS_IDLE 1 +#ifdef configUSE_TICKLESS_IDLE +#define configSYSTICK_CLK_HZ ((uint32_t)32768) +#define configTICK_RATE_HZ ((portTickType)256) +#else +#define configTICK_RATE_HZ ((portTickType)1000) +#endif + +#define configTOTAL_HEAP_SIZE ((size_t)(26 * 1024)) + +#define configMINIMAL_STACK_SIZE ((uint16_t)128) + +#define configMAX_PRIORITIES 5 +#define configUSE_PREEMPTION 0 +#define configUSE_IDLE_HOOK 0 +#define configUSE_TICK_HOOK 0 +#define configUSE_CO_ROUTINES 0 +#define configUSE_16_BIT_TICKS 0 +#define configUSE_MUTEXES 1 +#define configSUPPORT_STATIC_ALLOCATION 1 + +/* Run time and task stats gathering related definitions. */ +#define configUSE_TRACE_FACILITY 1 +#define configUSE_STATS_FORMATTING_FUNCTIONS 1 + +/* Software timer related definitions. */ +#define configUSE_TIMERS 1 +#define configTIMER_TASK_PRIORITY (configMAX_PRIORITIES - 2) +#define configTIMER_QUEUE_LENGTH 32 +#define configTIMER_TASK_STACK_DEPTH configMINIMAL_STACK_SIZE + +/* Set the following definitions to 1 to include the API function, or zero +to exclude the API function. */ +#define INCLUDE_vTaskPrioritySet 0 +#define INCLUDE_vTaskDelete 0 +#define INCLUDE_vTaskSuspend 1 +#define INCLUDE_vTaskDelayUntil 1 +#define INCLUDE_uxTaskPriorityGet 0 +#define INCLUDE_vTaskDelay 1 + +/* # of priority bits (configured in hardware) is provided by CMSIS */ +#define configPRIO_BITS __NVIC_PRIO_BITS + +/* Priority 7, or 255 as only the top three bits are implemented. This is the lowest priority. */ +#define configKERNEL_INTERRUPT_PRIORITY ((unsigned char)7 << (8 - configPRIO_BITS)) + +/* Priority 5, or 160 as only the top three bits are implemented. */ +#define configMAX_SYSCALL_INTERRUPT_PRIORITY ((unsigned char)5 << (8 - configPRIO_BITS)) + +/* The lowest interrupt priority that can be used in a call to a "set priority" function. */ +#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY ((1 << configPRIO_BITS) - 1) + +/* The highest interrupt priority that can be used by any interrupt service +routine that makes calls to interrupt safe FreeRTOS API functions. DO NOT CALL +INTERRUPT SAFE FREERTOS API FUNCTIONS FROM ANY INTERRUPT THAT HAS A HIGHER +PRIORITY THAN THIS! (higher priorities are lower numeric values. */ +#define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 2 + +/* Alias the default handler names to match CMSIS weak symbols */ +#define vPortSVCHandler SVC_Handler +#define xPortPendSVHandler PendSV_Handler +#define xPortSysTickHandler SysTick_Handler + +#ifdef configUSE_TICKLESS_IDLE +#define configRTC_TICK_RATE_HZ ((portTickType)256) +/* Provide routines for tickless idle pre- and post- processing */ +void vPreSleepProcessing(uint32_t *); +void vPostSleepProcessing(uint32_t); +#define configPRE_SLEEP_PROCESSING(idletime) vPreSleepProcessing(&idletime); +#define configPOST_SLEEP_PROCESSING(idletime) vPostSleepProcessing(idletime); +#endif + +/* FreeRTOS+CLI requires this size to be defined, but we do not use it */ +#define configCOMMAND_INT_MAX_OUTPUT_SIZE 1 + +#endif // EXAMPLES_MAX32665_USB_TINYUSB_CDC_MSC_FREERTOS_FREERTOSCONFIG_H_ diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/Makefile b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/Makefile new file mode 100644 index 00000000000..a1375f471f3 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32665 +TARGET_UC := MAX32665 +TARGET_LC := max32665 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/README.md b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/README.md new file mode 100644 index 00000000000..75a35a85cd3 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/README.md @@ -0,0 +1,40 @@ +## Description + +The example demonstrates the use of USB composite device with Mass Storage driver class and CDC-ACM driver class using the TinyUSB stack +and FreeRTOS operating system. After doing the required connections given below, run the program and two new devices appear in the device manager, a Portable device and COM Port. The README.TXT file on the portable device can be read. Open a terminal application on the PC at 115200 baud rate, and echo the characters on the terminal. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +tusb_config.h by default has logging disabled via the CFG_TUSB_DEBUG definition. +For TinyUSB console logging, set the debug level to 1, 2, or 3, with a higher value +indicating more verbose logging. + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR/UARTS) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. Make sure JP6 (2-3) is connected to UART. +- Default EV kit hardware configuration. + +## Expected Output + +By default, the console UART does not output any message. With CFG_TUSB_DEBUG set +to '2', the Console UART of the device will output these messages: + +``` +USBD init on controller 0, Highspeed = 1024 +sizeof(usbd_device_t) = 69 +sizeof(dcd_event_t) = 12 +sizeof(tu_fifo_t) = 20 +sizeof(tu_edpt_stream_t) = 112 +CDC init +MSC init +USBD Bus Reset : High Speed +``` diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/cdc_msc_freertos.launch b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/cdc_msc_freertos.launch new file mode 100644 index 00000000000..0740a10f877 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/cdc_msc_freertos.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/freertos_hook.c b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/freertos_hook.c new file mode 100644 index 00000000000..ea3141d2a58 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/freertos_hook.c @@ -0,0 +1,99 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * Copyright (c) 2024 Analog Devices, Inc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +//--------------------------------------------------------------------+ +// INCLUDE +//--------------------------------------------------------------------+ +#include "FreeRTOS.h" +#include "task.h" +#include "common/tusb_common.h" + +void vApplicationMallocFailedHook(void) +{ + taskDISABLE_INTERRUPTS(); + while (1) {} +} + +void vApplicationStackOverflowHook(xTaskHandle pxTask, char *pcTaskName) +{ + (void)pxTask; + (void)pcTaskName; + + taskDISABLE_INTERRUPTS(); + while (1) {} +} + +/* configSUPPORT_STATIC_ALLOCATION is set to 1, so the application must provide an + * implementation of vApplicationGetIdleTaskMemory() to provide the memory that is + * used by the Idle task. */ +void vApplicationGetIdleTaskMemory(StaticTask_t **ppxIdleTaskTCBBuffer, + StackType_t **ppxIdleTaskStackBuffer, + uint32_t *pulIdleTaskStackSize) +{ + /* If the buffers to be provided to the Idle task are declared inside this + * function then they must be declared static - otherwise they will be allocated on + * the stack and so not exists after this function exits. */ + static StaticTask_t xIdleTaskTCB; + static StackType_t uxIdleTaskStack[configMINIMAL_STACK_SIZE]; + + /* Pass out a pointer to the StaticTask_t structure in which the Idle task's + state will be stored. */ + *ppxIdleTaskTCBBuffer = &xIdleTaskTCB; + + /* Pass out the array that will be used as the Idle task's stack. */ + *ppxIdleTaskStackBuffer = uxIdleTaskStack; + + /* Pass out the size of the array pointed to by *ppxIdleTaskStackBuffer. + Note that, as the array is necessarily of type StackType_t, + configMINIMAL_STACK_SIZE is specified in words, not bytes. */ + *pulIdleTaskStackSize = configMINIMAL_STACK_SIZE; +} + +/* configSUPPORT_STATIC_ALLOCATION and configUSE_TIMERS are both set to 1, so the + * application must provide an implementation of vApplicationGetTimerTaskMemory() + * to provide the memory that is used by the Timer service task. */ +void vApplicationGetTimerTaskMemory(StaticTask_t **ppxTimerTaskTCBBuffer, + StackType_t **ppxTimerTaskStackBuffer, + uint32_t *pulTimerTaskStackSize) +{ + /* If the buffers to be provided to the Timer task are declared inside this + * function then they must be declared static - otherwise they will be allocated on + * the stack and so not exists after this function exits. */ + static StaticTask_t xTimerTaskTCB; + static StackType_t uxTimerTaskStack[configTIMER_TASK_STACK_DEPTH]; + + /* Pass out a pointer to the StaticTask_t structure in which the Timer + task's state will be stored. */ + *ppxTimerTaskTCBBuffer = &xTimerTaskTCB; + + /* Pass out the array that will be used as the Timer task's stack. */ + *ppxTimerTaskStackBuffer = uxTimerTaskStack; + + /* Pass out the size of the array pointed to by *ppxTimerTaskStackBuffer. + Note that, as the array is necessarily of type StackType_t, + configTIMER_TASK_STACK_DEPTH is specified in words, not bytes. */ + *pulTimerTaskStackSize = configTIMER_TASK_STACK_DEPTH; +} diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/main.c b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/main.c new file mode 100644 index 00000000000..63384bb6393 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/main.c @@ -0,0 +1,299 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * Copyright (c) 2024 Analog Devices, Inc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include +#include +#include + +#include "bsp/board_api.h" +#include "tusb.h" +#include "led.h" +#include "mxc_device.h" +#include "gcr_regs.h" +#include "mxc_sys.h" + +#if TUP_MCU_ESPRESSIF +// ESP-IDF need "freertos/" prefix in include path. +// CFG_TUSB_OS_INC_PATH should be defined accordingly. +#include "freertos/FreeRTOS.h" +#include "freertos/semphr.h" +#include "freertos/queue.h" +#include "freertos/task.h" +#include "freertos/timers.h" + +#define USBD_STACK_SIZE 4096 +#else + +#include "FreeRTOS.h" +#include "semphr.h" +#include "queue.h" +#include "task.h" +#include "timers.h" + +// Increase stack size when debug log is enabled +#define USBD_STACK_SIZE (3 * configMINIMAL_STACK_SIZE / 2) * (CFG_TUSB_DEBUG ? 2 : 1) +#endif + +// Use the USBD_STACK_SIZE to account for option CFG_TUSB_DEBUG settings +#define CDC_STACK_SIZE USBD_STACK_SIZE +#define BLINKY_STACK_SIZE USBD_STACK_SIZE + +//--------------------------------------------------------------------+ +// MACRO CONSTANT TYPEDEF PROTOTYPES +//--------------------------------------------------------------------+ + +/* Blink pattern + * - 250 ms : device not mounted + * - 1000 ms : device mounted + * - 2500 ms : device is suspended + */ +enum { + BLINK_NOT_MOUNTED = 250, + BLINK_MOUNTED = 1000, + BLINK_SUSPENDED = 2500, +}; + +// static task +#if configSUPPORT_STATIC_ALLOCATION +StackType_t blinky_stack[BLINKY_STACK_SIZE]; +StaticTask_t blinky_taskdef; + +StackType_t usb_device_stack[USBD_STACK_SIZE]; +StaticTask_t usb_device_taskdef; + +StackType_t cdc_stack[CDC_STACK_SIZE]; +StaticTask_t cdc_taskdef; +#endif + +static uint32_t blink_interval_ms = BLINK_NOT_MOUNTED; + +static void usb_device_task(void *param); +void led_blinking_task(void *param); +void cdc_task(void *params); + +//--------------------------------------------------------------------+ +// Main +//--------------------------------------------------------------------+ + +int main(void) +{ + board_init(); + +#if configSUPPORT_STATIC_ALLOCATION + // blinky task + xTaskCreateStatic(led_blinking_task, "blinky", BLINKY_STACK_SIZE, NULL, 1, blinky_stack, + &blinky_taskdef); + + // Create a task for tinyusb device stack + xTaskCreateStatic(usb_device_task, "usbd", USBD_STACK_SIZE, NULL, configMAX_PRIORITIES - 1, + usb_device_stack, &usb_device_taskdef); + + // Create CDC task + xTaskCreateStatic(cdc_task, "cdc", CDC_STACK_SIZE, NULL, configMAX_PRIORITIES - 2, cdc_stack, + &cdc_taskdef); +#else + xTaskCreate(led_blinking_task, "blinky", BLINKY_STACK_SIZE, NULL, 1, NULL); + xTaskCreate(usb_device_task, "usbd", USBD_STACK_SIZE, NULL, configMAX_PRIORITIES - 1, NULL); + xTaskCreate(cdc_task, "cdc", CDC_STACK_SZIE, NULL, configMAX_PRIORITIES - 2, NULL); +#endif + + // skip starting scheduler (and return) for ESP32-S2 or ESP32-S3 +#if !TUP_MCU_ESPRESSIF + vTaskStartScheduler(); +#endif + + return 0; +} + +#if TUP_MCU_ESPRESSIF +void app_main(void) +{ + main(); +} +#endif + +// USB Device Driver task +// This top level thread process all usb events and invoke callbacks +static void usb_device_task(void *param) +{ + (void)param; + + // init device stack on configured roothub port + // This should be called after scheduler/kernel is started. + // Otherwise it could cause kernel issue since USB IRQ handler does use RTOS queue API. + tud_init(BOARD_TUD_RHPORT); + + if (board_init_after_tusb) { + board_init_after_tusb(); + } + + // RTOS forever loop + while (1) { + // put this thread to waiting state until there is new events + tud_task(); + + // following code only run if tud_task() process at least 1 event + tud_cdc_write_flush(); + } +} + +//--------------------------------------------------------------------+ +// Device callbacks +//--------------------------------------------------------------------+ + +// Invoked when device is mounted +void tud_mount_cb(void) +{ + blink_interval_ms = BLINK_MOUNTED; +} + +// Invoked when device is unmounted +void tud_umount_cb(void) +{ + blink_interval_ms = BLINK_NOT_MOUNTED; +} + +// Invoked when usb bus is suspended +// remote_wakeup_en : if host allow us to perform remote wakeup +// Within 7ms, device must draw an average of current less than 2.5 mA from bus +void tud_suspend_cb(bool remote_wakeup_en) +{ + (void)remote_wakeup_en; + blink_interval_ms = BLINK_SUSPENDED; +} + +// Invoked when usb bus is resumed +void tud_resume_cb(void) +{ + blink_interval_ms = tud_mounted() ? BLINK_MOUNTED : BLINK_NOT_MOUNTED; +} + +//--------------------------------------------------------------------+ +// USB CDC +//--------------------------------------------------------------------+ +void cdc_task(void *params) +{ + (void)params; + + // RTOS forever loop + while (1) { + // connected() check for DTR bit + // Most but not all terminal client set this when making connection + // if ( tud_cdc_connected() ) + { + // There are data available + while (tud_cdc_available()) { + uint8_t buf[64]; + + // read and echo back + uint32_t count = tud_cdc_read(buf, sizeof(buf)); + (void)count; + + // Echo back + // Note: Skip echo by commenting out write() and write_flush() + // for throughput test e.g + // $ dd if=/dev/zero of=/dev/ttyACM0 count=10000 + tud_cdc_write(buf, count); + } + + tud_cdc_write_flush(); + } + + // For ESP32-Sx this delay is essential to allow idle how to run and reset watchdog + vTaskDelay(1); + } +} + +// Invoked when cdc when line state changed e.g connected/disconnected +void tud_cdc_line_state_cb(uint8_t itf, bool dtr, bool rts) +{ + (void)itf; + (void)rts; + + if (dtr) { + // Terminal connected + } else { + // Terminal disconnected + } +} + +// Invoked when CDC interface received data from host +void tud_cdc_rx_cb(uint8_t itf) +{ + (void)itf; +} + +//--------------------------------------------------------------------+ +// BLINKING TASK +//--------------------------------------------------------------------+ +void led_blinking_task(void *param) +{ + (void)param; + static uint32_t start_ms = 0; + static bool led_state = false; + + while (1) { + // Blink every interval ms + vTaskDelay(blink_interval_ms / portTICK_PERIOD_MS); + start_ms += blink_interval_ms; + + board_led_write(led_state); + led_state = 1 - led_state; // toggle + } +} + +//------------------------------------------------------------------------------ +// Wrapper functions to bridge TinyUSB BSP with MSDK BSP +//------------------------------------------------------------------------------ +void board_init(void) +{ + // If freeRTOS is used, IRQ priority is limit by max syscall ( smaller is higher ) + NVIC_SetPriority(USB_IRQn, configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY); + + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clkcn & MXC_F_GCR_CLKCN_HIRC96M_EN)) { + MXC_GCR->clkcn |= MXC_F_GCR_CLKCN_HIRC96M_EN; + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); +} + +void board_led_write(bool state) +{ + if (state) { + LED_On(0); + } else { + LED_Off(0); + } +} + +//--------------------------------------------------------------------+ +// Forward USB interrupt events to TinyUSB IRQ Handler +//--------------------------------------------------------------------+ +void USB_IRQHandler(void) +{ + tud_int_handler(0); +} diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/msc_disk.c b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/msc_disk.c new file mode 100644 index 00000000000..532e4651377 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/msc_disk.c @@ -0,0 +1,254 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +#if CFG_TUD_MSC + +// Some MCU doesn't have enough 8KB SRAM to store the whole disk +// We will use Flash as read-only disk with board that has +// CFG_EXAMPLE_MSC_READONLY defined + +#define README_CONTENTS \ + "This is tinyusb's MassStorage Class demo.\r\n\r\n" \ + "If you find any bugs or get any questions, feel free to file an\r\n" \ + "issue at github.com/hathach/tinyusb" + +enum { + DISK_BLOCK_NUM = 16, // 8KB is the smallest size that windows allow to mount + DISK_BLOCK_SIZE = 512 +}; + +#ifdef CFG_EXAMPLE_MSC_READONLY +const +#endif + uint8_t msc_disk[DISK_BLOCK_NUM][DISK_BLOCK_SIZE] = { + //------------- Block0: Boot Sector -------------// + // byte_per_sector = DISK_BLOCK_SIZE; fat12_sector_num_16 = DISK_BLOCK_NUM; + // sector_per_cluster = 1; reserved_sectors = 1; + // fat_num = 1; fat12_root_entry_num = 16; + // sector_per_fat = 1; sector_per_track = 1; head_num = 1; hidden_sectors = 0; + // drive_number = 0x80; media_type = 0xf8; extended_boot_signature = 0x29; + // filesystem_type = "FAT12 "; volume_serial_number = 0x1234; volume_label = "TinyUSB MSC"; + // FAT magic code at offset 510-511 + { 0xEB, 0x3C, 0x90, 0x4D, 0x53, 0x44, 0x4F, 0x53, 0x35, 0x2E, 0x30, 0x00, 0x02, 0x01, 0x01, + 0x00, 0x01, 0x10, 0x00, 0x10, 0x00, 0xF8, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x29, 0x34, 0x12, 0x00, 0x00, 'T', 'i', + 'n', 'y', 'U', 'S', 'B', ' ', 'M', 'S', 'C', 0x46, 0x41, 0x54, 0x31, 0x32, 0x20, 0x20, + 0x20, 0x00, 0x00, + + // Zero up to 2 last bytes of FAT magic code + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x55, 0xAA }, + + //------------- Block1: FAT12 Table -------------// + { + 0xF8, 0xFF, 0xFF, 0xFF, + 0x0F // // first 2 entries must be F8FF, third entry is cluster end of readme file + }, + + //------------- Block2: Root Directory -------------// + { + // first entry is volume label + 'T', 'i', 'n', 'y', 'U', 'S', 'B', ' ', 'M', 'S', 'C', 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x6D, 0x65, 0x43, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, + // second entry is readme file + 'R', 'E', 'A', 'D', 'M', 'E', ' ', ' ', 'T', 'X', 'T', 0x20, 0x00, 0xC6, 0x52, 0x6D, + 0x65, 0x43, 0x65, 0x43, 0x00, 0x00, 0x88, 0x6D, 0x65, 0x43, 0x02, 0x00, + sizeof(README_CONTENTS) - 1, 0x00, 0x00, 0x00 // readme's files size (4 Bytes) + }, + + //------------- Block3: Readme Content -------------// + README_CONTENTS + }; + +// Invoked when received SCSI_CMD_INQUIRY +// Application fill vendor id, product id and revision with string up to 8, 16, 4 characters respectively +void tud_msc_inquiry_cb(uint8_t lun, uint8_t vendor_id[8], uint8_t product_id[16], + uint8_t product_rev[4]) +{ + (void)lun; + + const char vid[] = "TinyUSB"; + const char pid[] = "Mass Storage"; + const char rev[] = "1.0"; + + memcpy(vendor_id, vid, strlen(vid)); + memcpy(product_id, pid, strlen(pid)); + memcpy(product_rev, rev, strlen(rev)); +} + +// Invoked when received Test Unit Ready command. +// return true allowing host to read/write this LUN e.g SD card inserted +bool tud_msc_test_unit_ready_cb(uint8_t lun) +{ + (void)lun; + + return true; // RAM disk is always ready +} + +// Invoked when received SCSI_CMD_READ_CAPACITY_10 and SCSI_CMD_READ_FORMAT_CAPACITY to determine the disk size +// Application update block count and block size +void tud_msc_capacity_cb(uint8_t lun, uint32_t *block_count, uint16_t *block_size) +{ + (void)lun; + + *block_count = DISK_BLOCK_NUM; + *block_size = DISK_BLOCK_SIZE; +} + +// Invoked when received Start Stop Unit command +// - Start = 0 : stopped power mode, if load_eject = 1 : unload disk storage +// - Start = 1 : active mode, if load_eject = 1 : load disk storage +bool tud_msc_start_stop_cb(uint8_t lun, uint8_t power_condition, bool start, bool load_eject) +{ + (void)lun; + (void)power_condition; + + if (load_eject) { + if (start) { + // load disk storage + } else { + // unload disk storage + } + } + + return true; +} + +// Callback invoked when received READ10 command. +// Copy disk's data to buffer (up to bufsize) and return number of copied bytes. +int32_t tud_msc_read10_cb(uint8_t lun, uint32_t lba, uint32_t offset, void *buffer, + uint32_t bufsize) +{ + (void)lun; + + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + + uint8_t const *addr = msc_disk[lba] + offset; + memcpy(buffer, addr, bufsize); + + return (int32_t)bufsize; +} + +// Callback invoked when received WRITE10 command. +// Process data in buffer to disk's storage and return number of written bytes +int32_t tud_msc_write10_cb(uint8_t lun, uint32_t lba, uint32_t offset, uint8_t *buffer, + uint32_t bufsize) +{ + (void)lun; + + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + +#ifndef CFG_EXAMPLE_MSC_READONLY + uint8_t *addr = msc_disk[lba] + offset; + memcpy(addr, buffer, bufsize); +#else + (void)lba; + (void)offset; + (void)buffer; +#endif + + return (int32_t)bufsize; +} + +// Callback invoked when received an SCSI command not in built-in list below +// - READ_CAPACITY10, READ_FORMAT_CAPACITY, INQUIRY, MODE_SENSE6, REQUEST_SENSE +// - READ10 and WRITE10 has their own callbacks +int32_t tud_msc_scsi_cb(uint8_t lun, uint8_t const scsi_cmd[16], void *buffer, uint16_t bufsize) +{ + // read10 & write10 has their own callback and MUST not be handled here + + void const *response = NULL; + int32_t resplen = 0; + + // most scsi handled is input + bool in_xfer = true; + + switch (scsi_cmd[0]) { + default: + // Set Sense = Invalid Command Operation + tud_msc_set_sense(lun, SCSI_SENSE_ILLEGAL_REQUEST, 0x20, 0x00); + + // negative means error -> tinyusb could stall and/or response with failed status + resplen = -1; + break; + } + + // return resplen must not larger than bufsize + if (resplen > bufsize) + resplen = bufsize; + + if (response && (resplen > 0)) { + if (in_xfer) { + memcpy(buffer, response, (size_t)resplen); + } else { + // SCSI output + } + } + + return (int32_t)resplen; +} + +#endif diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/project.mk b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/project.mk new file mode 100644 index 00000000000..be41f852c5c --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/project.mk @@ -0,0 +1,20 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable TINYUSB library +LIB_TINYUSB = 1 +TINYUSB_CONFIG_DIR = ./ + +# Enable FreeRTOS library +LIB_FREERTOS=1 diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/tusb_config.h b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/tusb_config.h new file mode 100644 index 00000000000..b5d8274f89c --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/tusb_config.h @@ -0,0 +1,121 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#ifndef EXAMPLES_MAX32665_USB_TINYUSB_CDC_MSC_FREERTOS_TUSB_CONFIG_H_ +#define EXAMPLES_MAX32665_USB_TINYUSB_CDC_MSC_FREERTOS_TUSB_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +//--------------------------------------------------------------------+ +// Board Specific Configuration +//--------------------------------------------------------------------+ + +// RHPort number used for device can be defined by board.mk, default to port 0 +#ifndef BOARD_TUD_RHPORT +#define BOARD_TUD_RHPORT 0 +#endif + +// RHPort max operational speed can defined by board.mk +#ifndef BOARD_TUD_MAX_SPEED +#define BOARD_TUD_MAX_SPEED OPT_MODE_DEFAULT_SPEED +#endif + +//-------------------------------------------------------------------- +// COMMON CONFIGURATION +//-------------------------------------------------------------------- + +// defined by board.mk +#ifndef CFG_TUSB_MCU +#error CFG_TUSB_MCU must be defined +#endif + +// This examples use FreeRTOS +#ifndef CFG_TUSB_OS +#define CFG_TUSB_OS OPT_OS_FREERTOS +#endif + +// Espressif IDF requires "freertos/" prefix in include path +#if TUP_MCU_ESPRESSIF +#define CFG_TUSB_OS_INC_PATH freertos / +#endif + +// can be defined by compiler in DEBUG build +#ifndef CFG_TUSB_DEBUG +#define CFG_TUSB_DEBUG 0 +#endif + +// Enable Device stack +#define CFG_TUD_ENABLED 1 + +// Default is max speed that hardware controller could support with on-chip PHY +#define CFG_TUD_MAX_SPEED BOARD_TUD_MAX_SPEED + +/* USB DMA on some MCUs can only access a specific SRAM region with restriction on alignment. + * Tinyusb use follows macros to declare transferring memory so that they can be put + * into those specific section. + * e.g + * - CFG_TUSB_MEM SECTION : __attribute__ (( section(".usb_ram") )) + * - CFG_TUSB_MEM_ALIGN : __attribute__ ((aligned(4))) + */ +#ifndef CFG_TUSB_MEM_SECTION +#define CFG_TUSB_MEM_SECTION +#endif + +#ifndef CFG_TUSB_MEM_ALIGN +#define CFG_TUSB_MEM_ALIGN __attribute__((aligned(4))) +#endif + +//-------------------------------------------------------------------- +// DEVICE CONFIGURATION +//-------------------------------------------------------------------- + +#ifndef CFG_TUD_ENDPOINT0_SIZE +#define CFG_TUD_ENDPOINT0_SIZE 64 +#endif + +//------------- CLASS -------------// +#define CFG_TUD_CDC 1 +#define CFG_TUD_MSC 1 +#define CFG_TUD_HID 0 +#define CFG_TUD_MIDI 0 +#define CFG_TUD_VENDOR 0 + +// CDC FIFO size of TX and RX +#define CFG_TUD_CDC_RX_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) +#define CFG_TUD_CDC_TX_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) + +// CDC Endpoint transfer buffer size, more is faster +#define CFG_TUD_CDC_EP_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) + +// MSC Buffer size of Device Mass storage +#define CFG_TUD_MSC_EP_BUFSIZE 512 + +#ifdef __cplusplus +} +#endif + +#endif // EXAMPLES_MAX32665_USB_TINYUSB_CDC_MSC_FREERTOS_TUSB_CONFIG_H_ diff --git a/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/usb_descriptors.c b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/usb_descriptors.c new file mode 100644 index 00000000000..80664f0329d --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/cdc_msc_freertos/usb_descriptors.c @@ -0,0 +1,282 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +/* A combination of interfaces must have a unique product id, since PC will save device driver after the first plug. + * Same VID/PID with different interface e.g MSC (first), then CDC (later) will possibly cause system error on PC. + * + * Auto ProductID layout's Bitmap: + * [MSB] HID | MSC | CDC [LSB] + */ +#define _PID_MAP(itf, n) ((CFG_TUD_##itf) << (n)) +#define USB_PID \ + (0x4000 | _PID_MAP(CDC, 0) | _PID_MAP(MSC, 1) | _PID_MAP(HID, 2) | _PID_MAP(MIDI, 3) | \ + _PID_MAP(VENDOR, 4)) + +#define USB_VID 0xCafe +#define USB_BCD 0x0200 + +//--------------------------------------------------------------------+ +// Device Descriptors +//--------------------------------------------------------------------+ +tusb_desc_device_t const desc_device = { + .bLength = sizeof(tusb_desc_device_t), + .bDescriptorType = TUSB_DESC_DEVICE, + .bcdUSB = USB_BCD, + + // Use Interface Association Descriptor (IAD) for CDC + // As required by USB Specs IAD's subclass must be common class (2) and protocol must be IAD (1) + .bDeviceClass = TUSB_CLASS_MISC, + .bDeviceSubClass = MISC_SUBCLASS_COMMON, + .bDeviceProtocol = MISC_PROTOCOL_IAD, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + + .idVendor = USB_VID, + .idProduct = USB_PID, + .bcdDevice = 0x0100, + + .iManufacturer = 0x01, + .iProduct = 0x02, + .iSerialNumber = 0x03, + + .bNumConfigurations = 0x01 +}; + +// Invoked when received GET DEVICE DESCRIPTOR +// Application return pointer to descriptor +uint8_t const *tud_descriptor_device_cb(void) +{ + return (uint8_t const *)&desc_device; +} + +//--------------------------------------------------------------------+ +// Configuration Descriptor +//--------------------------------------------------------------------+ + +enum { ITF_NUM_CDC = 0, ITF_NUM_CDC_DATA, ITF_NUM_MSC, ITF_NUM_TOTAL }; + +#if CFG_TUSB_MCU == OPT_MCU_LPC175X_6X || CFG_TUSB_MCU == OPT_MCU_LPC177X_8X || \ + CFG_TUSB_MCU == OPT_MCU_LPC40XX +// LPC 17xx and 40xx endpoint type (bulk/interrupt/iso) are fixed by its number +// 0 control, 1 In, 2 Bulk, 3 Iso, 4 In, 5 Bulk etc ... +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x82 + +#define EPNUM_MSC_OUT 0x05 +#define EPNUM_MSC_IN 0x85 + +#elif CFG_TUSB_MCU == OPT_MCU_SAMG +// SAMG doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x83 + +#define EPNUM_MSC_OUT 0x04 +#define EPNUM_MSC_IN 0x85 + +#elif CFG_TUSB_MCU == OPT_MCU_MAX32690 || CFG_TUSB_MCU == OPT_MCU_MAX32650 || \ + CFG_TUSB_MCU == OPT_MCU_MAX32666 || CFG_TUSB_MCU == OPT_MCU_MAX78002 +// MAX32 doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x83 + +#define EPNUM_MSC_OUT 0x04 +#define EPNUM_MSC_IN 0x85 + +#else +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x82 + +#define EPNUM_MSC_OUT 0x03 +#define EPNUM_MSC_IN 0x83 + +#endif + +#define CONFIG_TOTAL_LEN (TUD_CONFIG_DESC_LEN + TUD_CDC_DESC_LEN + TUD_MSC_DESC_LEN) + +uint8_t const desc_fs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP notification address and size, EP data address (out, in) and size. + TUD_CDC_DESCRIPTOR(ITF_NUM_CDC, 4, EPNUM_CDC_NOTIF, 8, EPNUM_CDC_OUT, EPNUM_CDC_IN, 64), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 5, EPNUM_MSC_OUT, EPNUM_MSC_IN, 64), +}; + +#if TUD_OPT_HIGH_SPEED +// Per USB specs: high speed capable device must report device_qualifier and other_speed_configuration + +// high speed configuration +uint8_t const desc_hs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP notification address and size, EP data address (out, in) and size. + TUD_CDC_DESCRIPTOR(ITF_NUM_CDC, 4, EPNUM_CDC_NOTIF, 8, EPNUM_CDC_OUT, EPNUM_CDC_IN, 512), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 5, EPNUM_MSC_OUT, EPNUM_MSC_IN, 512), +}; + +// other speed configuration +uint8_t desc_other_speed_config[CONFIG_TOTAL_LEN]; + +// device qualifier is mostly similar to device descriptor since we don't change configuration based on speed +tusb_desc_device_qualifier_t const desc_device_qualifier = { + .bLength = sizeof(tusb_desc_device_qualifier_t), + .bDescriptorType = TUSB_DESC_DEVICE_QUALIFIER, + .bcdUSB = USB_BCD, + + .bDeviceClass = TUSB_CLASS_MISC, + .bDeviceSubClass = MISC_SUBCLASS_COMMON, + .bDeviceProtocol = MISC_PROTOCOL_IAD, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + .bNumConfigurations = 0x01, + .bReserved = 0x00 +}; + +// Invoked when received GET DEVICE QUALIFIER DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete. +// device_qualifier descriptor describes information about a high-speed capable device that would +// change if the device were operating at the other speed. If not highspeed capable stall this request. +uint8_t const *tud_descriptor_device_qualifier_cb(void) +{ + return (uint8_t const *)&desc_device_qualifier; +} + +// Invoked when received GET OTHER SEED CONFIGURATION DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +// Configuration descriptor in the other speed e.g if high speed then this is for full speed and vice versa +uint8_t const *tud_descriptor_other_speed_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + + // if link speed is high return fullspeed config, and vice versa + // Note: the descriptor type is OHER_SPEED_CONFIG instead of CONFIG + memcpy(desc_other_speed_config, + (tud_speed_get() == TUSB_SPEED_HIGH) ? desc_fs_configuration : desc_hs_configuration, + CONFIG_TOTAL_LEN); + + desc_other_speed_config[1] = TUSB_DESC_OTHER_SPEED_CONFIG; + + return desc_other_speed_config; +} + +#endif // highspeed + +// Invoked when received GET CONFIGURATION DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const *tud_descriptor_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + +#if TUD_OPT_HIGH_SPEED + // Although we are highspeed, host may be fullspeed. + return (tud_speed_get() == TUSB_SPEED_HIGH) ? desc_hs_configuration : desc_fs_configuration; +#else + return desc_fs_configuration; +#endif +} + +//--------------------------------------------------------------------+ +// String Descriptors +//--------------------------------------------------------------------+ + +// String Descriptor Index +enum { + STRID_LANGID = 0, + STRID_MANUFACTURER, + STRID_PRODUCT, + STRID_SERIAL, +}; + +// array of pointer to string descriptors +char const *string_desc_arr[] = { + (const char[]){ 0x09, 0x04 }, // 0: is supported language is English (0x0409) + "TinyUSB", // 1: Manufacturer + "TinyUSB Device", // 2: Product + NULL, // 3: Serials will use unique ID if possible + "TinyUSB CDC", // 4: CDC Interface + "TinyUSB MSC", // 5: MSC Interface +}; + +static uint16_t _desc_str[32 + 1]; + +// Invoked when received GET STRING DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +uint16_t const *tud_descriptor_string_cb(uint8_t index, uint16_t langid) +{ + (void)langid; + size_t chr_count; + + switch (index) { + case STRID_LANGID: + memcpy(&_desc_str[1], string_desc_arr[0], 2); + chr_count = 1; + break; + + case STRID_SERIAL: + chr_count = board_usb_get_serial(_desc_str + 1, 32); + break; + + default: + // Note: the 0xEE index string is a Microsoft OS 1.0 Descriptors. + // https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/microsoft-defined-usb-descriptors + + if (!(index < sizeof(string_desc_arr) / sizeof(string_desc_arr[0]))) + return NULL; + + const char *str = string_desc_arr[index]; + + // Cap at max char + chr_count = strlen(str); + size_t const max_count = sizeof(_desc_str) / sizeof(_desc_str[0]) - 1; // -1 for string type + if (chr_count > max_count) + chr_count = max_count; + + // Convert ASCII string into UTF-16 + for (size_t i = 0; i < chr_count; i++) { + _desc_str[1 + i] = str[i]; + } + break; + } + + // first byte is length (including header), second byte is string type + _desc_str[0] = (uint16_t)((TUSB_DESC_STRING << 8) | (2 * chr_count + 2)); + + return _desc_str; +} diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/.cproject b/Examples/MAX32665/USB/TinyUSB/hid_composite/.cproject new file mode 100644 index 00000000000..a3ddcd2115a --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/.cproject @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/.project b/Examples/MAX32665/USB/TinyUSB/hid_composite/.project new file mode 100644 index 00000000000..691dbf6d42e --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/.project @@ -0,0 +1,26 @@ + + + hid_composite + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/.settings/language.settings.xml b/Examples/MAX32665/USB/TinyUSB/hid_composite/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32665/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32665/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..46b358b2893 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=hid_composite +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32665 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/README.md b/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/c_cpp_properties.json b/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/flash.gdb b/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/launch.json b/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/settings.json b/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/settings.json new file mode 100644 index 00000000000..b9782669367 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/settings.json @@ -0,0 +1,94 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32665", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32665.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/tasks.json b/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/Makefile b/Examples/MAX32665/USB/TinyUSB/hid_composite/Makefile new file mode 100644 index 00000000000..a1375f471f3 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32665 +TARGET_UC := MAX32665 +TARGET_LC := max32665 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/README.md b/Examples/MAX32665/USB/TinyUSB/hid_composite/README.md new file mode 100644 index 00000000000..51c6d49dbfa --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/README.md @@ -0,0 +1,39 @@ +## Description + +The example demonstrates the use of USB composite HID driver class. After doing the required connections given below, run the program and a new composite +HID device appears in the device manager, with keyboard, joystick, mouse and consumer control support. Pressing the switch SW2 on the EV Kit will result +in the 'a' key being pressed by the keyboard, the mouse moving down and right, joystick button A, and volume down. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +tusb_config.h by default has logging disabled via the CFG_TUSB_DEBUG definition. +For TinyUSB console logging, set the debug level to 1, 2, or 3, with a higher value +indicating more verbose logging. + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR/UARTS) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. Make sure JP6 (2-3) is connected to UART. +- Default EV kit hardware configuration. + +## Expected Output + +By default, the console UART does not output any message. With CFG_TUSB_DEBUG set +to '2', the Console UART of the device will output these messages: + +``` +USBD init on controller 0, Highspeed = 1024 +sizeof(usbd_device_t) = 69 +sizeof(dcd_event_t) = 12 +sizeof(tu_fifo_t) = 12 +sizeof(tu_edpt_stream_t) = 24 +HID init +``` diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/hid_composite.launch b/Examples/MAX32665/USB/TinyUSB/hid_composite/hid_composite.launch new file mode 100644 index 00000000000..c1d9f30a921 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/hid_composite.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/main.c b/Examples/MAX32665/USB/TinyUSB/hid_composite/main.c new file mode 100644 index 00000000000..32fe090875a --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/main.c @@ -0,0 +1,346 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * Copyright (c) 2024 Analog Devices, Inc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include +#include +#include + +#include "bsp/board_api.h" +#include "tusb.h" +#include "led.h" +#include "pb.h" +#include "mxc_device.h" +#include "gcr_regs.h" +#include "mxc_sys.h" +#include "usb_descriptors.h" + +//--------------------------------------------------------------------+ +// MACRO CONSTANT TYPEDEF PROTYPES +//--------------------------------------------------------------------+ + +/* Blink pattern + * - 250 ms : device not mounted + * - 1000 ms : device mounted + * - 2500 ms : device is suspended + */ +enum { + BLINK_NOT_MOUNTED = 250, + BLINK_MOUNTED = 1000, + BLINK_SUSPENDED = 2500, +}; + +static uint32_t blink_interval_ms = BLINK_NOT_MOUNTED; + +void led_blinking_task(void); +void hid_task(void); + +/*------------- MAIN -------------*/ +int main(void) +{ + board_init(); + + // init device stack on configured roothub port + tud_init(BOARD_TUD_RHPORT); + + if (board_init_after_tusb) { + board_init_after_tusb(); + } + + while (1) { + tud_task(); // tinyusb device task + led_blinking_task(); + + hid_task(); + } +} + +//--------------------------------------------------------------------+ +// Device callbacks +//--------------------------------------------------------------------+ + +// Invoked when device is mounted +void tud_mount_cb(void) +{ + blink_interval_ms = BLINK_MOUNTED; +} + +// Invoked when device is unmounted +void tud_umount_cb(void) +{ + blink_interval_ms = BLINK_NOT_MOUNTED; +} + +// Invoked when usb bus is suspended +// remote_wakeup_en : if host allow us to perform remote wakeup +// Within 7ms, device must draw an average of current less than 2.5 mA from bus +void tud_suspend_cb(bool remote_wakeup_en) +{ + (void)remote_wakeup_en; + blink_interval_ms = BLINK_SUSPENDED; +} + +// Invoked when usb bus is resumed +void tud_resume_cb(void) +{ + blink_interval_ms = tud_mounted() ? BLINK_MOUNTED : BLINK_NOT_MOUNTED; +} + +//--------------------------------------------------------------------+ +// USB HID +//--------------------------------------------------------------------+ + +static void send_hid_report(uint8_t report_id, uint32_t btn) +{ + // skip if hid is not ready yet + if (!tud_hid_ready()) + return; + + switch (report_id) { + case REPORT_ID_KEYBOARD: { + // use to avoid send multiple consecutive zero report for keyboard + static bool has_keyboard_key = false; + + if (btn) { + uint8_t keycode[6] = { 0 }; + keycode[0] = HID_KEY_A; + + tud_hid_keyboard_report(REPORT_ID_KEYBOARD, 0, keycode); + has_keyboard_key = true; + } else { + // send empty key report if previously has key pressed + if (has_keyboard_key) + tud_hid_keyboard_report(REPORT_ID_KEYBOARD, 0, NULL); + has_keyboard_key = false; + } + } break; + + case REPORT_ID_MOUSE: { + int8_t const delta = 5; + + // no button, right + down, no scroll, no pan + tud_hid_mouse_report(REPORT_ID_MOUSE, 0x00, delta, delta, 0, 0); + } break; + + case REPORT_ID_CONSUMER_CONTROL: { + // use to avoid send multiple consecutive zero report + static bool has_consumer_key = false; + + if (btn) { + // volume down + uint16_t volume_down = HID_USAGE_CONSUMER_VOLUME_DECREMENT; + tud_hid_report(REPORT_ID_CONSUMER_CONTROL, &volume_down, 2); + has_consumer_key = true; + } else { + // send empty key report (release key) if previously has key pressed + uint16_t empty_key = 0; + if (has_consumer_key) + tud_hid_report(REPORT_ID_CONSUMER_CONTROL, &empty_key, 2); + has_consumer_key = false; + } + } break; + + case REPORT_ID_GAMEPAD: { + // use to avoid send multiple consecutive zero report for keyboard + static bool has_gamepad_key = false; + + hid_gamepad_report_t report = { + .x = 0, .y = 0, .z = 0, .rz = 0, .rx = 0, .ry = 0, .hat = 0, .buttons = 0 + }; + + if (btn) { + report.hat = GAMEPAD_HAT_UP; + report.buttons = GAMEPAD_BUTTON_A; + tud_hid_report(REPORT_ID_GAMEPAD, &report, sizeof(report)); + + has_gamepad_key = true; + } else { + report.hat = GAMEPAD_HAT_CENTERED; + report.buttons = 0; + if (has_gamepad_key) + tud_hid_report(REPORT_ID_GAMEPAD, &report, sizeof(report)); + has_gamepad_key = false; + } + } break; + + default: + break; + } +} + +// Every 10ms, we will sent 1 report for each HID profile (keyboard, mouse etc ..) +// tud_hid_report_complete_cb() is used to send the next report after previous one is complete +void hid_task(void) +{ + // Poll every 10ms + const uint32_t interval_ms = 10; + static uint32_t start_ms = 0; + + if (board_millis() - start_ms < interval_ms) + return; // not enough time + start_ms += interval_ms; + + uint32_t const btn = board_button_read(); + + // Remote wakeup + if (tud_suspended() && btn) { + // Wake up host if we are in suspend mode + // and REMOTE_WAKEUP feature is enabled by host + tud_remote_wakeup(); + } else { + // Send the 1st of report chain, the rest will be sent by tud_hid_report_complete_cb() + send_hid_report(REPORT_ID_KEYBOARD, btn); + } +} + +// Invoked when sent REPORT successfully to host +// Application can use this to send the next report +// Note: For composite reports, report[0] is report ID +void tud_hid_report_complete_cb(uint8_t instance, uint8_t const *report, uint16_t len) +{ + (void)instance; + (void)len; + + uint8_t next_report_id = report[0] + 1u; + + if (next_report_id < REPORT_ID_COUNT) { + send_hid_report(next_report_id, board_button_read()); + } +} + +// Invoked when received GET_REPORT control request +// Application must fill buffer report's content and return its length. +// Return zero will cause the stack to STALL request +uint16_t tud_hid_get_report_cb(uint8_t instance, uint8_t report_id, hid_report_type_t report_type, + uint8_t *buffer, uint16_t reqlen) +{ + (void)instance; + (void)report_id; + (void)report_type; + (void)buffer; + (void)reqlen; + + return 0; +} + +// Invoked when received SET_REPORT control request or +// received data on OUT endpoint ( Report ID = 0, Type = 0 ) +void tud_hid_set_report_cb(uint8_t instance, uint8_t report_id, hid_report_type_t report_type, + uint8_t const *buffer, uint16_t bufsize) +{ + (void)instance; + + if (report_type == HID_REPORT_TYPE_OUTPUT) { + // Set keyboard LED e.g Capslock, Numlock etc... + if (report_id == REPORT_ID_KEYBOARD) { + // bufsize should be (at least) 1 + if (bufsize < 1) + return; + + uint8_t const kbd_leds = buffer[0]; + + if (kbd_leds & KEYBOARD_LED_CAPSLOCK) { + // Capslock On: disable blink, turn led on + blink_interval_ms = 0; + board_led_write(true); + } else { + // Caplocks Off: back to normal blink + board_led_write(false); + blink_interval_ms = BLINK_MOUNTED; + } + } + } +} + +//--------------------------------------------------------------------+ +// BLINKING TASK +//--------------------------------------------------------------------+ +void led_blinking_task(void) +{ + static uint32_t start_ms = 0; + static bool led_state = false; + + // blink is disabled + if (!blink_interval_ms) + return; + + // Blink every interval ms + if (board_millis() - start_ms < blink_interval_ms) + return; // not enough time + start_ms += blink_interval_ms; + + board_led_write(led_state); + led_state = 1 - led_state; // toggle +} + +//------------------------------------------------------------------------------ +// Wrapper functions to bridge TinyUSB BSP with MSDK BSP +//------------------------------------------------------------------------------ +void board_init(void) +{ + // 1ms tick timer + SysTick_Config(SystemCoreClock / 1000); + + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clkcn & MXC_F_GCR_CLKCN_HIRC96M_EN)) { + MXC_GCR->clkcn |= MXC_F_GCR_CLKCN_HIRC96M_EN; + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); +} + +void board_led_write(bool state) +{ + if (state) { + LED_On(0); + } else { + LED_Off(0); + } +} + +uint32_t board_button_read(void) +{ + return PB_Get(0); +} + +//--------------------------------------------------------------------+ +// Forward USB interrupt events to TinyUSB IRQ Handler +//--------------------------------------------------------------------+ +void USB_IRQHandler(void) +{ + tud_int_handler(0); +} + +volatile uint32_t system_ticks = 0; + +void SysTick_Handler(void) +{ + system_ticks++; +} + +uint32_t board_millis(void) +{ + return system_ticks; +} diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/project.mk b/Examples/MAX32665/USB/TinyUSB/hid_composite/project.mk new file mode 100644 index 00000000000..cab17ef384c --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/project.mk @@ -0,0 +1,17 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable TINYUSB library +LIB_TINYUSB = 1 +TINYUSB_CONFIG_DIR = ./ diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/tusb_config.h b/Examples/MAX32665/USB/TinyUSB/hid_composite/tusb_config.h new file mode 100644 index 00000000000..7b3b532b8d0 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/tusb_config.h @@ -0,0 +1,107 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#ifndef EXAMPLES_MAX32665_USB_TINYUSB_HID_COMPOSITE_TUSB_CONFIG_H_ +#define EXAMPLES_MAX32665_USB_TINYUSB_HID_COMPOSITE_TUSB_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +//--------------------------------------------------------------------+ +// Board Specific Configuration +//--------------------------------------------------------------------+ + +// RHPort number used for device can be defined by board.mk, default to port 0 +#ifndef BOARD_TUD_RHPORT +#define BOARD_TUD_RHPORT 0 +#endif + +// RHPort max operational speed can defined by board.mk +#ifndef BOARD_TUD_MAX_SPEED +#define BOARD_TUD_MAX_SPEED OPT_MODE_DEFAULT_SPEED +#endif + +//-------------------------------------------------------------------- +// COMMON CONFIGURATION +//-------------------------------------------------------------------- + +// defined by compiler flags for flexibility +#ifndef CFG_TUSB_MCU +#error CFG_TUSB_MCU must be defined +#endif + +#ifndef CFG_TUSB_OS +#define CFG_TUSB_OS OPT_OS_NONE +#endif + +#ifndef CFG_TUSB_DEBUG +#define CFG_TUSB_DEBUG 0 +#endif + +// Enable Device stack +#define CFG_TUD_ENABLED 1 + +// Default is max speed that hardware controller could support with on-chip PHY +#define CFG_TUD_MAX_SPEED BOARD_TUD_MAX_SPEED + +/* USB DMA on some MCUs can only access a specific SRAM region with restriction on alignment. + * Tinyusb use follows macros to declare transferring memory so that they can be put + * into those specific section. + * e.g + * - CFG_TUSB_MEM SECTION : __attribute__ (( section(".usb_ram") )) + * - CFG_TUSB_MEM_ALIGN : __attribute__ ((aligned(4))) + */ +#ifndef CFG_TUSB_MEM_SECTION +#define CFG_TUSB_MEM_SECTION +#endif + +#ifndef CFG_TUSB_MEM_ALIGN +#define CFG_TUSB_MEM_ALIGN __attribute__((aligned(4))) +#endif + +//-------------------------------------------------------------------- +// DEVICE CONFIGURATION +//-------------------------------------------------------------------- + +#ifndef CFG_TUD_ENDPOINT0_SIZE +#define CFG_TUD_ENDPOINT0_SIZE 64 +#endif + +//------------- CLASS -------------// +#define CFG_TUD_HID 1 +#define CFG_TUD_CDC 0 +#define CFG_TUD_MSC 0 +#define CFG_TUD_MIDI 0 +#define CFG_TUD_VENDOR 0 + +// HID buffer size Should be sufficient to hold ID (if any) + Data +#define CFG_TUD_HID_EP_BUFSIZE 16 + +#ifdef __cplusplus +} +#endif + +#endif // EXAMPLES_MAX32665_USB_TINYUSB_HID_COMPOSITE_TUSB_CONFIG_H_ diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/usb_descriptors.c b/Examples/MAX32665/USB/TinyUSB/hid_composite/usb_descriptors.c new file mode 100644 index 00000000000..83793abd40e --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/usb_descriptors.c @@ -0,0 +1,234 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" +#include "usb_descriptors.h" + +/* A combination of interfaces must have a unique product id, since PC will save device driver after the first plug. + * Same VID/PID with different interface e.g MSC (first), then CDC (later) will possibly cause system error on PC. + * + * Auto ProductID layout's Bitmap: + * [MSB] HID | MSC | CDC [LSB] + */ +#define _PID_MAP(itf, n) ((CFG_TUD_##itf) << (n)) +#define USB_PID \ + (0x4000 | _PID_MAP(CDC, 0) | _PID_MAP(MSC, 1) | _PID_MAP(HID, 2) | _PID_MAP(MIDI, 3) | \ + _PID_MAP(VENDOR, 4)) + +#define USB_VID 0xCafe +#define USB_BCD 0x0200 + +//--------------------------------------------------------------------+ +// Device Descriptors +//--------------------------------------------------------------------+ +tusb_desc_device_t const desc_device = { .bLength = sizeof(tusb_desc_device_t), + .bDescriptorType = TUSB_DESC_DEVICE, + .bcdUSB = USB_BCD, + .bDeviceClass = 0x00, + .bDeviceSubClass = 0x00, + .bDeviceProtocol = 0x00, + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + + .idVendor = USB_VID, + .idProduct = USB_PID, + .bcdDevice = 0x0100, + + .iManufacturer = 0x01, + .iProduct = 0x02, + .iSerialNumber = 0x03, + + .bNumConfigurations = 0x01 }; + +// Invoked when received GET DEVICE DESCRIPTOR +// Application return pointer to descriptor +uint8_t const *tud_descriptor_device_cb(void) +{ + return (uint8_t const *)&desc_device; +} + +//--------------------------------------------------------------------+ +// HID Report Descriptor +//--------------------------------------------------------------------+ + +uint8_t const desc_hid_report[] = { TUD_HID_REPORT_DESC_KEYBOARD(HID_REPORT_ID(REPORT_ID_KEYBOARD)), + TUD_HID_REPORT_DESC_MOUSE(HID_REPORT_ID(REPORT_ID_MOUSE)), + TUD_HID_REPORT_DESC_CONSUMER( + HID_REPORT_ID(REPORT_ID_CONSUMER_CONTROL)), + TUD_HID_REPORT_DESC_GAMEPAD(HID_REPORT_ID(REPORT_ID_GAMEPAD)) }; + +// Invoked when received GET HID REPORT DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const *tud_hid_descriptor_report_cb(uint8_t instance) +{ + (void)instance; + return desc_hid_report; +} + +//--------------------------------------------------------------------+ +// Configuration Descriptor +//--------------------------------------------------------------------+ + +enum { ITF_NUM_HID, ITF_NUM_TOTAL }; + +#define CONFIG_TOTAL_LEN (TUD_CONFIG_DESC_LEN + TUD_HID_DESC_LEN) + +#define EPNUM_HID 0x81 + +uint8_t const desc_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, TUSB_DESC_CONFIG_ATT_REMOTE_WAKEUP, + 100), + + // Interface number, string index, protocol, report descriptor len, EP In address, size & polling interval + TUD_HID_DESCRIPTOR(ITF_NUM_HID, 0, HID_ITF_PROTOCOL_NONE, sizeof(desc_hid_report), EPNUM_HID, + CFG_TUD_HID_EP_BUFSIZE, 5) +}; + +#if TUD_OPT_HIGH_SPEED +// Per USB specs: high speed capable device must report device_qualifier and other_speed_configuration + +// other speed configuration +uint8_t desc_other_speed_config[CONFIG_TOTAL_LEN]; + +// device qualifier is mostly similar to device descriptor since we don't change configuration based on speed +tusb_desc_device_qualifier_t const desc_device_qualifier = { + .bLength = sizeof(tusb_desc_device_qualifier_t), + .bDescriptorType = TUSB_DESC_DEVICE_QUALIFIER, + .bcdUSB = USB_BCD, + + .bDeviceClass = 0x00, + .bDeviceSubClass = 0x00, + .bDeviceProtocol = 0x00, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + .bNumConfigurations = 0x01, + .bReserved = 0x00 +}; + +// Invoked when received GET DEVICE QUALIFIER DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete. +// device_qualifier descriptor describes information about a high-speed capable device that would +// change if the device were operating at the other speed. If not highspeed capable stall this request. +uint8_t const *tud_descriptor_device_qualifier_cb(void) +{ + return (uint8_t const *)&desc_device_qualifier; +} + +// Invoked when received GET OTHER SEED CONFIGURATION DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +// Configuration descriptor in the other speed e.g if high speed then this is for full speed and vice versa +uint8_t const *tud_descriptor_other_speed_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + + // other speed config is basically configuration with type = OHER_SPEED_CONFIG + memcpy(desc_other_speed_config, desc_configuration, CONFIG_TOTAL_LEN); + desc_other_speed_config[1] = TUSB_DESC_OTHER_SPEED_CONFIG; + + // this example use the same configuration for both high and full speed mode + return desc_other_speed_config; +} + +#endif // highspeed + +// Invoked when received GET CONFIGURATION DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const *tud_descriptor_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + + // This example use the same configuration for both high and full speed mode + return desc_configuration; +} + +//--------------------------------------------------------------------+ +// String Descriptors +//--------------------------------------------------------------------+ + +// String Descriptor Index +enum { + STRID_LANGID = 0, + STRID_MANUFACTURER, + STRID_PRODUCT, + STRID_SERIAL, +}; + +// array of pointer to string descriptors +char const *string_desc_arr[] = { + (const char[]){ 0x09, 0x04 }, // 0: is supported language is English (0x0409) + "TinyUSB", // 1: Manufacturer + "TinyUSB Device", // 2: Product + NULL, // 3: Serials will use unique ID if possible +}; + +static uint16_t _desc_str[32 + 1]; + +// Invoked when received GET STRING DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +uint16_t const *tud_descriptor_string_cb(uint8_t index, uint16_t langid) +{ + (void)langid; + size_t chr_count; + + switch (index) { + case STRID_LANGID: + memcpy(&_desc_str[1], string_desc_arr[0], 2); + chr_count = 1; + break; + + case STRID_SERIAL: + chr_count = board_usb_get_serial(_desc_str + 1, 32); + break; + + default: + // Note: the 0xEE index string is a Microsoft OS 1.0 Descriptors. + // https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/microsoft-defined-usb-descriptors + + if (!(index < sizeof(string_desc_arr) / sizeof(string_desc_arr[0]))) + return NULL; + + const char *str = string_desc_arr[index]; + + // Cap at max char + chr_count = strlen(str); + size_t const max_count = sizeof(_desc_str) / sizeof(_desc_str[0]) - 1; // -1 for string type + if (chr_count > max_count) + chr_count = max_count; + + // Convert ASCII string into UTF-16 + for (size_t i = 0; i < chr_count; i++) { + _desc_str[1 + i] = str[i]; + } + break; + } + + // first byte is length (including header), second byte is string type + _desc_str[0] = (uint16_t)((TUSB_DESC_STRING << 8) | (2 * chr_count + 2)); + + return _desc_str; +} diff --git a/Examples/MAX32665/USB/TinyUSB/hid_composite/usb_descriptors.h b/Examples/MAX32665/USB/TinyUSB/hid_composite/usb_descriptors.h new file mode 100644 index 00000000000..21f0e7ae5f8 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/hid_composite/usb_descriptors.h @@ -0,0 +1,36 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef EXAMPLES_MAX32665_USB_TINYUSB_HID_COMPOSITE_USB_DESCRIPTORS_H_ +#define EXAMPLES_MAX32665_USB_TINYUSB_HID_COMPOSITE_USB_DESCRIPTORS_H_ + +enum { + REPORT_ID_KEYBOARD = 1, + REPORT_ID_MOUSE, + REPORT_ID_CONSUMER_CONTROL, + REPORT_ID_GAMEPAD, + REPORT_ID_COUNT +}; + +#endif // EXAMPLES_MAX32665_USB_TINYUSB_HID_COMPOSITE_USB_DESCRIPTORS_H_ diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.cproject b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.cproject new file mode 100644 index 00000000000..661cd5a925a --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.cproject @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.project b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.project new file mode 100644 index 00000000000..4c572f75f0f --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.project @@ -0,0 +1,26 @@ + + + msc_dual_lun + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.settings/language.settings.xml b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..90c44b5cba0 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=msc_dual_lun +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32665 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/README.md b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/c_cpp_properties.json b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/flash.gdb b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/launch.json b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/settings.json b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/settings.json new file mode 100644 index 00000000000..b9782669367 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/settings.json @@ -0,0 +1,94 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32665", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32665.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/tasks.json b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/Makefile b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/Makefile new file mode 100644 index 00000000000..a1375f471f3 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32665 +TARGET_UC := MAX32665 +TARGET_LC := max32665 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/README.md b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/README.md new file mode 100644 index 00000000000..75206a2b024 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/README.md @@ -0,0 +1,37 @@ +## Description + +The example demonstrates the use of USB Mass Storage driver class with TinyUSB. After doing the required connections given below, run the program and two new portable device appears in the device manager. It will appear as a new drives which can be read from. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +tusb_config.h by default has logging disabled via the CFG_TUSB_DEBUG definition. +For TinyUSB console logging, set the debug level to 1, 2, or 3, with a higher value +indicating more verbose logging. + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR/UARTS) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. Make sure JP6 (2-3) is connected to UART. +- Default EV kit hardware configuration. + +## Expected Output + +By default, the console UART does not output any message. With CFG_TUSB_DEBUG set +to '2', the Console UART of the device will output these messages: + +``` +USBD init on controller 0, Highspeed = 1024 +sizeof(usbd_device_t) = 69 +sizeof(dcd_event_t) = 12 +sizeof(tu_fifo_t) = 12 +sizeof(tu_edpt_stream_t) = 24 +MSC init +``` diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/main.c b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/main.c new file mode 100644 index 00000000000..5322ebdca96 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/main.c @@ -0,0 +1,172 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * Copyright (c) 2024 Analog Devices, Inc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include +#include +#include + +#include "bsp/board_api.h" +#include "tusb.h" +#include "led.h" +#include "pb.h" +#include "mxc_device.h" +#include "gcr_regs.h" +#include "mxc_sys.h" + +//--------------------------------------------------------------------+ +// MACRO CONSTANT TYPEDEF PROTYPES +//--------------------------------------------------------------------+ + +/* Blink pattern + * - 250 ms : device not mounted + * - 1000 ms : device mounted + * - 2500 ms : device is suspended + */ +enum { + BLINK_NOT_MOUNTED = 250, + BLINK_MOUNTED = 1000, + BLINK_SUSPENDED = 2500, +}; + +static uint32_t blink_interval_ms = BLINK_NOT_MOUNTED; + +void led_blinking_task(void); + +/*------------- MAIN -------------*/ +int main(void) +{ + board_init(); + + // init device stack on configured roothub port + tud_init(BOARD_TUD_RHPORT); + + if (board_init_after_tusb) { + board_init_after_tusb(); + } + + while (1) { + tud_task(); // tinyusb device task + led_blinking_task(); + } +} + +//--------------------------------------------------------------------+ +// Device callbacks +//--------------------------------------------------------------------+ + +// Invoked when device is mounted +void tud_mount_cb(void) +{ + blink_interval_ms = BLINK_MOUNTED; +} + +// Invoked when device is unmounted +void tud_umount_cb(void) +{ + blink_interval_ms = BLINK_NOT_MOUNTED; +} + +// Invoked when usb bus is suspended +// remote_wakeup_en : if host allow us to perform remote wakeup +// Within 7ms, device must draw an average of current less than 2.5 mA from bus +void tud_suspend_cb(bool remote_wakeup_en) +{ + (void)remote_wakeup_en; + blink_interval_ms = BLINK_SUSPENDED; +} + +// Invoked when usb bus is resumed +void tud_resume_cb(void) +{ + blink_interval_ms = tud_mounted() ? BLINK_MOUNTED : BLINK_NOT_MOUNTED; +} + +//--------------------------------------------------------------------+ +// BLINKING TASK +//--------------------------------------------------------------------+ +void led_blinking_task(void) +{ + static uint32_t start_ms = 0; + static bool led_state = false; + + // Blink every interval ms + if (board_millis() - start_ms < blink_interval_ms) + return; // not enough time + start_ms += blink_interval_ms; + + board_led_write(led_state); + led_state = 1 - led_state; // toggle +} + +//------------------------------------------------------------------------------ +// Wrapper functions to bridge TinyUSB BSP with MSDK BSP +//------------------------------------------------------------------------------ +void board_init(void) +{ + // 1ms tick timer + SysTick_Config(SystemCoreClock / 1000); + + // Startup the HIRC96M clock if it's not on already + if (!(MXC_GCR->clkcn & MXC_F_GCR_CLKCN_HIRC96M_EN)) { + MXC_GCR->clkcn |= MXC_F_GCR_CLKCN_HIRC96M_EN; + } + + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); +} + +void board_led_write(bool state) +{ + if (state) { + LED_On(0); + } else { + LED_Off(0); + } +} + +uint32_t board_button_read(void) +{ + return PB_Get(0); +} + +//--------------------------------------------------------------------+ +// Forward USB interrupt events to TinyUSB IRQ Handler +//--------------------------------------------------------------------+ +void USB_IRQHandler(void) +{ + tud_int_handler(0); +} + +volatile uint32_t system_ticks = 0; + +void SysTick_Handler(void) +{ + system_ticks++; +} + +uint32_t board_millis(void) +{ + return system_ticks; +} diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/msc_disk_dual.c b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/msc_disk_dual.c new file mode 100644 index 00000000000..1045f332e8b --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/msc_disk_dual.c @@ -0,0 +1,354 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +#if CFG_TUD_MSC + +// When button is pressed, LUN1 will be set to not ready to simulate +// medium not present (e.g SD card removed) + +// Some MCU doesn't have enough 8KB SRAM to store the whole disk +// We will use Flash as read-only disk with board that has +// CFG_EXAMPLE_MSC_READONLY defined +#if defined(CFG_EXAMPLE_MSC_READONLY) || defined(CFG_EXAMPLE_MSC_DUAL_READONLY) +#define MSC_CONST const +#else +#define MSC_CONST +#endif + +enum { + DISK_BLOCK_NUM = 16, // 8KB is the smallest size that windows allow to mount + DISK_BLOCK_SIZE = 512 +}; + +//--------------------------------------------------------------------+ +// LUN 0 +//--------------------------------------------------------------------+ +#define README0_CONTENTS \ + "LUN0: This is tinyusb's MassStorage Class demo.\r\n\r\n" \ + "If you find any bugs or get any questions, feel free to file an\r\n" \ + "issue at github.com/hathach/tinyusb" + +MSC_CONST uint8_t msc_disk0[DISK_BLOCK_NUM][DISK_BLOCK_SIZE] = { + //------------- Block0: Boot Sector -------------// + // byte_per_sector = DISK_BLOCK_SIZE; fat12_sector_num_16 = DISK_BLOCK_NUM; + // sector_per_cluster = 1; reserved_sectors = 1; + // fat_num = 1; fat12_root_entry_num = 16; + // sector_per_fat = 1; sector_per_track = 1; head_num = 1; hidden_sectors = 0; + // drive_number = 0x80; media_type = 0xf8; extended_boot_signature = 0x29; + // filesystem_type = "FAT12 "; volume_serial_number = 0x1234; volume_label = "TinyUSB 0 "; + // FAT magic code at offset 510-511 + { 0xEB, 0x3C, 0x90, 0x4D, 0x53, 0x44, 0x4F, 0x53, 0x35, 0x2E, 0x30, 0x00, 0x02, 0x01, 0x01, + 0x00, 0x01, 0x10, 0x00, 0x10, 0x00, 0xF8, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x29, 0x34, 0x12, 0x00, 0x00, 'T', 'i', 'n', + 'y', 'U', 'S', 'B', ' ', '0', ' ', ' ', 0x46, 0x41, 0x54, 0x31, 0x32, 0x20, 0x20, 0x20, 0x00, + 0x00, + + // Zero up to 2 last bytes of FAT magic code + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x55, 0xAA }, + + //------------- Block1: FAT12 Table -------------// + { + 0xF8, 0xFF, 0xFF, 0xFF, + 0x0F // // first 2 entries must be F8FF, third entry is cluster end of readme file + }, + + //------------- Block2: Root Directory -------------// + { + // first entry is volume label + 'T', 'i', 'n', 'y', 'U', 'S', 'B', ' ', '0', ' ', ' ', 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x6D, 0x65, 0x43, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // second entry is readme file + 'R', 'E', 'A', 'D', 'M', 'E', '0', ' ', 'T', 'X', 'T', 0x20, 0x00, 0xC6, 0x52, 0x6D, 0x65, + 0x43, 0x65, 0x43, 0x00, 0x00, 0x88, 0x6D, 0x65, 0x43, 0x02, 0x00, + sizeof(README0_CONTENTS) - 1, 0x00, 0x00, 0x00 // readme's files size (4 Bytes) + }, + + //------------- Block3: Readme Content -------------// + README0_CONTENTS +}; + +//--------------------------------------------------------------------+ +// LUN 1 +//--------------------------------------------------------------------+ +#define README1_CONTENTS \ + "LUN1: This is tinyusb's MassStorage Class demo.\r\n\r\n" \ + "If you find any bugs or get any questions, feel free to file an\r\n" \ + "issue at github.com/hathach/tinyusb" + +MSC_CONST uint8_t msc_disk1[DISK_BLOCK_NUM][DISK_BLOCK_SIZE] = { + //------------- Block0: Boot Sector -------------// + // byte_per_sector = DISK_BLOCK_SIZE; fat12_sector_num_16 = DISK_BLOCK_NUM; + // sector_per_cluster = 1; reserved_sectors = 1; + // fat_num = 1; fat12_root_entry_num = 16; + // sector_per_fat = 1; sector_per_track = 1; head_num = 1; hidden_sectors = 0; + // drive_number = 0x80; media_type = 0xf8; extended_boot_signature = 0x29; + // filesystem_type = "FAT12 "; volume_serial_number = 0x5678; volume_label = "TinyUSB 1 "; + // FAT magic code at offset 510-511 + { 0xEB, 0x3C, 0x90, 0x4D, 0x53, 0x44, 0x4F, 0x53, 0x35, 0x2E, 0x30, 0x00, 0x02, 0x01, 0x01, + 0x00, 0x01, 0x10, 0x00, 0x10, 0x00, 0xF8, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x29, 0x78, 0x56, 0x00, 0x00, 'T', 'i', 'n', + 'y', 'U', 'S', 'B', ' ', '1', ' ', ' ', 0x46, 0x41, 0x54, 0x31, 0x32, 0x20, 0x20, 0x20, 0x00, + 0x00, + + // Zero up to 2 last bytes of FAT magic code + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x55, 0xAA }, + + //------------- Block1: FAT12 Table -------------// + { + 0xF8, 0xFF, 0xFF, 0xFF, + 0x0F // // first 2 entries must be F8FF, third entry is cluster end of readme file + }, + + //------------- Block2: Root Directory -------------// + { + // first entry is volume label + 'T', 'i', 'n', 'y', 'U', 'S', 'B', ' ', '1', ' ', ' ', 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x6D, 0x65, 0x43, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // second entry is readme file + 'R', 'E', 'A', 'D', 'M', 'E', '1', ' ', 'T', 'X', 'T', 0x20, 0x00, 0xC6, 0x52, 0x6D, 0x65, + 0x43, 0x65, 0x43, 0x00, 0x00, 0x88, 0x6D, 0x65, 0x43, 0x02, 0x00, + sizeof(README1_CONTENTS) - 1, 0x00, 0x00, 0x00 // readme's files size (4 Bytes) + }, + + //------------- Block3: Readme Content -------------// + README1_CONTENTS +}; + +// Invoked to determine max LUN +uint8_t tud_msc_get_maxlun_cb(void) +{ + return 2; // dual LUN +} + +// Invoked when received SCSI_CMD_INQUIRY +// Application fill vendor id, product id and revision with string up to 8, 16, 4 characters respectively +void tud_msc_inquiry_cb(uint8_t lun, uint8_t vendor_id[8], uint8_t product_id[16], + uint8_t product_rev[4]) +{ + (void)lun; // use same ID for both LUNs + + const char vid[] = "TinyUSB"; + const char pid[] = "Mass Storage"; + const char rev[] = "1.0"; + + memcpy(vendor_id, vid, strlen(vid)); + memcpy(product_id, pid, strlen(pid)); + memcpy(product_rev, rev, strlen(rev)); +} + +// Invoked when received Test Unit Ready command. +// return true allowing host to read/write this LUN e.g SD card inserted +bool tud_msc_test_unit_ready_cb(uint8_t lun) +{ + if (lun == 1 && board_button_read()) + return false; + + return true; // RAM disk is always ready +} + +// Invoked when received SCSI_CMD_READ_CAPACITY_10 and SCSI_CMD_READ_FORMAT_CAPACITY to determine the disk size +// Application update block count and block size +void tud_msc_capacity_cb(uint8_t lun, uint32_t *block_count, uint16_t *block_size) +{ + (void)lun; + + *block_count = DISK_BLOCK_NUM; + *block_size = DISK_BLOCK_SIZE; +} + +// Invoked when received Start Stop Unit command +// - Start = 0 : stopped power mode, if load_eject = 1 : unload disk storage +// - Start = 1 : active mode, if load_eject = 1 : load disk storage +bool tud_msc_start_stop_cb(uint8_t lun, uint8_t power_condition, bool start, bool load_eject) +{ + (void)lun; + (void)power_condition; + + if (load_eject) { + if (start) { + // load disk storage + } else { + // unload disk storage + } + } + + return true; +} + +// Callback invoked when received READ10 command. +// Copy disk's data to buffer (up to bufsize) and return number of copied bytes. +int32_t tud_msc_read10_cb(uint8_t lun, uint32_t lba, uint32_t offset, void *buffer, + uint32_t bufsize) +{ + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + + uint8_t const *addr = (lun ? msc_disk1[lba] : msc_disk0[lba]) + offset; + memcpy(buffer, addr, bufsize); + + return (int32_t)bufsize; +} + +bool tud_msc_is_writable_cb(uint8_t lun) +{ + (void)lun; + +#if defined(CFG_EXAMPLE_MSC_READONLY) || defined(CFG_EXAMPLE_MSC_DUAL_READONLY) + return false; +#else + return true; +#endif +} + +// Callback invoked when received WRITE10 command. +// Process data in buffer to disk's storage and return number of written bytes +int32_t tud_msc_write10_cb(uint8_t lun, uint32_t lba, uint32_t offset, uint8_t *buffer, + uint32_t bufsize) +{ + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + +#if defined(CFG_EXAMPLE_MSC_READONLY) || defined(CFG_EXAMPLE_MSC_DUAL_READONLY) + (void)lun; + (void)lba; + (void)offset; + (void)buffer; +#else + uint8_t *addr = (lun ? msc_disk1[lba] : msc_disk0[lba]) + offset; + memcpy(addr, buffer, bufsize); +#endif + + return (int32_t)bufsize; +} + +// Callback invoked when received an SCSI command not in built-in list below +// - READ_CAPACITY10, READ_FORMAT_CAPACITY, INQUIRY, MODE_SENSE6, REQUEST_SENSE +// - READ10 and WRITE10 has their own callbacks (MUST not be handled here) +int32_t tud_msc_scsi_cb(uint8_t lun, uint8_t const scsi_cmd[16], void *buffer, uint16_t bufsize) +{ + void const *response = NULL; + int32_t resplen = 0; + + // most scsi handled is input + bool in_xfer = true; + + switch (scsi_cmd[0]) { + default: + // Set Sense = Invalid Command Operation + tud_msc_set_sense(lun, SCSI_SENSE_ILLEGAL_REQUEST, 0x20, 0x00); + + // negative means error -> tinyusb could stall and/or response with failed status + return -1; + } + + // return resplen must not larger than bufsize + if (resplen > bufsize) + resplen = bufsize; + + if (response && (resplen > 0)) { + if (in_xfer) { + memcpy(buffer, response, (size_t)resplen); + } else { + // SCSI output + } + } + + return resplen; +} + +#endif diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/msc_dual_lun.launch b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/msc_dual_lun.launch new file mode 100644 index 00000000000..3ac61119416 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/msc_dual_lun.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/project.mk b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/project.mk new file mode 100644 index 00000000000..cab17ef384c --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/project.mk @@ -0,0 +1,17 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable TINYUSB library +LIB_TINYUSB = 1 +TINYUSB_CONFIG_DIR = ./ diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/tusb_config.h b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/tusb_config.h new file mode 100644 index 00000000000..b599a7b6a15 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/tusb_config.h @@ -0,0 +1,107 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#ifndef EXAMPLES_MAX32665_USB_TINYUSB_MSC_DUAL_LUN_TUSB_CONFIG_H_ +#define EXAMPLES_MAX32665_USB_TINYUSB_MSC_DUAL_LUN_TUSB_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +//--------------------------------------------------------------------+ +// Board Specific Configuration +//--------------------------------------------------------------------+ + +// RHPort number used for device can be defined by board.mk, default to port 0 +#ifndef BOARD_TUD_RHPORT +#define BOARD_TUD_RHPORT 0 +#endif + +// RHPort max operational speed can defined by board.mk +#ifndef BOARD_TUD_MAX_SPEED +#define BOARD_TUD_MAX_SPEED OPT_MODE_DEFAULT_SPEED +#endif + +//-------------------------------------------------------------------- +// COMMON CONFIGURATION +//-------------------------------------------------------------------- + +// defined by compiler flags for flexibility +#ifndef CFG_TUSB_MCU +#error CFG_TUSB_MCU must be defined +#endif + +#ifndef CFG_TUSB_OS +#define CFG_TUSB_OS OPT_OS_NONE +#endif + +#ifndef CFG_TUSB_DEBUG +#define CFG_TUSB_DEBUG 0 +#endif + +// Enable Device stack +#define CFG_TUD_ENABLED 1 + +// Default is max speed that hardware controller could support with on-chip PHY +#define CFG_TUD_MAX_SPEED BOARD_TUD_MAX_SPEED + +/* USB DMA on some MCUs can only access a specific SRAM region with restriction on alignment. + * Tinyusb use follows macros to declare transferring memory so that they can be put + * into those specific section. + * e.g + * - CFG_TUSB_MEM SECTION : __attribute__ (( section(".usb_ram") )) + * - CFG_TUSB_MEM_ALIGN : __attribute__ ((aligned(4))) + */ +#ifndef CFG_TUSB_MEM_SECTION +#define CFG_TUSB_MEM_SECTION +#endif + +#ifndef CFG_TUSB_MEM_ALIGN +#define CFG_TUSB_MEM_ALIGN __attribute__((aligned(4))) +#endif + +//-------------------------------------------------------------------- +// DEVICE CONFIGURATION +//-------------------------------------------------------------------- + +#ifndef CFG_TUD_ENDPOINT0_SIZE +#define CFG_TUD_ENDPOINT0_SIZE 64 +#endif + +//------------- CLASS -------------// +#define CFG_TUD_CDC 0 +#define CFG_TUD_MSC 1 +#define CFG_TUD_HID 0 +#define CFG_TUD_MIDI 0 +#define CFG_TUD_VENDOR 0 + +// MSC Buffer size of Device Mass storage +#define CFG_TUD_MSC_EP_BUFSIZE 512 + +#ifdef __cplusplus +} +#endif + +#endif // EXAMPLES_MAX32665_USB_TINYUSB_MSC_DUAL_LUN_TUSB_CONFIG_H_ diff --git a/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/usb_descriptors.c b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/usb_descriptors.c new file mode 100644 index 00000000000..0c6bfd7fa64 --- /dev/null +++ b/Examples/MAX32665/USB/TinyUSB/msc_dual_lun/usb_descriptors.c @@ -0,0 +1,206 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +/* A combination of interfaces must have a unique product id, since PC will save device driver after the first plug. + * Same VID/PID with different interface e.g MSC (first), then CDC (later) will possibly cause system error on PC. + * + * Auto ProductID layout's Bitmap: + * [MSB] HID | MSC | CDC [LSB] + */ +#define _PID_MAP(itf, n) ((CFG_TUD_##itf) << (n)) +#define USB_PID \ + (0x4000 | _PID_MAP(CDC, 0) | _PID_MAP(MSC, 1) | _PID_MAP(HID, 2) | _PID_MAP(MIDI, 3) | \ + _PID_MAP(VENDOR, 4)) + +//--------------------------------------------------------------------+ +// Device Descriptors +//--------------------------------------------------------------------+ +tusb_desc_device_t const desc_device = { .bLength = sizeof(tusb_desc_device_t), + .bDescriptorType = TUSB_DESC_DEVICE, + .bcdUSB = 0x0200, + .bDeviceClass = 0x00, + .bDeviceSubClass = 0x00, + .bDeviceProtocol = 0x00, + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + + .idVendor = 0xCafe, + .idProduct = USB_PID, + .bcdDevice = 0x0100, + + .iManufacturer = 0x01, + .iProduct = 0x02, + .iSerialNumber = 0x03, + + .bNumConfigurations = 0x01 }; + +// Invoked when received GET DEVICE DESCRIPTOR +// Application return pointer to descriptor +uint8_t const *tud_descriptor_device_cb(void) +{ + return (uint8_t const *)&desc_device; +} + +//--------------------------------------------------------------------+ +// Configuration Descriptor +//--------------------------------------------------------------------+ + +enum { ITF_NUM_MSC, ITF_NUM_TOTAL }; + +#define CONFIG_TOTAL_LEN (TUD_CONFIG_DESC_LEN + TUD_MSC_DESC_LEN) + +#if CFG_TUSB_MCU == OPT_MCU_LPC175X_6X || CFG_TUSB_MCU == OPT_MCU_LPC177X_8X || \ + CFG_TUSB_MCU == OPT_MCU_LPC40XX +// LPC 17xx and 40xx endpoint type (bulk/interrupt/iso) are fixed by its number +// 0 control, 1 In, 2 Bulk, 3 Iso, 4 In, 5 Bulk etc ... +#define EPNUM_MSC_OUT 0x02 +#define EPNUM_MSC_IN 0x82 + +#elif CFG_TUSB_MCU == OPT_MCU_SAMG +// SAMG doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_MSC_OUT 0x01 +#define EPNUM_MSC_IN 0x82 + +#elif CFG_TUSB_MCU == OPT_MCU_FT90X || CFG_TUSB_MCU == OPT_MCU_FT93X +// FT9XX doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_MSC_OUT 0x01 +#define EPNUM_MSC_IN 0x82 + +#elif CFG_TUSB_MCU == OPT_MCU_MAX32690 || CFG_TUSB_MCU == OPT_MCU_MAX32650 || \ + CFG_TUSB_MCU == OPT_MCU_MAX32666 || CFG_TUSB_MCU == OPT_MCU_MAX78002 +// MAX32 doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_MSC_OUT 0x01 +#define EPNUM_MSC_IN 0x82 + +#else +#define EPNUM_MSC_OUT 0x01 +#define EPNUM_MSC_IN 0x81 + +#endif + +uint8_t const desc_fs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 0, EPNUM_MSC_OUT, EPNUM_MSC_IN, 64), +}; + +#if TUD_OPT_HIGH_SPEED +uint8_t const desc_hs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 0, EPNUM_MSC_OUT, EPNUM_MSC_IN, 512), +}; +#endif + +// Invoked when received GET CONFIGURATION DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const *tud_descriptor_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + +#if TUD_OPT_HIGH_SPEED + // Although we are highspeed, host may be fullspeed. + return (tud_speed_get() == TUSB_SPEED_HIGH) ? desc_hs_configuration : desc_fs_configuration; +#else + return desc_fs_configuration; +#endif +} + +//--------------------------------------------------------------------+ +// String Descriptors +//--------------------------------------------------------------------+ + +// String Descriptor Index +enum { + STRID_LANGID = 0, + STRID_MANUFACTURER, + STRID_PRODUCT, + STRID_SERIAL, +}; + +// array of pointer to string descriptors +char const *string_desc_arr[] = { + (const char[]){ 0x09, 0x04 }, // 0: is supported language is English (0x0409) + "TinyUSB", // 1: Manufacturer + "TinyUSB Device", // 2: Product + NULL, // 3: Serials will use unique ID if possible +}; + +static uint16_t _desc_str[32 + 1]; + +// Invoked when received GET STRING DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +uint16_t const *tud_descriptor_string_cb(uint8_t index, uint16_t langid) +{ + (void)langid; + size_t chr_count; + + switch (index) { + case STRID_LANGID: + memcpy(&_desc_str[1], string_desc_arr[0], 2); + chr_count = 1; + break; + + case STRID_SERIAL: + chr_count = board_usb_get_serial(_desc_str + 1, 32); + break; + + default: + // Note: the 0xEE index string is a Microsoft OS 1.0 Descriptors. + // https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/microsoft-defined-usb-descriptors + + if (!(index < sizeof(string_desc_arr) / sizeof(string_desc_arr[0]))) + return NULL; + + const char *str = string_desc_arr[index]; + + // Cap at max char + chr_count = strlen(str); + size_t const max_count = sizeof(_desc_str) / sizeof(_desc_str[0]) - 1; // -1 for string type + if (chr_count > max_count) + chr_count = max_count; + + // Convert ASCII string into UTF-16 + for (size_t i = 0; i < chr_count; i++) { + _desc_str[1 + i] = str[i]; + } + break; + } + + // first byte is length (including header), second byte is string type + _desc_str[0] = (uint16_t)((TUSB_DESC_STRING << 8) | (2 * chr_count + 2)); + + return _desc_str; +} diff --git a/Examples/MAX32665/USB/USB_CDCACM/.vscode/README.md b/Examples/MAX32665/USB/USB_CDCACM/.vscode/README.md deleted file mode 100755 index 90fbcefc65d..00000000000 --- a/Examples/MAX32665/USB/USB_CDCACM/.vscode/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# VSCode-Maxim - -_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ - -## Quick Links - -* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) - -## Introduction - -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). - -The following features are supported: - -* Code editing with intellisense down to the register level -* Code compilation with the ability to easily re-target a project for different microcontrollers and boards -* Flashing programs -* GUI and command-line debugging - -## Dependencies - -* [Visual Studio Code](https://code.visualstudio.com/) - * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) -* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) - -## Installation - -Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. - -See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. - -## Usage - -See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. - -## Issue Tracker - -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. - -New issues should contain _at minimum_ the following information: - -* Visual Studio Code version #s (see `Help -> About`) -* C/C++ Extension version # -* Target microcontroller and evaluation platform -* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/USB_CDCACM/.vscode/settings.json b/Examples/MAX32665/USB/USB_CDCACM/.vscode/settings.json deleted file mode 100755 index a090f08b377..00000000000 --- a/Examples/MAX32665/USB/USB_CDCACM/.vscode/settings.json +++ /dev/null @@ -1,94 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32665", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32665.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32665/USB/USB_CDCACM/Makefile b/Examples/MAX32665/USB/USB_CDCACM/Makefile deleted file mode 100644 index a9dc1157557..00000000000 --- a/Examples/MAX32665/USB/USB_CDCACM/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32665 -TARGET_UC := MAX32665 -TARGET_LC := max32665 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32665/USB/USB_CDCACM/descriptors.h b/Examples/MAX32665/USB/USB_CDCACM/descriptors.h deleted file mode 100644 index e766a8ee2ba..00000000000 --- a/Examples/MAX32665/USB/USB_CDCACM/descriptors.h +++ /dev/null @@ -1,177 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -#ifndef EXAMPLES_MAX32665_USB_USB_CDCACM_DESCRIPTORS_H_ -#define EXAMPLES_MAX32665_USB_USB_CDCACM_DESCRIPTORS_H_ - -#include -#include "usb.h" -#include "hid_kbd.h" - -MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { - 0x12, /* bLength = 18 */ - 0x01, /* bDescriptorType = Device */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x02, /* bDeviceClass = comm class (2) */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x0B6A, /* idVendor (Maxim Integrated) */ - 0x003C, /* idProduct */ - 0x0100, /* bcdDevice */ - 0x01, /* iManufacturer Descriptor ID */ - 0x02, /* iProduct Descriptor ID */ - 0x00, /* iSerialNumber = (0) No string */ - 0x01 /* bNumConfigurations */ -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - MXC_USB_interface_descriptor_t comm_interface_descriptor; - uint8_t header_functional_descriptor[5]; - uint8_t call_management_descriptor[5]; - uint8_t acm_functional_descriptor[4]; - uint8_t union_functional_descriptor[5]; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; - MXC_USB_interface_descriptor_t data_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; -} config_descriptor = { - { - 0x09, /* bLength = 9 */ - 0x02, /* bDescriptorType = Config (2) */ - 0x0043, /* wTotalLength(L/H) */ - 0x02, /* bNumInterfaces */ - 0x01, /* bConfigValue */ - 0x00, /* iConfiguration */ - 0xE0, /* bmAttributes (self-powered, remote wakeup) */ - 0x01, /* MaxPower is 2ma (units are 2ma/bit) */ - }, - { - /* First Interface Descriptor For Comm Class Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x02, /* bInterfaceClass = Communications Interface Class (2) */ - 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ - 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ - 0x00, /* iInterface */ - }, - { - /* Header Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x00, /* bDescriptorSubtype */ - 0x10, 0x01, /* bcdCDC */ - }, - { - /* Call Management Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x01, /* bDescriptorSubtype */ - 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ - 0x01, /* bmDataInterface */ - }, - { - /* Abstract Control Management Functional Descriptor */ - 0x04, /* bFunctionalLength = 4 */ - 0x24, /* bDescriptorType */ - 0x02, /* bDescriptorSubtype */ - 0x02, /* bmCapabilities */ - }, - { - /* Union Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x06, /* bDescriptorSubtype */ - 0x00, /* bmMasterInterface */ - 0x01, /* bmSlaveInterface0 */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0040, /* wMaxPacketSize */ - 0xff, /* bInterval (milliseconds) */ - }, - { - /* Second Interface Descriptor For Data Interface */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType (Interface) */ - 0x01, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints */ - 0x0a, /* bInterfaceClass = Data Interface (10) */ - 0x00, /* bInterfaceSubClass = none (0) */ - 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ - 0x00, /* biInterface = No Text String (0) */ - }, - { - /* OUT Endpoint 1 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #3) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00 /* bInterval (N/A) */ - } -}; - -__attribute__((aligned(4))) uint8_t lang_id_desc[] = { - 0x04, /* bLength */ - 0x03, /* bDescriptorType */ - 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ -}; - -__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, - 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t prod_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', 0, - ' ', 0, 'C', 0, 'D', 0, 'C', 0, '-', 0, 'A', 0, 'C', 0, 'M', 0, -}; - -/* Not currently used (see device descriptor), but could be enabled if desired */ -__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ - 0x03, /* bDescriptorType */ - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, - '0', 0, '0', 0, '0', 0, '1', 0 }; - -#endif // EXAMPLES_MAX32665_USB_USB_CDCACM_DESCRIPTORS_H_ diff --git a/Examples/MAX32665/USB/USB_CDCACM/main.c b/Examples/MAX32665/USB/USB_CDCACM/main.c deleted file mode 100644 index cbc715e4359..00000000000 --- a/Examples/MAX32665/USB/USB_CDCACM/main.c +++ /dev/null @@ -1,380 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file main.c - * @brief USB CDC-ACM example - * @details This project creates a virtual COM port, which loops back data sent to it. - * Load the project, connect a cable from the PC to the USB connector - * on the Evaluation Kit, and observe that the PC now recognizes a new COM port. - * A driver for the COM port, if needed, is located in the Driver/ subdirectory. - * - */ - -#include -#include -#include "led.h" -#include "pb.h" -#include "mxc_delay.h" -#include "usb.h" -#include "usb_event.h" -#include "enumerate.h" -#include "cdc_acm.h" -#include "descriptors.h" -#include "gcr_regs.h" -#include "mxc_sys.h" - -/***** Definitions *****/ -#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS -#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) - -#define BUFFER_SIZE 64 - -#define STRINGIFY(x) #x -#define TOSTRING(x) STRINGIFY(x) - -/***** Global Data *****/ -volatile int configured; -volatile int suspended; -volatile unsigned int event_flags; -int remote_wake_en; - -/***** Function Prototypes *****/ -int usbStartupCallback(); -int usbShutdownCallback(); -static void usbAppSleep(void); -static void usbAppWakeup(void); -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int eventCallback(maxusb_event_t evt, void *data); -static int usbReadCallback(void); -static void echoUSB(void); - -/***** File Scope Variables *****/ - -/* This EP assignment must match the Configuration Descriptor */ -static acm_cfg_t acm_cfg = { - 1, /* EP OUT */ - MXC_USBHS_MAX_PACKET, /* OUT max packet size */ - 2, /* EP IN */ - MXC_USBHS_MAX_PACKET, /* IN max packet size */ - 3, /* EP Notify */ - MXC_USBHS_MAX_PACKET, /* Notify max packet size */ -}; - -static volatile int usb_read_complete; - -/* User-supplied function to delay usec micro-seconds */ -void delay_us(unsigned int usec) -{ - /* mxc_delay() takes unsigned long, so can't use it directly */ - MXC_Delay(usec); -} - -/******************************************************************************/ -int main(void) -{ - maxusb_cfg_options_t usb_opts; - - printf("\n\n***** " TOSTRING(TARGET) " USB CDC-ACM Example *****\n"); - printf("Waiting for VBUS...\n"); - - /* Initialize state */ - configured = 0; - suspended = 0; - event_flags = 0; - remote_wake_en = 0; - - /* Start out in full speed */ - usb_opts.enable_hs = 0; - usb_opts.delay_us = delay_us; /* Function which will be used for delays */ - usb_opts.init_callback = usbStartupCallback; - usb_opts.shutdown_callback = usbShutdownCallback; - - /* Initialize the usb module */ - if (MXC_USB_Init(&usb_opts) != 0) { - printf("MXC_USB_Init() failed\n"); - - while (1) {} - } - - /* Initialize the enumeration module */ - if (enum_init() != 0) { - printf("enum_init() failed\n"); - - while (1) {} - } - - /* Register enumeration data */ - enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); - enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); - enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); - enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); - - /* Handle configuration */ - enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); - - /* Handle feature set/clear */ - enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); - enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); - - /* Initialize the class driver */ - if (acm_init(&config_descriptor.comm_interface_descriptor) != 0) { - printf("acm_init() failed\n"); - - while (1) {} - } - - /* Register callbacks */ - MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); - MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); - acm_register_callback(ACM_CB_READ_READY, usbReadCallback); - usb_read_complete = 0; - - /* Start with USB in low power mode */ - usbAppSleep(); - NVIC_EnableIRQ(USB_IRQn); - - /* Wait for events */ - while (1) { - echoUSB(); - - if (suspended || !configured) { - LED_Off(0); - } else { - LED_On(0); - } - - if (event_flags) { - /* Display events */ - if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); - printf("VBUS Disconnect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); - printf("VBUS Connect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); - printf("Bus Reset\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); - printf("Suspended\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); - printf("Resume\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { - MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); - printf("Enumeration complete. Waiting for characters from serial port just " - "created...\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { - MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); - printf("Remote Wakeup\n"); - } - } - } -} - -/* This callback is used to allow the driver to call part specific initialization functions. */ -/******************************************************************************/ -int usbStartupCallback() -{ - // Startup the HIRC96M clock if it's not on already - if (!(MXC_GCR->clkcn & MXC_F_GCR_CLKCN_HIRC96M_EN)) { - MXC_GCR->clkcn |= MXC_F_GCR_CLKCN_HIRC96M_EN; - - if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLKCN_HIRC96M_RDY) != E_NO_ERROR) { - return E_TIME_OUT; - } - } - - MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -int usbShutdownCallback() -{ - MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -static void usbAppSleep(void) -{ - /* TODO: Place low-power code here */ - suspended = 1; -} - -/******************************************************************************/ -static void usbAppWakeup(void) -{ - /* TODO: Place low-power code here */ - suspended = 0; -} - -/******************************************************************************/ -static void echoUSB(void) -{ - int chars; - uint8_t buffer[BUFFER_SIZE]; - - if ((chars = acm_canread()) > 0) { - if (chars > BUFFER_SIZE) { - chars = BUFFER_SIZE; - } - - // Read the data from USB - if (acm_read(buffer, chars) != chars) { - printf("acm_read() failed\n"); - return; - } - - // Echo it back - if (acm_present()) { - if (acm_write(buffer, chars) != chars) { - printf("acm_write() failed\n"); - } - } - } -} - -/******************************************************************************/ -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - /* Confirm the configuration value */ - if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { - configured = 1; - MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); - - acm_cfg.out_ep = config_descriptor.endpoint_descriptor_1.bEndpointAddress & 0x7; - acm_cfg.out_maxpacket = config_descriptor.endpoint_descriptor_1.wMaxPacketSize; - acm_cfg.in_ep = config_descriptor.endpoint_descriptor_2.bEndpointAddress & 0x7; - acm_cfg.in_maxpacket = config_descriptor.endpoint_descriptor_2.wMaxPacketSize; - acm_cfg.notify_ep = config_descriptor.endpoint_descriptor_3.bEndpointAddress & 0x7; - acm_cfg.notify_maxpacket = config_descriptor.endpoint_descriptor_3.wMaxPacketSize; - - return acm_configure(&acm_cfg); /* Configure the device class */ - } else if (sud->wValue == 0) { - configured = 0; - return acm_deconfigure(); - } - - return -1; -} - -/******************************************************************************/ -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 1; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/******************************************************************************/ -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 0; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/******************************************************************************/ -static int eventCallback(maxusb_event_t evt, void *data) -{ - /* Set event flag */ - MXC_SETBIT(&event_flags, evt); - - switch (evt) { - case MAXUSB_EVENT_NOVBUS: - MXC_USB_EventDisable(MAXUSB_EVENT_BRST); - MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); - MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); - MXC_USB_Disconnect(); - configured = 0; - enum_clearconfig(); - acm_deconfigure(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_VBUS: - MXC_USB_EventClear(MAXUSB_EVENT_BRST); - MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_SUSP); - MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); - MXC_USB_Connect(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_BRST: - usbAppWakeup(); - enum_clearconfig(); - acm_deconfigure(); - configured = 0; - suspended = 0; - break; - - case MAXUSB_EVENT_SUSP: - usbAppSleep(); - break; - - case MAXUSB_EVENT_DPACT: - usbAppWakeup(); - break; - - default: - break; - } - - return 0; -} - -/******************************************************************************/ -static int usbReadCallback(void) -{ - usb_read_complete = 1; - return 0; -} - -/******************************************************************************/ -void USB_IRQHandler(void) -{ - MXC_USB_EventHandler(); -} - -/******************************************************************************/ -void SysTick_Handler(void) -{ - MXC_DelayHandler(); -} diff --git a/Examples/MAX32665/USB/USB_CDCACM/project.mk b/Examples/MAX32665/USB/USB_CDCACM/project.mk deleted file mode 100644 index 9448aa13e53..00000000000 --- a/Examples/MAX32665/USB/USB_CDCACM/project.mk +++ /dev/null @@ -1,16 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -# ********************************************************** - -# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable MAXUSB library -LIB_MAXUSB = 1 diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.vscode/README.md b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.vscode/README.md deleted file mode 100755 index 90fbcefc65d..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.vscode/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# VSCode-Maxim - -_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ - -## Quick Links - -* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) - -## Introduction - -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). - -The following features are supported: - -* Code editing with intellisense down to the register level -* Code compilation with the ability to easily re-target a project for different microcontrollers and boards -* Flashing programs -* GUI and command-line debugging - -## Dependencies - -* [Visual Studio Code](https://code.visualstudio.com/) - * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) -* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) - -## Installation - -Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. - -See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. - -## Usage - -See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. - -## Issue Tracker - -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. - -New issues should contain _at minimum_ the following information: - -* Visual Studio Code version #s (see `Help -> About`) -* C/C++ Extension version # -* Target microcontroller and evaluation platform -* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json deleted file mode 100755 index a090f08b377..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json +++ /dev/null @@ -1,94 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32665", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32665.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/Makefile b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/Makefile deleted file mode 100644 index a9dc1157557..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32665 -TARGET_UC := MAX32665 -TARGET_LC := max32665 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/descriptors.h b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/descriptors.h deleted file mode 100644 index 3fa05bc4c74..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/descriptors.h +++ /dev/null @@ -1,444 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -#ifndef EXAMPLES_MAX32665_USB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ -#define EXAMPLES_MAX32665_USB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ - -#include -#include "usb.h" -#include "hid_kbd.h" - -MXC_USB_device_descriptor_t __attribute__((aligned(4))) composite_device_descriptor = { - 0x12, /* bLength */ - 0x01, /* bDescriptorType = Device */ - 0x0200, - /* bcdUSB USB spec rev (BCD) */ /// - 0xEF, /* bDeviceClass = code specified by interface descriptors */ - 0x02, /* bDeviceSubClass = code specified by interface descriptors */ - 0x01, /* bDeviceProtocol = code specified by interface descriptors */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x0B6A, /* idVendor (Maxim Integrated) */ - 0x003C, - /* idProduct */ /// - 0x0100, /* bcdDevice */ - 0x01, /* iManufacturer Descriptor ID */ - 0x02, /* iProduct Descriptor ID */ - 0x00, /* iSerialNumber Descriptor ID */ - 0x01 /* bNumConfigurations */ -}; - -/* Device qualifier needed for high-speed operation */ -MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) -composite_device_qualifier_descriptor = { - 0x0A, /* bLength = 10 */ - 0x06, /* bDescriptorType = Device Qualifier */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0xEF, /* bDeviceClass = Unspecified */ - 0x02, /* bDeviceSubClass */ - 0x01, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x01, /* bNumConfigurations */ - 0x00 /* Reserved, must be 0 */ -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #0 Mass Storage Device */ - MXC_USB_interface_descriptor_t msc_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; - /* Interface Association Descriptor */ - uint8_t interface_association_descriptor[8]; - /* Interface #1 CDCACM Device */ - MXC_USB_interface_descriptor_t comm_interface_descriptor; - uint8_t header_functional_descriptor[5]; - uint8_t call_management_descriptor[5]; - uint8_t acm_functional_descriptor[4]; - uint8_t union_functional_descriptor[5]; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; - /* Interface #2 CDC Data*/ - MXC_USB_interface_descriptor_t data_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; -} - -composite_config_descriptor = { - { - 0x09, /* bLength */ - 0x02, /* bDescriptorType = Config */ - 0x0062, /* wTotalLength(L/H) = 98 bytes */ - 0x03, /* bNumInterfaces */ - 0x01, /* bConfigurationValue */ - 0x02, /* iConfiguration */ /// - 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ - 0x01, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - /********** Interface #0 : Mass Storage Device **********/ - { - /* Second Interface Descriptor For MSC Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints (one for IN one for OUT) */ - 0x08, /* bInterfaceClass = Mass Storage (8) */ - 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ - 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ - 0x05, /* iInterface */ - }, - { - /* OUT Endpoint 1 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00 /* bInterval (N/A) */ - }, - /********** Interface Association Descriptor **********/ - { - 0x08, /* bLength */ - 0x0B, /* bDescriptorType */ - 0x01, /* bFirstInterface */ - 0x02, /* bInterfaceCount */ - 0x02, /* bFunctionClass */ - 0x02, /* bFunctionSubClass */ - 0x01, /* bFunctionProtocol */ - 0x00, /* iFunction */ - }, - /********** Interface #1 : COMM Interface **********/ - { - /* First Interface Descriptor For Comm Class Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x01, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x02, /* bInterfaceClass = Communications Interface Class (2) */ - 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ - 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ - 0x04, /* iInterface */ - }, - { - /* Header Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x00, /* bDescriptorSubtype */ - 0x10, 0x01, /* bcdCDC */ - }, - { - /* Call Management Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x01, /* bDescriptorSubtype */ - 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ - 0x01, /* bmDataInterface */ - }, - { - /* Abstract Control Management Functional Descriptor */ - 0x04, /* bFunctionalLength = 4 */ - 0x24, /* bDescriptorType */ - 0x02, /* bDescriptorSubtype */ - 0x02, /* bmCapabilities */ - }, - { - /* Union Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x06, /* bDescriptorSubtype */ - 0x00, /* bmMasterInterface */ - 0x01, /* bmSlaveInterface0 */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x84, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0040, /* wMaxPacketSize */ - 0xff, /* bInterval (milliseconds) */ - }, - { - /* Second Interface Descriptor For Data Interface */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType (Interface) */ - 0x02, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints */ - 0x0a, /* bInterfaceClass = Data Interface (10) */ - 0x00, /* bInterfaceSubClass = none (0) */ - 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ - 0x04, /* biInterface = No Text String (0) */ - }, - { - /* OUT Endpoint 1 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x05, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #3) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #0 Mass Storage Device */ - MXC_USB_interface_descriptor_t msc_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; - /* Interface Association Descriptor */ - uint8_t interface_association_descriptor[8]; - /* Interface #1 CDCACM Device */ - MXC_USB_interface_descriptor_t comm_interface_descriptor; - uint8_t header_functional_descriptor[5]; - uint8_t call_management_descriptor[5]; - uint8_t acm_functional_descriptor[4]; - uint8_t union_functional_descriptor[5]; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; - /* Interface #2 CDC Data*/ - MXC_USB_interface_descriptor_t data_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; -} - -composite_config_descriptor_hs = { - { - 0x09, /* bLength */ - 0x02, /* bDescriptorType = Config */ - 0x0062, /* wTotalLength(L/H) */ - 0x03, /* bNumInterfaces */ - 0x01, /* bConfigurationValue */ - 0x02, /* iConfiguration */ - 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - /********** Interface #0 : Mass Storage Device **********/ - { - /* Second Interface Descriptor For MSC Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints (one for IN one for OUT) */ - 0x08, /* bInterfaceClass = Mass Storage (8) */ - 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ - 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ - 0x05, /* iInterface */ - }, - { - /* OUT Endpoint 1 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x01, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x01 /* bInterval (N/A) */ - }, - /********** Interface Association Descriptor **********/ - { - 0x08, /* bLength */ - 0x0B, /* bDescriptorType */ - 0x01, /* bFirstInterface */ - 0x02, /* bInterfaceCount */ - 0x02, /* bFunctionClass */ - 0x02, /* bFunctionSubClass */ - 0x01, /* bFunctionProtocol */ - 0x00, /* iFunction */ - }, - /********** Interface #1 : COMM Interface **********/ - { - /* First Interface Descriptor For Comm Class Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x01, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x02, /* bInterfaceClass = Communications Interface Class (2) */ - 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ - 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ - 0x04, /* iInterface */ - }, - { - /* Header Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x00, /* bDescriptorSubtype */ - 0x10, 0x01, /* bcdCDC */ - }, - { - /* Call Management Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x01, /* bDescriptorSubtype */ - 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ - 0x01, /* bmDataInterface */ - }, - { - /* Abstract Control Management Functional Descriptor */ - 0x04, /* bFunctionalLength = 4 */ - 0x24, /* bDescriptorType */ - 0x02, /* bDescriptorSubtype */ - 0x02, /* bmCapabilities */ - }, - { - /* Union Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x06, /* bDescriptorSubtype */ - 0x00, /* bmMasterInterface */ - 0x01, /* bmSlaveInterface0 */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x84, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0200, /* wMaxPacketSize */ - 0xff, /* bInterval (milliseconds) */ - }, - { - /* Second Interface Descriptor For Data Interface */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType (Interface) */ - 0x02, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints */ - 0x0a, /* bInterfaceClass = Data Interface (10) */ - 0x00, /* bInterfaceSubClass = none (0) */ - 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ - 0x04, /* biInterface = No Text String (0) */ - }, - { - /* OUT Endpoint 1 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x05, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #3) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, -}; - -__attribute__((aligned(4))) uint8_t report_descriptor[] = { - 0x05, 0x01, /* Usage Page (generic desktop) */ - 0x09, 0x06, /* Usage (keyboard) */ - 0xa1, 0x01, /* Collection */ - 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ - 0x19, 0xe0, /* Usage Minimum = 224 */ - 0x29, 0xe7, /* Usage Maximum = 231 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x01, /* Logical Maximum = 1 */ - 0x75, 0x01, /* Report Size = 1 */ - 0x95, 0x08, /* Report Count = 8 */ - 0x81, 0x02, /* Input(Data,Variable,Absolute) */ - 0x95, 0x01, /* Report Count = 1 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x81, 0x01, /* Input(Constant) */ - 0x19, 0x00, /* Usage Minimum = 0 */ - 0x29, 0x65, /* Usage Maximum = 101 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x65, /* Logical Maximum = 101 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x95, 0x01, /* Report Count = 1 */ - 0x81, 0x00, /* Input(Data,Variable,Array) */ - 0xc0 /* End Collection */ -}; - -__attribute__((aligned(4))) uint8_t lang_id_desc[] = { - 0x04, /* bLength */ - 0x03, /* bDescriptorType */ - 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ -}; - -__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, - 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t prod_id_desc[] = { - 0x34, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', - 0, 'C', 0, 'o', 0, 'm', 0, 'p', 0, 'o', 0, 's', 0, 'i', 0, 't', 0, - 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, -}; - -__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ - 0x03, /* bDescriptorType */ - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, - '0', 0, '0', 0, '0', 0, '1', 0 }; - -__attribute__((aligned(4))) uint8_t cdcacm_func_desc[] = { - 0x20, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', - 0, ' ', 0, 'C', 0, 'D', 0, 'C', 0, 'A', 0, 'C', 0, 'M', 0, -}; - -__attribute__((aligned(4))) uint8_t msc_func_desc[] = { - 0x3A, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', 0, 'M', - 0, 'a', 0, 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, - 'g', 0, 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, -}; - -#endif // EXAMPLES_MAX32665_USB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/main.c b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/main.c deleted file mode 100644 index 9810619e4ff..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/main.c +++ /dev/null @@ -1,445 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file main.c - * @brief USB composite device with Mass Storage driver class and CDC-SCM driver class. -*/ - -#include -#include -#include "mxc_sys.h" -#include "mxc_delay.h" -#include "board.h" -#include "led.h" -#include "usb.h" -#include "usb_event.h" -#include "enumerate.h" -#include "cdc_acm.h" -#include "msc.h" -#include "descriptors.h" -#include "mscmem.h" -#include "gcr_regs.h" - -/* **** Definitions **** */ -#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS -#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) - -#define BUFFER_SIZE 64 - -#define STRINGIFY(x) #x -#define TOSTRING(x) STRINGIFY(x) - -/* **** Global Data **** */ -volatile int configured; -volatile int suspended; -volatile unsigned int event_flags; -int remote_wake_en; - -/* **** Function Prototypes **** */ - -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int eventCallback(maxusb_event_t evt, void *data); -static void usbAppSleep(void); -static void usbAppWakeup(void); -static int usbReadCallback(void); -int usbStartupCallback(); -int usbShutdownCallback(); -static void echoUSB(void); - -/* This EP assignment must match the Configuration Descriptor */ -static msc_cfg_t msc_cfg = { - 1, /* EP OUT */ - MXC_USBHS_MAX_PACKET, /* OUT max packet size */ - 2, /* EP IN */ - MXC_USBHS_MAX_PACKET, /* IN max packet size */ -}; - -static const msc_idstrings_t ids = { - "MAXIM", /* Vendor string. Maximum of 8 bytes */ - "MSC Example", /* Product string. Maximum of 16 bytes */ - "1.0" /* Version string. Maximum of 4 bytes */ -}; - -/* This EP assignment must match the Configuration Descriptor */ -static acm_cfg_t acm_cfg = { - 2, /* EP OUT */ - MXC_USBHS_MAX_PACKET, /* OUT max packet size */ - 3, /* EP IN */ - MXC_USBHS_MAX_PACKET, /* IN max packet size */ - 4, /* EP Notify */ - MXC_USBHS_MAX_PACKET, /* Notify max packet size */ -}; - -static volatile int usb_read_complete; - -/* Functions to control "disk" memory. See msc.h for definitions. */ -static const msc_mem_t mem = { mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, - mscmem_Size, mscmem_Read, mscmem_Write }; - -/** - * User-supplied function to delay usec micro-seconds - * - * @param[in] usec The usec time to delay. - */ -void delay_us(unsigned int usec) -{ - /* mxc_delay() takes unsigned long, so can't use it directly */ - MXC_Delay(usec); -} - -/* ************************************************************************** */ -int main(void) -{ - maxusb_cfg_options_t usb_opts; - - printf("\n\n***** " TOSTRING( - TARGET) " USB Composite Device (CDCACM and Mass Storage) Example *****\n"); - printf("Waiting for VBUS...\n"); - - /* Initialize state */ - configured = 0; - suspended = 0; - event_flags = 0; - remote_wake_en = 0; - - /* Start out in full speed */ - usb_opts.enable_hs = 1; /* 0:Full Speed 1:High Speed */ - usb_opts.delay_us = delay_us; /* Function which will be used for delays */ - usb_opts.init_callback = usbStartupCallback; - usb_opts.shutdown_callback = usbShutdownCallback; - - /* Initialize the usb module */ - if (MXC_USB_Init(&usb_opts) != 0) { - printf("usb_init() failed\n"); - while (1) {} - } - - /* Initialize the enumeration module */ - if (enum_init() != 0) { - printf("enum_init() failed\n"); - while (1) {} - } - - /* Register enumeration data */ - enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&composite_device_descriptor, 0); - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); - if (usb_opts.enable_hs) { - /* Two additional descriptors needed for high-speed operation */ - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor_hs, 0); - enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&composite_device_qualifier_descriptor, - 0); - } - enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); - enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); - enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); - enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); - enum_register_descriptor(ENUM_DESC_STRING, cdcacm_func_desc, 4); - enum_register_descriptor(ENUM_DESC_STRING, msc_func_desc, 5); - - /* Handle configuration */ - enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); - - /* Handle feature set/clear */ - enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); - enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); - - /* Initialize the class driver */ - if (msc_init(&composite_config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { - printf("msc_init() failed\n"); - while (1) {} - } - - if (acm_init(&composite_config_descriptor.comm_interface_descriptor) != 0) { - printf("acm_init() failed\n"); - while (1) {} - } - - /* Register callbacks */ - MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); - MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); - acm_register_callback(ACM_CB_READ_READY, usbReadCallback); - usb_read_complete = 0; - - /* Start with USB in low power mode */ - usbAppSleep(); - NVIC_EnableIRQ(USB_IRQn); - - /* Wait for events */ - while (1) { - echoUSB(); - - if (suspended || !configured) { - LED_Off(0); - } else { - LED_On(0); - } - - if (event_flags) { - /* Display events */ - if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); - printf("VBUS Disconnect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); - printf("VBUS Connect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); - printf("Bus Reset\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { /// - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); - printf("Bus Reset Done: %s speed\n", - (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); - printf("Suspended\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); - printf("Resume\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { - MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); - printf("Enumeration complete...\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { - MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); - printf("Remote Wakeup\n"); - } - } - } -} - -/******************************************************************************/ -static void echoUSB(void) -{ - int chars; - uint8_t buffer[BUFFER_SIZE]; - - if ((chars = acm_canread()) > 0) { - if (chars > BUFFER_SIZE) { - chars = BUFFER_SIZE; - } - - // Read the data from USB - if (acm_read(buffer, chars) != chars) { - printf("acm_read() failed\n"); - return; - } - - // Echo it back - if (acm_present()) { - if (acm_write(buffer, chars) != chars) { - printf("acm_write() failed\n"); - } - } - } -} - -/******************************************************************************/ -int usbStartupCallback() -{ - // Startup the HIRC96M clock if it's not on already - if (!(MXC_GCR->clkcn & MXC_F_GCR_CLKCN_HIRC96M_EN)) { - MXC_GCR->clkcn |= MXC_F_GCR_CLKCN_HIRC96M_EN; - - if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLKCN_HIRC96M_RDY) != E_NO_ERROR) { - return E_TIME_OUT; - } - } - - MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -int usbShutdownCallback() -{ - MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/* ************************************************************************** */ - -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - /* Confirm the configuration value */ - if (sud->wValue == composite_config_descriptor.config_descriptor.bConfigurationValue) { - // on++; - configured = 1; - MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); - if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { /// - msc_cfg.out_ep = composite_config_descriptor_hs.endpoint_descriptor_1.bEndpointAddress & - 0x7; - msc_cfg.out_maxpacket = - composite_config_descriptor_hs.endpoint_descriptor_1.wMaxPacketSize; - msc_cfg.in_ep = composite_config_descriptor_hs.endpoint_descriptor_2.bEndpointAddress & - 0x7; - msc_cfg.in_maxpacket = - composite_config_descriptor_hs.endpoint_descriptor_2.wMaxPacketSize; - } else { - msc_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_1.bEndpointAddress & - 0x7; - msc_cfg.out_maxpacket = - composite_config_descriptor.endpoint_descriptor_1.wMaxPacketSize; - msc_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_2.bEndpointAddress & - 0x7; - msc_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_2.wMaxPacketSize; - } - - acm_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_4.bEndpointAddress & 0x7; - acm_cfg.out_maxpacket = composite_config_descriptor.endpoint_descriptor_4.wMaxPacketSize; - acm_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_5.bEndpointAddress & 0x7; - acm_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_5.wMaxPacketSize; - acm_cfg.notify_ep = composite_config_descriptor.endpoint_descriptor_3.bEndpointAddress & - 0x7; - acm_cfg.notify_maxpacket = composite_config_descriptor.endpoint_descriptor_3.wMaxPacketSize; - - msc_configure(&msc_cfg); - return acm_configure(&acm_cfg); - /* Configure the device class */ - } else if (sud->wValue == 0) { - configured = 0; - msc_deconfigure(); - return acm_deconfigure(); - } - - return -1; -} - -/* ************************************************************************** */ - -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 1; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/* ************************************************************************** */ - -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 0; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/* ************************************************************************** */ - -static void usbAppSleep(void) -{ - /* TODO: Place low-power code here */ - suspended = 1; -} - -/* ************************************************************************** */ - -static void usbAppWakeup(void) -{ - /* TODO: Place low-power code here */ - suspended = 0; -} - -/* ************************************************************************** */ -static int eventCallback(maxusb_event_t evt, void *data) -{ - /* Set event flag */ - MXC_SETBIT(&event_flags, evt); - - switch (evt) { - case MAXUSB_EVENT_NOVBUS: - MXC_USB_EventDisable(MAXUSB_EVENT_BRST); - MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); - MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); - MXC_USB_Disconnect(); - configured = 0; - enum_clearconfig(); - msc_deconfigure(); - acm_deconfigure(); - usbAppSleep(); - break; - case MAXUSB_EVENT_VBUS: - MXC_USB_EventClear(MAXUSB_EVENT_BRST); - MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); /// - MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, eventCallback, NULL); /// - MXC_USB_EventClear(MAXUSB_EVENT_SUSP); - MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); - MXC_USB_Connect(); - usbAppSleep(); - break; - case MAXUSB_EVENT_BRST: - usbAppWakeup(); - enum_clearconfig(); - msc_deconfigure(); - acm_deconfigure(); - configured = 0; - suspended = 0; - break; - case MAXUSB_EVENT_BRSTDN: /// - if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor_hs, - 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor, 0); - } else { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor_hs, - 0); - } - break; - case MAXUSB_EVENT_SUSP: - usbAppSleep(); - break; - case MAXUSB_EVENT_DPACT: - usbAppWakeup(); - break; - default: - break; - } - - return 0; -} - -/* ************************************************************************** */ - -void USB_IRQHandler(void) -{ - MXC_USB_EventHandler(); -} - -/******************************************************************************/ -static int usbReadCallback(void) -{ - usb_read_complete = 1; - return 0; -} diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/mscmem.c b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/mscmem.c deleted file mode 100644 index 3e888d05ab5..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/mscmem.c +++ /dev/null @@ -1,313 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file mscmem.h - * @brief Memory routines used by the USB Mass Storage Class example. - * See the msc_mem_t structure in msc.h for function details. - * @details Functions are provided for using the internal RAM of the - * device or the external SPI flash memory. Use the SPIXF_DISK - * and RAM_DISK defines to select the desired memory at compile - * time. - */ - -#include "mscmem.h" -#include -#include -#include "Ext_Flash.h" -#include "spixf.h" - -/***** Definitions *****/ - -#define SPIXF_DISK 1 -#define RAM_DISK 0 - -#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ -#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ - -/***** Global Data *****/ - -/***** File Scope Variables *****/ - -static int initialized = 0; -static int running = 0; - -#if SPIXF_DISK - -#undef EXT_FLASH_BAUD -#define EXT_FLASH_BAUD 5000000 /* SPI clock rate to communicate with the external flash */ - -#define EXT_FLASH_SECTOR_SIZE 4096 /* Number of bytes in one sector of the external flash */ -#define EXT_FLASH_SECTOR_SIZE_SHIFT \ - 12 /* The shift value used to convert between addresses and block numbers */ -#define EXT_FLASH_NUM_SECTORS 2048 /* Total number of sectors in the external flash */ - -#define MXC_SPIXF_WIDTH Ext_Flash_DataLine_Single /*Number of data lines*/ - -#define LBA_PER_SECTOR (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) -#define INVALID_SECTOR \ - EXT_FLASH_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ - -/***** File Scope Variables *****/ -static uint32_t sectorNum = INVALID_SECTOR; -static uint8_t sector[EXT_FLASH_SECTOR_SIZE]; -static int sectorDirty = 0; - -/***** Function Prototypes *****/ -static uint32_t getSectorNum(uint32_t lba); -static uint32_t getSectorAddr(uint32_t lba); -static uint32_t getSector(uint32_t num); - -/******************************************************************************/ -static uint32_t getSectorNum(uint32_t lba) -{ - /* Absolute_address = lba * LBA_SIZE */ - /* Sector_num = Absolute_address / EXT_FLASH_SECTOR_SIZE */ - /* Sector_num = lba * 512 / 4096 */ - return lba >> (EXT_FLASH_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); -} - -/******************************************************************************/ -static uint32_t getSectorAddr(uint32_t lba) -{ - /* eight 512 byte blocks in each sector */ - return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; -} - -/******************************************************************************/ -static uint32_t getSector(uint32_t num) -{ - /* New sector requested? */ - if (sectorNum != num) { - /* Is the current sector real? */ - if (sectorNum != INVALID_SECTOR) { - /* Was it written to after it was read from memory? */ - if (sectorDirty) { - /* Erase the old data. */ - Ext_Flash_Erase(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, Ext_Flash_Erase_4K); - /* Write the new */ - Ext_Flash_Program_Page(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, - EXT_FLASH_SECTOR_SIZE, MXC_SPIXF_WIDTH); - /* Mark data as clean */ - sectorDirty = 0; - } - } - - /* Requesting a new valid sector? */ - if (num != INVALID_SECTOR) { - Ext_Flash_Read(num << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, EXT_FLASH_SECTOR_SIZE, - MXC_SPIXF_WIDTH); - sectorDirty = 0; - sectorNum = num; - } - } - - return 0; -} - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - MXC_SPIXF_SetSPIFrequency(EXT_FLASH_BAUD); - Ext_Flash_Init(); - Ext_Flash_Reset(); - - if (MXC_SPIXF_WIDTH == Ext_Flash_DataLine_Quad) { - Ext_Flash_Quad(1); - } else { - Ext_Flash_Quad(0); - } - - initialized = 1; - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - /* Get number of 512 byte chunks the external flash contains. */ - return (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) * EXT_FLASH_NUM_SECTORS; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to external flash sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from external flash */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(buffer, sector + addr, LBA_SIZE); - - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to external flash sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from external flash */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(sector + addr, buffer, LBA_SIZE); - sectorDirty = 1; - - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Turn on the external flash if it is not already. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the initialization succeeded. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* TODO - could shut down XIPF interface here. */ - - /* Flush the currently cached sector if necessary. */ - if (getSector(INVALID_SECTOR)) { - return 1; - } - - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#elif RAM_DISK - -#define NUM_PAGES 0x100 -static uint8_t mem[NUM_PAGES][LBA_SIZE]; - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - initialized = 1; -#if (ERASE_MEMORY_ON_INIT) - memset(mem, 0, sizeof(mem)); -#endif - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - return NUM_PAGES; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(buffer, mem[lba], LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(mem[lba], buffer, LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Not much to do for this implementation. The RAM is always ready. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the RAM has been initialized. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* Nothing to do for this implementation. All data is written as it is */ - /* received so there are no pending writes that need to be flushed. */ - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#else -#error "You must assign either RAM_DISK or SPIXF_DISK to 1." -#endif diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/mscmem.h b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/mscmem.h deleted file mode 100644 index c01c52ddd70..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/mscmem.h +++ /dev/null @@ -1,85 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file mscmem.h - * @brief Memory routines used by the USB Mass Storage Class example. - * See the msc_mem_t structure in msc.h for function details. - */ - -#ifndef EXAMPLES_MAX32665_USB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ -#define EXAMPLES_MAX32665_USB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ - -#include - -/* **** Definitions **** */ -#define ERASE_MEMORY_ON_INIT \ - 1 /* Configuration option to clear the memory (to 0s) on initialization. */ -/* Use 1 to clear or 0 to leave untouched. */ -/** - * @brief Perform any initialization necessary to prepare the memory for reading/writing data. - * @returns 0 if initialization is successful, non-zero if an error occurred. - */ -int mscmem_Init(void); - -/** - * @brief Activates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Start(void); - -/** - * @brief Deactivates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Stop(void); - -/** - * @brief Reports the total size of the mass-storage memory. - * @returns The number of 512 byte blocks contained in the memory. - */ -uint32_t mscmem_Size(void); - -/** - * @brief Reads 512 bytes of data from the memory. - * @param lba The index of the 512 byte block to read. - * @param buffer A byte array of at least 512 bytes to hold the values read. - * @returns 0 if reading is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Read(uint32_t lba, uint8_t *buffer); - -/** - * @brief Writes 512 bytes of data to the memory. - * @param lba The index of the 512 byte block to write. - * @param buffer A byte array of at least 512 bytes holding the values to write. - * @returns 0 if writing is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Write(uint32_t lba, uint8_t *buffer); - -/** - * @brief Checks if the memory is ready to be read/written. - * @returns non-zero if the memory is ready, 0 otherwise. - */ -int mscmem_Ready(void); - -#endif // EXAMPLES_MAX32665_USB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/project.mk b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/project.mk deleted file mode 100644 index d6d13c013c2..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_CDC/project.mk +++ /dev/null @@ -1,20 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -# ********************************************************** - -# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable MAXUSB library -LIB_MAXUSB = 1 - -ifneq ($(BOARD),EvKit_V1) -$(error ERR_NOTSUPPORTED: This example requires an external flash IC that is only available for the MAX32665EVKIT) -endif diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.vscode/README.md b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.vscode/README.md deleted file mode 100755 index 90fbcefc65d..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.vscode/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# VSCode-Maxim - -_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ - -## Quick Links - -* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) - -## Introduction - -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). - -The following features are supported: - -* Code editing with intellisense down to the register level -* Code compilation with the ability to easily re-target a project for different microcontrollers and boards -* Flashing programs -* GUI and command-line debugging - -## Dependencies - -* [Visual Studio Code](https://code.visualstudio.com/) - * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) -* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) - -## Installation - -Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. - -See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. - -## Usage - -See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. - -## Issue Tracker - -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. - -New issues should contain _at minimum_ the following information: - -* Visual Studio Code version #s (see `Help -> About`) -* C/C++ Extension version # -* Target microcontroller and evaluation platform -* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.vscode/settings.json b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.vscode/settings.json deleted file mode 100755 index a090f08b377..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/.vscode/settings.json +++ /dev/null @@ -1,94 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32665", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32665.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/Makefile b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/Makefile deleted file mode 100644 index a9dc1157557..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32665 -TARGET_UC := MAX32665 -TARGET_LC := max32665 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/descriptors.h b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/descriptors.h deleted file mode 100644 index f7d57800422..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/descriptors.h +++ /dev/null @@ -1,216 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -#ifndef EXAMPLES_MAX32665_USB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ -#define EXAMPLES_MAX32665_USB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ - -#include -#include "usb.h" -#include "hid_kbd.h" - -MXC_USB_device_descriptor_t __attribute__((aligned(4))) composite_device_descriptor = { - 0x12, /* bLength */ - 0x01, /* bDescriptorType = Device */ - 0x0200, - /* bcdUSB USB spec rev (BCD) */ /// - 0x00, /* bDeviceClass = code specified by interface descriptors */ - 0x00, /* bDeviceSubClass = code specified by interface descriptors */ - 0x00, /* bDeviceProtocol = code specified by interface descriptors */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x0B6A, /* idVendor (Maxim Integrated) */ - 0x003C, - /* idProduct */ /// - 0x0100, /* bcdDevice */ - 0x01, /* iManufacturer Descriptor ID */ - 0x02, /* iProduct Descriptor ID */ - 0x03, /* iSerialNumber Descriptor ID */ - 0x01 /* bNumConfigurations */ -}; - -/* Device qualifier needed for high-speed operation */ -MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) -composite_device_qualifier_descriptor = { - 0x0A, /* bLength = 10 */ - 0x01, /* bDescriptorType = Device Qualifier */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x00, /* bDeviceClass = Unspecified */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x01, /* bNumConfigurations */ - 0x00 /* Reserved, must be 0 */ -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #1 HID Keyboard */ - MXC_USB_interface_descriptor_t hid_interface_descriptor; - hid_descriptor_t hid_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; - /* Interface #2 Mass Storage Device */ - MXC_USB_interface_descriptor_t msc_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; -} - -composite_config_descriptor = { - { - 0x09, /* bLength */ - 0x02, /* bDescriptorType = Config */ - 0x0039, /* wTotalLength(L/H) = 57 bytes */ - 0x02, /* bNumInterfaces */ - 0x01, /* bConfigurationValue */ - 0x02, /* iConfiguration */ - 0xA0, /* bmAttributes (bus-powered, remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - /********** Interface #0 : HID Keyboard **********/ - { - /* First Interface Descriptor */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x03, /* bInterfaceClass = HID */ - 0x00, /* bInterfaceSubClass */ - 0x00, /* bInterfaceProtocol */ - 0x04, /* iInterface */ - }, - { - /* HID Descriptor */ - 0x09, /* bFunctionalLength */ - 0x21, /* bDescriptorType = HID */ - 0x0110, /* bcdHID Rev 1.1 */ - 0x00, /* bCountryCode */ - 0x01, /* bNumDescriptors */ - 0x22, /* bDescriptorType = Report */ - 0x002b, /* wDescriptorLength */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0040, /* wMaxPacketSize */ - 0x0a /* bInterval (milliseconds) */ - }, - /********** Interface #1 : Mass Storage Device **********/ - { - /* Second Interface Descriptor For MSC Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x01, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints (one for IN one for OUT) */ - 0x08, /* bInterfaceClass = Mass Storage (8) */ - 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ - 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ - 0x05, /* iInterface */ - }, - { - /* OUT Endpoint 1 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00 /* bInterval (N/A) */ - }, -}; - -__attribute__((aligned(4))) uint8_t report_descriptor[] = { - 0x05, 0x01, /* Usage Page (generic desktop) */ - 0x09, 0x06, /* Usage (keyboard) */ - 0xa1, 0x01, /* Collection */ - 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ - 0x19, 0xe0, /* Usage Minimum = 224 */ - 0x29, 0xe7, /* Usage Maximum = 231 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x01, /* Logical Maximum = 1 */ - 0x75, 0x01, /* Report Size = 1 */ - 0x95, 0x08, /* Report Count = 8 */ - 0x81, 0x02, /* Input(Data,Variable,Absolute) */ - 0x95, 0x01, /* Report Count = 1 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x81, 0x01, /* Input(Constant) */ - 0x19, 0x00, /* Usage Minimum = 0 */ - 0x29, 0x65, /* Usage Maximum = 101 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x65, /* Logical Maximum = 101 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x95, 0x01, /* Report Count = 1 */ - 0x81, 0x00, /* Input(Data,Variable,Array) */ - 0xc0 /* End Collection */ -}; - -__attribute__((aligned(4))) uint8_t lang_id_desc[] = { - 0x04, /* bLength */ - 0x03, /* bDescriptorType */ - 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ -}; - -__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, - 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t prod_id_desc[] = { - 0x34, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', - 0, 'C', 0, 'o', 0, 'm', 0, 'p', 0, 'o', 0, 's', 0, 'i', 0, 't', 0, - 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, -}; - -__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ - 0x03, /* bDescriptorType */ - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, - '0', 0, '0', 0, '0', 0, '1', 0 }; - -__attribute__((aligned(4))) uint8_t hidkbd_func_desc[] = { - 0x24, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', - 0, 'K', 0, 'e', 0, 'y', 0, 'b', 0, 'o', 0, 'a', 0, 'r', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t msc_func_desc[] = { - 0x3A, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', 0, 'M', - 0, 'a', 0, 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, - 'g', 0, 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, -}; - -#endif // EXAMPLES_MAX32665_USB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/main.c b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/main.c deleted file mode 100644 index a75bf695818..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/main.c +++ /dev/null @@ -1,405 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file main.c - * @brief USB composite device with Mass Storage driver class and HID driver class. -*/ - -#include -#include -#include "gcr_regs.h" -#include "mxc_sys.h" -#include "led.h" -#include "pb.h" -#include "mxc_delay.h" -#include "usb.h" -#include "usb_event.h" -#include "enumerate.h" -#include "hid_kbd.h" -#include "msc.h" -#include "descriptors.h" -#include "mscmem.h" - -/* **** Definitions **** */ -#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS -#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) - -#define STRINGIFY(x) #x -#define TOSTRING(x) STRINGIFY(x) - -/* **** Global Data **** */ -volatile int configured; -volatile int suspended; -volatile unsigned int event_flags; -int remote_wake_en; - -/* This EP assignment must match the Configuration Descriptor */ -static msc_cfg_t msc_cfg = { - 1, /* EP OUT */ - MXC_USBHS_MAX_PACKET, /* OUT max packet size */ - 2, /* EP IN */ - MXC_USBHS_MAX_PACKET, /* IN max packet size */ -}; - -static const msc_idstrings_t ids = { - "MAXIM", /* Vendor string. Maximum of 8 bytes */ - "MSC Example", /* Product string. Maximum of 16 bytes */ - "1.0" /* Version string. Maximum of 4 bytes */ -}; - -/* Functions to control "disk" memory. See msc.h for definitions. */ -static const msc_mem_t mem = { - mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, mscmem_Size, mscmem_Read, mscmem_Write, -}; - -/* **** Function Prototypes **** */ -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int eventCallback(maxusb_event_t evt, void *data); -static void usbAppSleep(void); -static void usbAppWakeup(void); -static void buttonCallback(void *pb); -int usbStartupCallback(); -int usbShutdownCallback(); - -/** - * User-supplied function to delay usec micro-seconds - * - * @param[in] usec The usec time to delay. - */ -void delay_us(unsigned int usec) -{ - /* mxc_delay() takes unsigned long, so can't use it directly */ - MXC_Delay(usec); -} - -/* ************************************************************************** */ - -void USB_IRQHandler(void) -{ - MXC_USB_EventHandler(); -} - -/* ************************************************************************** */ -int main(void) -{ - maxusb_cfg_options_t usb_opts; - - printf("\n\n***** " TOSTRING( - TARGET) " USB Composite Device (Keyboard and Mass Storage) Example *****\n"); - printf("Waiting for VBUS...\n"); - - /* Initialize state */ - configured = 0; - suspended = 0; - event_flags = 0; - remote_wake_en = 0; - - /* Start out in full speed */ - usb_opts.enable_hs = 0; - usb_opts.delay_us = delay_us; /* Function which will be used for delays */ - usb_opts.init_callback = usbStartupCallback; - usb_opts.shutdown_callback = usbShutdownCallback; - - /* Initialize the usb module */ - if (MXC_USB_Init(&usb_opts) != 0) { - printf("usb_init() failed\n"); - - while (1) {} - } - - /* Initialize the enumeration module */ - if (enum_init() != 0) { - printf("enum_init() failed\n"); - - while (1) {} - } - - /* Register enumeration data */ - enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&composite_device_descriptor, 0); - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); - enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); - enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); - enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); - enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); - enum_register_descriptor(ENUM_DESC_STRING, hidkbd_func_desc, 4); - enum_register_descriptor(ENUM_DESC_STRING, msc_func_desc, 5); - - /* Handle configuration */ - enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); - - /* Handle feature set/clear */ - enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); - enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); - - /* Initialize the class driver */ - if (msc_init(&composite_config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { - printf("msc_init() failed\n"); - - while (1) {} - } - - if (hidkbd_init(&composite_config_descriptor.hid_interface_descriptor, - &composite_config_descriptor.hid_descriptor, report_descriptor) != 0) { - printf("hidkbd_init() failed\n"); - - while (1) {} - } - - /* Register callbacks */ - MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); - MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); - - /* Register callback for keyboard events */ - if (PB_RegisterCallback(0, buttonCallback) != E_NO_ERROR) { - printf("PB_RegisterCallback() failed\n"); - - while (1) {} - } - - /* Start with USB in low power mode */ - usbAppSleep(); - NVIC_EnableIRQ(USB_IRQn); - - /* Wait for events */ - while (1) { - if (suspended || !configured) { - LED_Off(0); - } else { - LED_On(0); - } - - if (event_flags) { - /* Display events */ - if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); - printf("VBUS Disconnect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); - printf("VBUS Connect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); - printf("Bus Reset\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); - printf("Suspended\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); - printf("Resume\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { - MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); - printf("Enumeration complete. Press SW2 to send character.\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { - MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); - printf("Remote Wakeup\n"); - } - } - } -} - -/******************************************************************************/ -int usbStartupCallback() -{ - // Startup the HIRC96M clock if it's not on already - if (!(MXC_GCR->clkcn & MXC_F_GCR_CLKCN_HIRC96M_EN)) { - MXC_GCR->clkcn |= MXC_F_GCR_CLKCN_HIRC96M_EN; - - if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLKCN_HIRC96M_RDY) != E_NO_ERROR) { - return E_TIME_OUT; - } - } - - MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -int usbShutdownCallback() -{ - MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/* ************************************************************************** */ - -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 1; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/* ************************************************************************** */ - -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 0; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/* ************************************************************************** */ - -static void usbAppSleep(void) -{ - /* TODO: Place low-power code here */ - suspended = 1; -} - -/* ************************************************************************** */ - -static void usbAppWakeup(void) -{ - /* TODO: Place low-power code here */ - suspended = 0; -} - -/* ************************************************************************** */ - -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - /* Confirm the configuration value */ - if (sud->wValue == composite_config_descriptor.config_descriptor.bConfigurationValue) { - // on++; - configured = 1; - MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); - msc_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_1.bEndpointAddress & 0x7; - msc_cfg.out_maxpacket = composite_config_descriptor.endpoint_descriptor_1.wMaxPacketSize; - msc_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_2.bEndpointAddress & 0x7; - msc_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_2.wMaxPacketSize; - - msc_configure(&msc_cfg); - return hidkbd_configure(composite_config_descriptor.endpoint_descriptor_3.bEndpointAddress & - USB_EP_NUM_MASK); - } else if (sud->wValue == 0) { - configured = 0; - msc_deconfigure(); - return hidkbd_deconfigure(); - } - - return -1; -} - -/* ************************************************************************** */ - -static int eventCallback(maxusb_event_t evt, void *data) -{ - /* Set event flag */ - MXC_SETBIT(&event_flags, evt); - - switch (evt) { - case MAXUSB_EVENT_NOVBUS: - MXC_USB_EventDisable(MAXUSB_EVENT_BRST); - MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); - MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); - MXC_USB_Disconnect(); - configured = 0; - enum_clearconfig(); - hidkbd_deconfigure(); - msc_deconfigure(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_VBUS: - MXC_USB_EventClear(MAXUSB_EVENT_BRST); - MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_SUSP); - MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); - MXC_USB_Connect(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_BRST: - usbAppWakeup(); - enum_clearconfig(); - hidkbd_deconfigure(); - msc_deconfigure(); - configured = 0; - suspended = 0; - break; - - case MAXUSB_EVENT_SUSP: - usbAppSleep(); - break; - - case MAXUSB_EVENT_DPACT: - usbAppWakeup(); - break; - - default: - break; - } - - return 0; -} - -/* ************************************************************************** */ - -void buttonCallback(void *pb) -{ - static const uint8_t chars[] = "Maxim Integrated\n"; - static int i = 0; - int count = 0; - int button_pressed = 0; - - //determine if interrupt triggered by bounce or a true button press - while (PB_Get(0) && !button_pressed) { - count++; - - if (count > 1000) { - button_pressed = 1; - } - } - - if (button_pressed) { - LED_Toggle(0); - - if (configured) { - if (suspended && remote_wake_en) { - /* The bus is suspended. Wake up the host */ - suspended = 0; - usbAppWakeup(); - MXC_USB_RemoteWakeup(); - MXC_SETBIT(&event_flags, EVENT_REMOTE_WAKE); - } else { - if (i >= (sizeof(chars) - 1)) { - i = 0; - } - - hidkbd_keypress(chars[i++]); - } - } - } -} diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/mscmem.c b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/mscmem.c deleted file mode 100644 index 3e888d05ab5..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/mscmem.c +++ /dev/null @@ -1,313 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file mscmem.h - * @brief Memory routines used by the USB Mass Storage Class example. - * See the msc_mem_t structure in msc.h for function details. - * @details Functions are provided for using the internal RAM of the - * device or the external SPI flash memory. Use the SPIXF_DISK - * and RAM_DISK defines to select the desired memory at compile - * time. - */ - -#include "mscmem.h" -#include -#include -#include "Ext_Flash.h" -#include "spixf.h" - -/***** Definitions *****/ - -#define SPIXF_DISK 1 -#define RAM_DISK 0 - -#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ -#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ - -/***** Global Data *****/ - -/***** File Scope Variables *****/ - -static int initialized = 0; -static int running = 0; - -#if SPIXF_DISK - -#undef EXT_FLASH_BAUD -#define EXT_FLASH_BAUD 5000000 /* SPI clock rate to communicate with the external flash */ - -#define EXT_FLASH_SECTOR_SIZE 4096 /* Number of bytes in one sector of the external flash */ -#define EXT_FLASH_SECTOR_SIZE_SHIFT \ - 12 /* The shift value used to convert between addresses and block numbers */ -#define EXT_FLASH_NUM_SECTORS 2048 /* Total number of sectors in the external flash */ - -#define MXC_SPIXF_WIDTH Ext_Flash_DataLine_Single /*Number of data lines*/ - -#define LBA_PER_SECTOR (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) -#define INVALID_SECTOR \ - EXT_FLASH_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ - -/***** File Scope Variables *****/ -static uint32_t sectorNum = INVALID_SECTOR; -static uint8_t sector[EXT_FLASH_SECTOR_SIZE]; -static int sectorDirty = 0; - -/***** Function Prototypes *****/ -static uint32_t getSectorNum(uint32_t lba); -static uint32_t getSectorAddr(uint32_t lba); -static uint32_t getSector(uint32_t num); - -/******************************************************************************/ -static uint32_t getSectorNum(uint32_t lba) -{ - /* Absolute_address = lba * LBA_SIZE */ - /* Sector_num = Absolute_address / EXT_FLASH_SECTOR_SIZE */ - /* Sector_num = lba * 512 / 4096 */ - return lba >> (EXT_FLASH_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); -} - -/******************************************************************************/ -static uint32_t getSectorAddr(uint32_t lba) -{ - /* eight 512 byte blocks in each sector */ - return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; -} - -/******************************************************************************/ -static uint32_t getSector(uint32_t num) -{ - /* New sector requested? */ - if (sectorNum != num) { - /* Is the current sector real? */ - if (sectorNum != INVALID_SECTOR) { - /* Was it written to after it was read from memory? */ - if (sectorDirty) { - /* Erase the old data. */ - Ext_Flash_Erase(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, Ext_Flash_Erase_4K); - /* Write the new */ - Ext_Flash_Program_Page(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, - EXT_FLASH_SECTOR_SIZE, MXC_SPIXF_WIDTH); - /* Mark data as clean */ - sectorDirty = 0; - } - } - - /* Requesting a new valid sector? */ - if (num != INVALID_SECTOR) { - Ext_Flash_Read(num << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, EXT_FLASH_SECTOR_SIZE, - MXC_SPIXF_WIDTH); - sectorDirty = 0; - sectorNum = num; - } - } - - return 0; -} - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - MXC_SPIXF_SetSPIFrequency(EXT_FLASH_BAUD); - Ext_Flash_Init(); - Ext_Flash_Reset(); - - if (MXC_SPIXF_WIDTH == Ext_Flash_DataLine_Quad) { - Ext_Flash_Quad(1); - } else { - Ext_Flash_Quad(0); - } - - initialized = 1; - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - /* Get number of 512 byte chunks the external flash contains. */ - return (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) * EXT_FLASH_NUM_SECTORS; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to external flash sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from external flash */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(buffer, sector + addr, LBA_SIZE); - - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to external flash sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from external flash */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(sector + addr, buffer, LBA_SIZE); - sectorDirty = 1; - - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Turn on the external flash if it is not already. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the initialization succeeded. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* TODO - could shut down XIPF interface here. */ - - /* Flush the currently cached sector if necessary. */ - if (getSector(INVALID_SECTOR)) { - return 1; - } - - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#elif RAM_DISK - -#define NUM_PAGES 0x100 -static uint8_t mem[NUM_PAGES][LBA_SIZE]; - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - initialized = 1; -#if (ERASE_MEMORY_ON_INIT) - memset(mem, 0, sizeof(mem)); -#endif - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - return NUM_PAGES; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(buffer, mem[lba], LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(mem[lba], buffer, LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Not much to do for this implementation. The RAM is always ready. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the RAM has been initialized. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* Nothing to do for this implementation. All data is written as it is */ - /* received so there are no pending writes that need to be flushed. */ - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#else -#error "You must assign either RAM_DISK or SPIXF_DISK to 1." -#endif diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/mscmem.h b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/mscmem.h deleted file mode 100644 index 41727b50274..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/mscmem.h +++ /dev/null @@ -1,45 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file mscmem.h - * @brief Memory routines used by the USB Mass Storage Class example. - * See the msc_mem_t structure in msc.h for function details. - */ - -#ifndef EXAMPLES_MAX32665_USB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ -#define EXAMPLES_MAX32665_USB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ - -#include - -#define ERASE_MEMORY_ON_INIT \ - 1 /* Configuration option to clear the memory (to 0s) on initialization. */ -/* Use 1 to clear or 0 to leave untouched. */ - -int mscmem_Init(void); -int mscmem_Start(void); -int mscmem_Stop(void); -int mscmem_Ready(); -uint32_t mscmem_Size(void); -int mscmem_Read(uint32_t lba, uint8_t *buffer); -int mscmem_Write(uint32_t lba, uint8_t *buffer); - -#endif // EXAMPLES_MAX32665_USB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ diff --git a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/project.mk b/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/project.mk deleted file mode 100644 index 438c96809d2..00000000000 --- a/Examples/MAX32665/USB/USB_CompositeDevice_MSC_HID/project.mk +++ /dev/null @@ -1,21 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -# ********************************************************** - -# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable MAXUSB library -LIB_MAXUSB = 1 - -ifneq ($(BOARD),EvKit_V1) -$(error ERR_NOTSUPPORTED: This example requires an external flash IC that is only available for the MAX32665EVKIT) -endif - diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/.vscode/README.md b/Examples/MAX32665/USB/USB_HIDKeyboard/.vscode/README.md deleted file mode 100755 index 90fbcefc65d..00000000000 --- a/Examples/MAX32665/USB/USB_HIDKeyboard/.vscode/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# VSCode-Maxim - -_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ - -## Quick Links - -* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) - -## Introduction - -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). - -The following features are supported: - -* Code editing with intellisense down to the register level -* Code compilation with the ability to easily re-target a project for different microcontrollers and boards -* Flashing programs -* GUI and command-line debugging - -## Dependencies - -* [Visual Studio Code](https://code.visualstudio.com/) - * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) -* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) - -## Installation - -Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. - -See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. - -## Usage - -See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. - -## Issue Tracker - -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. - -New issues should contain _at minimum_ the following information: - -* Visual Studio Code version #s (see `Help -> About`) -* C/C++ Extension version # -* Target microcontroller and evaluation platform -* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/.vscode/settings.json b/Examples/MAX32665/USB/USB_HIDKeyboard/.vscode/settings.json deleted file mode 100755 index a090f08b377..00000000000 --- a/Examples/MAX32665/USB/USB_HIDKeyboard/.vscode/settings.json +++ /dev/null @@ -1,94 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32665", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32665.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/Makefile b/Examples/MAX32665/USB/USB_HIDKeyboard/Makefile deleted file mode 100644 index a9dc1157557..00000000000 --- a/Examples/MAX32665/USB/USB_HIDKeyboard/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32665 -TARGET_UC := MAX32665 -TARGET_LC := max32665 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/descriptors.h b/Examples/MAX32665/USB/USB_HIDKeyboard/descriptors.h deleted file mode 100644 index 9cf8c7b6022..00000000000 --- a/Examples/MAX32665/USB/USB_HIDKeyboard/descriptors.h +++ /dev/null @@ -1,143 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -#ifndef EXAMPLES_MAX32665_USB_USB_HIDKEYBOARD_DESCRIPTORS_H_ -#define EXAMPLES_MAX32665_USB_USB_HIDKEYBOARD_DESCRIPTORS_H_ - -#include -#include "usb.h" -#include "hid_kbd.h" - -MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { - 0x12, /* bLength */ - 0x01, /* bDescriptorType = Device */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x00, /* bDeviceClass = Unspecified */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x0B6A, /* idVendor (Maxim Integrated) */ - 0x003C, /* idProduct */ - 0x0100, /* bcdDevice */ - 0x01, /* iManufacturer Descriptor ID */ - 0x02, /* iProduct Descriptor ID */ - 0x03, /* iSerialNumber Descriptor ID */ - 0x01 /* bNumConfigurations */ -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - MXC_USB_interface_descriptor_t interface_descriptor; - hid_descriptor_t hid_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor; -} config_descriptor = { { - 0x09, /* bLength */ - 0x02, /* bDescriptorType = Config */ - 0x0022, /* wTotalLength(L/H) = 34 bytes */ - 0x01, /* bNumInterfaces */ - 0x01, /* bConfigurationValue */ - 0x00, /* iConfiguration */ - 0xA0, /* bmAttributes (bus-powered, remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - { - /* First Interface Descriptor */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x03, /* bInterfaceClass = HID */ - 0x00, /* bInterfaceSubClass */ - 0x00, /* bInterfaceProtocol */ - 0x00, /* iInterface */ - }, - { - /* HID Descriptor */ - 0x09, /* bFunctionalLength */ - 0x21, /* bDescriptorType = HID */ - 0x0110, /* bcdHID Rev 1.1 */ - 0x00, /* bCountryCode */ - 0x01, /* bNumDescriptors */ - 0x22, /* bDescriptorType = Report */ - 0x002b, /* wDescriptorLength */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0040, /* wMaxPacketSize */ - 0x0a /* bInterval (milliseconds) */ - } }; - -__attribute__((aligned(4))) uint8_t report_descriptor[] = { - 0x05, 0x01, /* Usage Page (generic desktop) */ - 0x09, 0x06, /* Usage (keyboard) */ - 0xa1, 0x01, /* Collection */ - 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ - 0x19, 0xe0, /* Usage Minimum = 224 */ - 0x29, 0xe7, /* Usage Maximum = 231 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x01, /* Logical Maximum = 1 */ - 0x75, 0x01, /* Report Size = 1 */ - 0x95, 0x08, /* Report Count = 8 */ - 0x81, 0x02, /* Input(Data,Variable,Absolute) */ - 0x95, 0x01, /* Report Count = 1 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x81, 0x01, /* Input(Constant) */ - 0x19, 0x00, /* Usage Minimum = 0 */ - 0x29, 0x65, /* Usage Maximum = 101 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x65, /* Logical Maximum = 101 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x95, 0x01, /* Report Count = 1 */ - 0x81, 0x00, /* Input(Data,Variable,Array) */ - 0xc0 /* End Collection */ -}; - -__attribute__((aligned(4))) uint8_t lang_id_desc[] = { - 0x04, /* bLength */ - 0x03, /* bDescriptorType */ - 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ -}; - -__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, - 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t prod_id_desc[] = { - 0x2c, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', 0, ' ', 0, 'H', 0, 'I', 0, - 'D', 0, ' ', 0, 'K', 0, 'e', 0, 'y', 0, 'b', 0, 'o', 0, 'a', 0, 'r', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x20, /* bLength */ - 0x03, /* bDescriptorType */ - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, - '0', 0, '0', 0, '0', 0, '1', 0 }; - -#endif // EXAMPLES_MAX32665_USB_USB_HIDKEYBOARD_DESCRIPTORS_H_ diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/main.c b/Examples/MAX32665/USB/USB_HIDKeyboard/main.c deleted file mode 100644 index b930486d3cc..00000000000 --- a/Examples/MAX32665/USB/USB_HIDKeyboard/main.c +++ /dev/null @@ -1,361 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file main.c - * @brief Demonstrates how to configure a the USB device controller as a HID keyboard class device - * @details The EvKit should enumerate as a HID Keyboard device after loading the project and - * attaching a cable from the PC to the USB connector on the Evaluation Kit. - * 1. LED0 (P2.17) will illuminate once enumeration and configuration is complete. - * 2. Open a text editor on the PC host and place cursor in edit box. - * 3. Pressing pushbutton SW1 (P0.16) will cause a message to be typed in on a virtual keyboard one character at a time. - * - */ - -#include -#include -#include "led.h" -#include "pb.h" -#include "mxc_delay.h" -#include "usb.h" -#include "usb_event.h" -#include "enumerate.h" -#include "hid_kbd.h" -#include "descriptors.h" -#include "gcr_regs.h" -#include "mxc_sys.h" - -/***** Definitions *****/ -#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS -#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) - -#define STRINGIFY(x) #x -#define TOSTRING(x) STRINGIFY(x) - -/***** Global Data *****/ -int remoteWake; -volatile int configured; -volatile int suspended; -volatile unsigned int evtFlags; - -/***** Function Prototypes *****/ -int usbStartupCallback(); -int usbShutdownCallback(); -void usDelay(unsigned int usec); -static void usbAppSleep(void); -static void usbAppWakeup(void); -static void buttonCallback(void *pb); -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int eventCallback(maxusb_event_t evt, void *data); - -/******************************************************************************/ -void USB_IRQHandler(void) -{ - MXC_USB_EventHandler(); -} - -/******************************************************************************/ -int main(void) -{ - maxusb_cfg_options_t usb_opts; - - printf("\n\n***** " TOSTRING(TARGET) " USB HID Keyboard Example *****\n"); - printf("Waiting for VBUS...\n"); - - /* Initialize state */ - configured = 0; - suspended = 0; - evtFlags = 0; - remoteWake = 0; - - /* Start out in full speed */ - usb_opts.enable_hs = 0; - usb_opts.delay_us = usDelay; /* Function which will be used for delays */ - usb_opts.init_callback = usbStartupCallback; - usb_opts.shutdown_callback = usbShutdownCallback; - - /* Initialize the usb module */ - if (MXC_USB_Init(&usb_opts) != 0) { - printf("MXC_USB_Init() failed\n"); - - while (1) {} - } - - /* Initialize the enumeration module */ - if (enum_init() != 0) { - printf("enum_init() failed\n"); - - while (1) {} - } - - /* Register enumeration data */ - enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); - enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); - enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); - enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); - enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); - - /* Handle configuration */ - enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); - - /* Handle feature set/clear */ - enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); - enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); - - /* Initialize the class driver */ - if (hidkbd_init(&config_descriptor.interface_descriptor, &config_descriptor.hid_descriptor, - report_descriptor) != 0) { - printf("hidkbd_init() failed\n"); - - while (1) {} - } - - /* Register callbacks */ - MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); - MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); - - /* Register callback for keyboard events */ - if (PB_RegisterCallback(0, buttonCallback) != E_NO_ERROR) { - printf("PB_RegisterCallback() failed\n"); - - while (1) {} - } - - /* Start with USB in low power mode */ - usbAppSleep(); - NVIC_EnableIRQ(USB_IRQn); - - /* Wait for events */ - while (1) { - if (suspended || !configured) { - LED_Off(0); - } else { - LED_On(0); - } - - if (evtFlags) { - /* Display events */ - if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_NOVBUS)) { - MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_NOVBUS); - printf("VBUS Disconnect\n"); - } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_VBUS)) { - MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_VBUS); - printf("VBUS Connect\n"); - } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_BRST)) { - MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_BRST); - printf("Bus Reset\n"); - } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_SUSP)) { - MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_SUSP); - printf("Suspended\n"); - } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_DPACT)) { - MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_DPACT); - printf("Resume\n"); - } else if (MXC_GETBIT(&evtFlags, EVENT_ENUM_COMP)) { - MXC_CLRBIT(&evtFlags, EVENT_ENUM_COMP); - printf("Enumeration complete. Press SW1 to send character.\n"); - } else if (MXC_GETBIT(&evtFlags, EVENT_REMOTE_WAKE)) { - MXC_CLRBIT(&evtFlags, EVENT_REMOTE_WAKE); - printf("Remote Wakeup\n"); - } - } - } -} - -/******************************************************************************/ -int usbStartupCallback() -{ - // Startup the HIRC96M clock if it's not on already - if (!(MXC_GCR->clkcn & MXC_F_GCR_CLKCN_HIRC96M_EN)) { - MXC_GCR->clkcn |= MXC_F_GCR_CLKCN_HIRC96M_EN; - - if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLKCN_HIRC96M_RDY) != E_NO_ERROR) { - return E_TIME_OUT; - } - } - - MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -int usbShutdownCallback() -{ - MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -/* User-supplied function to delay usec micro-seconds */ -void usDelay(unsigned int usec) -{ - /* mxc_delay() takes unsigned long, so can't use it directly */ - MXC_Delay(usec); -} - -/******************************************************************************/ -static void usbAppSleep(void) -{ - /* TODO: Place low-power code here */ - suspended = 1; -} - -/******************************************************************************/ -static void usbAppWakeup(void) -{ - /* TODO: Place low-power code here */ - suspended = 0; -} - -/******************************************************************************/ -static void buttonCallback(void *pb) -{ - static const uint8_t chars[] = "Maxim Integrated\n"; - static int i = 0; - int count = 0; - int button_pressed = 0; - - //determine if interrupt triggered by bounce or a true button press - while (PB_Get(0) && !button_pressed) { - count++; - - if (count > 1000) { - button_pressed = 1; - } - } - - if (button_pressed) { - LED_Toggle(0); - - if (configured) { - if (suspended && remoteWake) { - /* The bus is suspended. Wake up the host */ - suspended = 0; - usbAppWakeup(); - MXC_USB_RemoteWakeup(); - MXC_SETBIT(&evtFlags, EVENT_REMOTE_WAKE); - } else { - if (i >= (sizeof(chars) - 1)) { - i = 0; - } - - hidkbd_keypress(chars[i++]); - } - } - } -} - -/******************************************************************************/ -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - /* Confirm the configuration value */ - if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { - configured = 1; - MXC_SETBIT(&evtFlags, EVENT_ENUM_COMP); - return hidkbd_configure(config_descriptor.endpoint_descriptor.bEndpointAddress & - USB_EP_NUM_MASK); - } else if (sud->wValue == 0) { - configured = 0; - return hidkbd_deconfigure(); - } - - return -1; -} - -/******************************************************************************/ -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remoteWake = 1; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/******************************************************************************/ -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remoteWake = 0; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/******************************************************************************/ -static int eventCallback(maxusb_event_t evt, void *data) -{ - /* Set event flag */ - MXC_SETBIT(&evtFlags, evt); - - switch (evt) { - case MAXUSB_EVENT_NOVBUS: - MXC_USB_EventDisable(MAXUSB_EVENT_BRST); - MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); - MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); - MXC_USB_Disconnect(); - configured = 0; - enum_clearconfig(); - hidkbd_deconfigure(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_VBUS: - MXC_USB_EventClear(MAXUSB_EVENT_BRST); - MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_SUSP); - MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); - MXC_USB_Connect(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_BRST: - usbAppWakeup(); - enum_clearconfig(); - hidkbd_deconfigure(); - configured = 0; - suspended = 0; - break; - - case MAXUSB_EVENT_SUSP: - usbAppSleep(); - break; - - case MAXUSB_EVENT_DPACT: - usbAppWakeup(); - break; - - default: - break; - } - - return 0; -} diff --git a/Examples/MAX32665/USB/USB_HIDKeyboard/project.mk b/Examples/MAX32665/USB/USB_HIDKeyboard/project.mk deleted file mode 100644 index 9448aa13e53..00000000000 --- a/Examples/MAX32665/USB/USB_HIDKeyboard/project.mk +++ /dev/null @@ -1,16 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -# ********************************************************** - -# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable MAXUSB library -LIB_MAXUSB = 1 diff --git a/Examples/MAX32665/USB/USB_MassStorage/.vscode/README.md b/Examples/MAX32665/USB/USB_MassStorage/.vscode/README.md deleted file mode 100755 index 90fbcefc65d..00000000000 --- a/Examples/MAX32665/USB/USB_MassStorage/.vscode/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# VSCode-Maxim - -_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ - -## Quick Links - -* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) - -## Introduction - -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). - -The following features are supported: - -* Code editing with intellisense down to the register level -* Code compilation with the ability to easily re-target a project for different microcontrollers and boards -* Flashing programs -* GUI and command-line debugging - -## Dependencies - -* [Visual Studio Code](https://code.visualstudio.com/) - * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) -* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) - -## Installation - -Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. - -See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. - -## Usage - -See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. - -## Issue Tracker - -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. - -New issues should contain _at minimum_ the following information: - -* Visual Studio Code version #s (see `Help -> About`) -* C/C++ Extension version # -* Target microcontroller and evaluation platform -* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32665/USB/USB_MassStorage/.vscode/settings.json b/Examples/MAX32665/USB/USB_MassStorage/.vscode/settings.json deleted file mode 100755 index a090f08b377..00000000000 --- a/Examples/MAX32665/USB/USB_MassStorage/.vscode/settings.json +++ /dev/null @@ -1,94 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32665", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32665.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32665/USB/USB_MassStorage/Makefile b/Examples/MAX32665/USB/USB_MassStorage/Makefile deleted file mode 100644 index a9dc1157557..00000000000 --- a/Examples/MAX32665/USB/USB_MassStorage/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32665 -TARGET_UC := MAX32665 -TARGET_LC := max32665 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32665/USB/USB_MassStorage/descriptors.h b/Examples/MAX32665/USB/USB_MassStorage/descriptors.h deleted file mode 100644 index 6e65fbdb797..00000000000 --- a/Examples/MAX32665/USB/USB_MassStorage/descriptors.h +++ /dev/null @@ -1,181 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -#ifndef EXAMPLES_MAX32665_USB_USB_MASSSTORAGE_DESCRIPTORS_H_ -#define EXAMPLES_MAX32665_USB_USB_MASSSTORAGE_DESCRIPTORS_H_ - -#include -#include "usb.h" -#include "hid_kbd.h" - -MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { - 0x12, /* bLength = 18 */ - 0x01, /* bDescriptorType = Device */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x00, /* bDeviceClass = Unspecified */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x0B6A, /* idVendor (Maxim Integrated) */ - 0x4402, /* idProduct */ - 0x0100, /* bcdDevice */ - 0x01, /* iManufacturer Descriptor ID */ - 0x02, /* iProduct Descriptor ID */ - 0x03, /* iSerialNumber = (0) No string */ - 0x01 /* bNumConfigurations */ -}; - -/* Device qualifier needed for high-speed operation */ -MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) device_qualifier_descriptor = { - 0x0A, /* bLength = 10 */ - 0x06, /* bDescriptorType = Device Qualifier */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x00, /* bDeviceClass = Unspecified */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x01, /* bNumConfigurations */ - 0x00 /* Reserved, must be 0 */ -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #0 Mass Storage Device */ - MXC_USB_interface_descriptor_t msc_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; -} config_descriptor = { { - 0x09, /* bLength = 9 */ - 0x02, /* bDescriptorType = Config (2) */ - 0x0020, /* wTotalLength(L/H) */ - 0x01, /* bNumInterfaces */ - 0x01, /* bConfigValue */ - 0x00, /* iConfiguration */ - 0xC0, /* bmAttributes (self-powered, no remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - { - /* First Interface Descriptor For MSC Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints (one for INm one for OUT) */ - 0x08, /* bInterfaceClass = Mass Storage (8) */ - 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ - 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ - 0x00, /* iInterface */ - }, - { - /* OUT Endpoint 1 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00 /* bInterval (N/A) */ - } }; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #0 Mass Storage Device */ - MXC_USB_interface_descriptor_t msc_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; -} config_descriptor_hs = { { - 0x09, /* bLength = 9 */ - 0x02, /* bDescriptorType = Config (2) */ - 0x0020, /* wTotalLength(L/H) */ - 0x01, /* bNumInterfaces */ - 0x01, /* bConfigValue */ - 0x00, /* iConfiguration */ - 0xC0, /* bmAttributes (self-powered, no remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - { - /* First Interface Descriptor For MSC Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints (one for INm one for OUT) */ - 0x08, /* bInterfaceClass = Mass Storage (8) */ - 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ - 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ - 0x00, /* iInterface */ - }, - { - /* OUT Endpoint 1 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x01, /* bInterval */ - }, - { - /* IN Endpoint 2 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x01 /* bInterval */ - } }; - -__attribute__((aligned(4))) uint8_t lang_id_desc[] = { - 0x04, /* bLength */ - 0x03, /* bDescriptorType */ - 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ -}; - -__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, - 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t prod_id_desc[] = { - 0x38, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, 'U', 0, 'S', 0, 'B', 0, ' ', 0, 'M', 0, 'a', 0, - 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, 'g', 0, - 'e', 0, ' ', 0, 'E', 0, 'x', 0, 'a', 0, 'm', 0, 'p', 0, 'l', 0, 'e', 0, -}; - -/* Not currently used (see device descriptor), but could be enabled if desired */ -__attribute__((aligned(4))) -uint8_t serial_id_desc[] = { 26, /* bLength */ - 0x03, /* bDescriptorType */ - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, '1', 0 }; - -#endif // EXAMPLES_MAX32665_USB_USB_MASSSTORAGE_DESCRIPTORS_H_ diff --git a/Examples/MAX32665/USB/USB_MassStorage/main.c b/Examples/MAX32665/USB/USB_MassStorage/main.c deleted file mode 100644 index 1990030de02..00000000000 --- a/Examples/MAX32665/USB/USB_MassStorage/main.c +++ /dev/null @@ -1,367 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file main.c - * @brief USB Mass Storage Class example - * @details This project creates a mass storage device using either on-board RAM or - * external SPI flash memory. Load the project, connect a cable from the PC - * to the USB connector. A new external drive should appear than can be read - * and written. - */ - -#include -#include -#include "mxc_sys.h" -#include "mxc_delay.h" -#include "board.h" -#include "led.h" -#include "usb.h" -#include "usb_event.h" -#include "enumerate.h" -#include "msc.h" -#include "descriptors.h" -#include "mscmem.h" -#include "gcr_regs.h" - -/***** Definitions *****/ -#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS -#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) - -#define BUFFER_SIZE 64 - -#define STRINGIFY(x) #x -#define TOSTRING(x) STRINGIFY(x) - -/***** Global Data *****/ -volatile int configured; -volatile int suspended; -volatile unsigned int event_flags; -int remote_wake_en; - -/***** Function Prototypes *****/ -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int eventCallback(maxusb_event_t evt, void *data); -static void usbAppSleep(void); -static void usbAppWakeup(void); -int usbStartupCallback(); -int usbShutdownCallback(); - -/***** File Scope Variables *****/ - -/* Defaults, which will be changed by the configuration code */ -static msc_cfg_t msc_cfg = { - 1, /* EP OUT */ - MXC_USBHS_MAX_PACKET, /* OUT max packet size */ - 2, /* EP IN */ - MXC_USBHS_MAX_PACKET, /* IN max packet size */ -}; - -static const msc_idstrings_t ids = { - "MAXIM", /* Vendor string. Maximum of 8 bytes */ - "MSC Example", /* Product string. Maximum of 16 bytes */ - "1.0" /* Version string. Maximum of 4 bytes */ -}; - -/* Functions to control "disk" memory. See msc.h for definitions. */ -static const msc_mem_t mem = { - mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, mscmem_Size, mscmem_Read, mscmem_Write, -}; - -/* User-supplied function to delay usec micro-seconds */ -void delay_us(unsigned int usec) -{ - /* mxc_delay() takes unsigned long, so can't use it directly */ - MXC_Delay(usec); -} - -/******************************************************************************/ -int main(void) -{ - maxusb_cfg_options_t usb_opts; - - printf("\n\n***** " TOSTRING(TARGET) " USB Mass Storage Example *****\n"); - printf("Waiting for VBUS...\n"); - - /* Initialize state */ - configured = 0; - suspended = 0; - event_flags = 0; - remote_wake_en = 0; - - /* Start out in full speed */ - usb_opts.enable_hs = 1; - usb_opts.delay_us = delay_us; /* Function which will be used for delays */ - usb_opts.init_callback = usbStartupCallback; - usb_opts.shutdown_callback = usbShutdownCallback; - - /* Initialize the usb module */ - if (MXC_USB_Init(&usb_opts) != 0) { - printf("usb_init() failed\n"); - while (1) {} - } - - /* Initialize the enumeration module */ - if (enum_init() != 0) { - printf("enum_init() failed\n"); - while (1) {} - } - - /* Register enumeration data */ - enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); - - if (usb_opts.enable_hs) { - /* Two additional descriptors needed for high-speed operation */ - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); - enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&device_qualifier_descriptor, 0); - } - - enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); - enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); - enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); - enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); - - /* Handle configuration */ - enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); - - /* Handle feature set/clear */ - enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); - enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); - - /* Initialize the class driver */ - if (msc_init(&config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { - printf("msc_init() failed\n"); - while (1) {} - } - - /* Register callbacks */ - MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); - MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); - - /* Start with USB in low power mode */ - usbAppSleep(); - NVIC_EnableIRQ(USB_IRQn); - - /* Wait for events */ - while (1) { - if (suspended || !configured) { - LED_Off(0); - } else { - LED_On(0); - } - - if (event_flags) { - /* Display events */ - if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); - printf("VBUS Disconnect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); - printf("VBUS Connect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); - printf("Bus Reset\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); - printf("Bus Reset Done: %s speed\n", - (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); - printf("Suspended\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); - printf("Resume\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { - MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); - printf("Enumeration complete.\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { - MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); - printf("Remote Wakeup\n"); - } - } - } -} - -/******************************************************************************/ -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - /* Confirm the configuration value */ - if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { - configured = 1; - MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); - - if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { - msc_cfg.out_ep = config_descriptor_hs.endpoint_descriptor_1.bEndpointAddress & 0x7; - msc_cfg.out_maxpacket = config_descriptor_hs.endpoint_descriptor_1.wMaxPacketSize; - msc_cfg.in_ep = config_descriptor_hs.endpoint_descriptor_2.bEndpointAddress & 0x7; - msc_cfg.in_maxpacket = config_descriptor_hs.endpoint_descriptor_2.wMaxPacketSize; - } else { - msc_cfg.out_ep = config_descriptor.endpoint_descriptor_1.bEndpointAddress & 0x7; - msc_cfg.out_maxpacket = config_descriptor.endpoint_descriptor_1.wMaxPacketSize; - msc_cfg.in_ep = config_descriptor.endpoint_descriptor_2.bEndpointAddress & 0x7; - msc_cfg.in_maxpacket = config_descriptor.endpoint_descriptor_2.wMaxPacketSize; - } - - return msc_configure(&msc_cfg); /* Configure the device class */ - - } else if (sud->wValue == 0) { - configured = 0; - return msc_deconfigure(); - } - - return -1; -} - -/******************************************************************************/ -int usbStartupCallback() -{ - // Startup the HIRC96M clock if it's not on already - if (!(MXC_GCR->clkcn & MXC_F_GCR_CLKCN_HIRC96M_EN)) { - MXC_GCR->clkcn |= MXC_F_GCR_CLKCN_HIRC96M_EN; - - if (MXC_SYS_Clock_Timeout(MXC_F_GCR_CLKCN_HIRC96M_RDY) != E_NO_ERROR) { - return E_TIME_OUT; - } - } - - MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -int usbShutdownCallback() -{ - MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 1; - } else { - /* Unknown callback */ - return -1; - } - - return 0; -} - -/******************************************************************************/ -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 0; - } else { - /* Unknown callback */ - return -1; - } - - return 0; -} - -/******************************************************************************/ -static void usbAppSleep(void) -{ - /* TODO: Place low-power code here */ - suspended = 1; -} - -/******************************************************************************/ -static void usbAppWakeup(void) -{ - /* TODO: Place low-power code here */ - suspended = 0; -} - -/******************************************************************************/ -static int eventCallback(maxusb_event_t evt, void *data) -{ - /* Set event flag */ - MXC_SETBIT(&event_flags, evt); - - switch (evt) { - case MAXUSB_EVENT_NOVBUS: - MXC_USB_EventDisable(MAXUSB_EVENT_BRST); - MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); - MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); - MXC_USB_Disconnect(); - configured = 0; - enum_clearconfig(); - msc_deconfigure(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_VBUS: - MXC_USB_EventClear(MAXUSB_EVENT_BRST); - MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); - MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_SUSP); - MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); - MXC_USB_Connect(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_BRST: - usbAppWakeup(); - enum_clearconfig(); - msc_deconfigure(); - configured = 0; - suspended = 0; - break; - - case MAXUSB_EVENT_BRSTDN: - if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor_hs, 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor, 0); - } else { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); - } - break; - - case MAXUSB_EVENT_SUSP: - usbAppSleep(); - break; - - case MAXUSB_EVENT_DPACT: - usbAppWakeup(); - break; - - default: - break; - } - - return 0; -} - -/******************************************************************************/ -void USB_IRQHandler(void) -{ - MXC_USB_EventHandler(); -} diff --git a/Examples/MAX32665/USB/USB_MassStorage/mscmem.c b/Examples/MAX32665/USB/USB_MassStorage/mscmem.c deleted file mode 100644 index 3e888d05ab5..00000000000 --- a/Examples/MAX32665/USB/USB_MassStorage/mscmem.c +++ /dev/null @@ -1,313 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file mscmem.h - * @brief Memory routines used by the USB Mass Storage Class example. - * See the msc_mem_t structure in msc.h for function details. - * @details Functions are provided for using the internal RAM of the - * device or the external SPI flash memory. Use the SPIXF_DISK - * and RAM_DISK defines to select the desired memory at compile - * time. - */ - -#include "mscmem.h" -#include -#include -#include "Ext_Flash.h" -#include "spixf.h" - -/***** Definitions *****/ - -#define SPIXF_DISK 1 -#define RAM_DISK 0 - -#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ -#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ - -/***** Global Data *****/ - -/***** File Scope Variables *****/ - -static int initialized = 0; -static int running = 0; - -#if SPIXF_DISK - -#undef EXT_FLASH_BAUD -#define EXT_FLASH_BAUD 5000000 /* SPI clock rate to communicate with the external flash */ - -#define EXT_FLASH_SECTOR_SIZE 4096 /* Number of bytes in one sector of the external flash */ -#define EXT_FLASH_SECTOR_SIZE_SHIFT \ - 12 /* The shift value used to convert between addresses and block numbers */ -#define EXT_FLASH_NUM_SECTORS 2048 /* Total number of sectors in the external flash */ - -#define MXC_SPIXF_WIDTH Ext_Flash_DataLine_Single /*Number of data lines*/ - -#define LBA_PER_SECTOR (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) -#define INVALID_SECTOR \ - EXT_FLASH_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ - -/***** File Scope Variables *****/ -static uint32_t sectorNum = INVALID_SECTOR; -static uint8_t sector[EXT_FLASH_SECTOR_SIZE]; -static int sectorDirty = 0; - -/***** Function Prototypes *****/ -static uint32_t getSectorNum(uint32_t lba); -static uint32_t getSectorAddr(uint32_t lba); -static uint32_t getSector(uint32_t num); - -/******************************************************************************/ -static uint32_t getSectorNum(uint32_t lba) -{ - /* Absolute_address = lba * LBA_SIZE */ - /* Sector_num = Absolute_address / EXT_FLASH_SECTOR_SIZE */ - /* Sector_num = lba * 512 / 4096 */ - return lba >> (EXT_FLASH_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); -} - -/******************************************************************************/ -static uint32_t getSectorAddr(uint32_t lba) -{ - /* eight 512 byte blocks in each sector */ - return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; -} - -/******************************************************************************/ -static uint32_t getSector(uint32_t num) -{ - /* New sector requested? */ - if (sectorNum != num) { - /* Is the current sector real? */ - if (sectorNum != INVALID_SECTOR) { - /* Was it written to after it was read from memory? */ - if (sectorDirty) { - /* Erase the old data. */ - Ext_Flash_Erase(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, Ext_Flash_Erase_4K); - /* Write the new */ - Ext_Flash_Program_Page(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, - EXT_FLASH_SECTOR_SIZE, MXC_SPIXF_WIDTH); - /* Mark data as clean */ - sectorDirty = 0; - } - } - - /* Requesting a new valid sector? */ - if (num != INVALID_SECTOR) { - Ext_Flash_Read(num << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, EXT_FLASH_SECTOR_SIZE, - MXC_SPIXF_WIDTH); - sectorDirty = 0; - sectorNum = num; - } - } - - return 0; -} - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - MXC_SPIXF_SetSPIFrequency(EXT_FLASH_BAUD); - Ext_Flash_Init(); - Ext_Flash_Reset(); - - if (MXC_SPIXF_WIDTH == Ext_Flash_DataLine_Quad) { - Ext_Flash_Quad(1); - } else { - Ext_Flash_Quad(0); - } - - initialized = 1; - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - /* Get number of 512 byte chunks the external flash contains. */ - return (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) * EXT_FLASH_NUM_SECTORS; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to external flash sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from external flash */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(buffer, sector + addr, LBA_SIZE); - - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to external flash sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from external flash */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(sector + addr, buffer, LBA_SIZE); - sectorDirty = 1; - - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Turn on the external flash if it is not already. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the initialization succeeded. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* TODO - could shut down XIPF interface here. */ - - /* Flush the currently cached sector if necessary. */ - if (getSector(INVALID_SECTOR)) { - return 1; - } - - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#elif RAM_DISK - -#define NUM_PAGES 0x100 -static uint8_t mem[NUM_PAGES][LBA_SIZE]; - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - initialized = 1; -#if (ERASE_MEMORY_ON_INIT) - memset(mem, 0, sizeof(mem)); -#endif - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - return NUM_PAGES; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(buffer, mem[lba], LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(mem[lba], buffer, LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Not much to do for this implementation. The RAM is always ready. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the RAM has been initialized. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* Nothing to do for this implementation. All data is written as it is */ - /* received so there are no pending writes that need to be flushed. */ - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#else -#error "You must assign either RAM_DISK or SPIXF_DISK to 1." -#endif diff --git a/Examples/MAX32665/USB/USB_MassStorage/mscmem.h b/Examples/MAX32665/USB/USB_MassStorage/mscmem.h deleted file mode 100644 index ebf10b490a5..00000000000 --- a/Examples/MAX32665/USB/USB_MassStorage/mscmem.h +++ /dev/null @@ -1,86 +0,0 @@ -/** - * @file - * @brief Memory routines used by the USB Mass Storage Class example. - * See the @ref msc_mem_t structure in msc.h for function details. - */ - -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -#ifndef EXAMPLES_MAX32665_USB_USB_MASSSTORAGE_MSCMEM_H_ -#define EXAMPLES_MAX32665_USB_USB_MASSSTORAGE_MSCMEM_H_ - -/* **** Include Files **** */ -#include - -/* **** Definitions **** */ -#define ERASE_MEMORY_ON_INIT \ - 1 /* Configuration option to clear the memory (to 0s) on initialization. */ -/* Use 1 to clear or 0 to leave untouched. */ -/** - * @brief Perform any initialization necessary to prepare the memory for reading/writing data. - * @returns 0 if initialization is successful, non-zero if an error occurred. - */ -int mscmem_Init(void); - -/** - * @brief Activates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Start(void); - -/** - * @brief Deactivates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Stop(void); - -/** - * @brief Reports the total size of the mass-storage memory. - * @returns The number of 512 byte blocks contained in the memory. - */ -uint32_t mscmem_Size(void); - -/** - * @brief Reads 512 bytes of data from the memory. - * @param lba The index of the 512 byte block to read. - * @param buffer A byte array of at least 512 bytes to hold the values read. - * @returns 0 if reading is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Read(uint32_t lba, uint8_t *buffer); - -/** - * @brief Writes 512 bytes of data to the memory. - * @param lba The index of the 512 byte block to write. - * @param buffer A byte array of at least 512 bytes holding the values to write. - * @returns 0 if writing is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Write(uint32_t lba, uint8_t *buffer); - -/** - * @brief Checks if the memory is ready to be read/written. - * @returns non-zero if the memory is ready, 0 otherwise. - */ -int mscmem_Ready(void); - -#endif // EXAMPLES_MAX32665_USB_USB_MASSSTORAGE_MSCMEM_H_ diff --git a/Examples/MAX32665/USB/USB_MassStorage/project.mk b/Examples/MAX32665/USB/USB_MassStorage/project.mk deleted file mode 100644 index 438c96809d2..00000000000 --- a/Examples/MAX32665/USB/USB_MassStorage/project.mk +++ /dev/null @@ -1,21 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -# ********************************************************** - -# If you have secure version of MCU (MAX32666), set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable MAXUSB library -LIB_MAXUSB = 1 - -ifneq ($(BOARD),EvKit_V1) -$(error ERR_NOTSUPPORTED: This example requires an external flash IC that is only available for the MAX32665EVKIT) -endif - diff --git a/Examples/MAX32665/WUT/.vscode/README.md b/Examples/MAX32665/WUT/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/WUT/.vscode/README.md +++ b/Examples/MAX32665/WUT/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/WUT/.vscode/settings.json b/Examples/MAX32665/WUT/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/WUT/.vscode/settings.json +++ b/Examples/MAX32665/WUT/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/WUT/Makefile b/Examples/MAX32665/WUT/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/WUT/Makefile +++ b/Examples/MAX32665/WUT/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/WUT/main.c b/Examples/MAX32665/WUT/main.c index a5128f24be7..17bbb999f0a 100644 --- a/Examples/MAX32665/WUT/main.c +++ b/Examples/MAX32665/WUT/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -45,7 +44,7 @@ /***** Globals *****/ /***** Functions *****/ -void WUT_IRQHandler() +void WUT_IRQHandler(void) { MXC_WUT_IntClear(); } diff --git a/Examples/MAX32665/WUT/project.mk b/Examples/MAX32665/WUT/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/WUT/project.mk +++ b/Examples/MAX32665/WUT/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/Watchdog/.vscode/README.md b/Examples/MAX32665/Watchdog/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/Watchdog/.vscode/README.md +++ b/Examples/MAX32665/Watchdog/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/Watchdog/.vscode/settings.json b/Examples/MAX32665/Watchdog/.vscode/settings.json index 43731b3ff8a..4cc8b36e2fb 100755 --- a/Examples/MAX32665/Watchdog/.vscode/settings.json +++ b/Examples/MAX32665/Watchdog/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/Watchdog/Makefile b/Examples/MAX32665/Watchdog/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/Watchdog/Makefile +++ b/Examples/MAX32665/Watchdog/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/Watchdog/main.c b/Examples/MAX32665/Watchdog/main.c index b43ef6930ec..f99fe278af2 100644 --- a/Examples/MAX32665/Watchdog/main.c +++ b/Examples/MAX32665/Watchdog/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -70,7 +69,7 @@ static mxc_gpio_cfg_t pb_pin[] = { /***** Functions *****/ // ***************************************************************************** -void watchdog_timeout_handler() +void watchdog_timeout_handler(void) { //get and clear flag MXC_WDT_GetIntFlag(MXC_WDT0); @@ -84,7 +83,7 @@ void WDT0_IRQHandler(void) watchdog_timeout_handler(); } // ***************************************************************************** -void MXC_WDT_Setup() +void MXC_WDT_Setup(void) { MXC_WDT_Disable(MXC_WDT0); MXC_WDT_Enable(MXC_WDT0); diff --git a/Examples/MAX32665/Watchdog/project.mk b/Examples/MAX32665/Watchdog/project.mk index 6b431a22292..09880ca4652 100644 --- a/Examples/MAX32665/Watchdog/project.mk +++ b/Examples/MAX32665/Watchdog/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/WearLeveling/.vscode/README.md b/Examples/MAX32665/WearLeveling/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32665/WearLeveling/.vscode/README.md +++ b/Examples/MAX32665/WearLeveling/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32665/WearLeveling/.vscode/settings.json b/Examples/MAX32665/WearLeveling/.vscode/settings.json index 3b1a67c5b0d..81e54647149 100755 --- a/Examples/MAX32665/WearLeveling/.vscode/settings.json +++ b/Examples/MAX32665/WearLeveling/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32665/WearLeveling/Makefile b/Examples/MAX32665/WearLeveling/Makefile index 12be0e19f34..585cabea5f5 100644 --- a/Examples/MAX32665/WearLeveling/Makefile +++ b/Examples/MAX32665/WearLeveling/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32665/WearLeveling/include/cli.h b/Examples/MAX32665/WearLeveling/include/cli.h index df6cb02ac2a..dbd925889da 100644 --- a/Examples/MAX32665/WearLeveling/include/cli.h +++ b/Examples/MAX32665/WearLeveling/include/cli.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/WearLeveling/include/file.h b/Examples/MAX32665/WearLeveling/include/file.h index c0d46e53de6..4c104e84aa3 100644 --- a/Examples/MAX32665/WearLeveling/include/file.h +++ b/Examples/MAX32665/WearLeveling/include/file.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/WearLeveling/include/flash.h b/Examples/MAX32665/WearLeveling/include/flash.h index 8c42135e213..47cffe32af3 100644 --- a/Examples/MAX32665/WearLeveling/include/flash.h +++ b/Examples/MAX32665/WearLeveling/include/flash.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/WearLeveling/include/main.h b/Examples/MAX32665/WearLeveling/include/main.h index a7937433abf..9d1fe70a0cc 100644 --- a/Examples/MAX32665/WearLeveling/include/main.h +++ b/Examples/MAX32665/WearLeveling/include/main.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/WearLeveling/main.c b/Examples/MAX32665/WearLeveling/main.c index e0fed8e6f2a..4a4ef4a2705 100644 --- a/Examples/MAX32665/WearLeveling/main.c +++ b/Examples/MAX32665/WearLeveling/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/WearLeveling/project.mk b/Examples/MAX32665/WearLeveling/project.mk index 197d3649eda..8c3fc29c007 100644 --- a/Examples/MAX32665/WearLeveling/project.mk +++ b/Examples/MAX32665/WearLeveling/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32665/WearLeveling/src/cli.c b/Examples/MAX32665/WearLeveling/src/cli.c index 488f3413dee..ea27a00faa5 100644 --- a/Examples/MAX32665/WearLeveling/src/cli.c +++ b/Examples/MAX32665/WearLeveling/src/cli.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/WearLeveling/src/file.c b/Examples/MAX32665/WearLeveling/src/file.c index dec9a57200f..ddb03186181 100644 --- a/Examples/MAX32665/WearLeveling/src/file.c +++ b/Examples/MAX32665/WearLeveling/src/file.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32665/WearLeveling/src/flash.c b/Examples/MAX32665/WearLeveling/src/flash.c index 0a6dbb4a889..7f67c29690c 100644 --- a/Examples/MAX32665/WearLeveling/src/flash.c +++ b/Examples/MAX32665/WearLeveling/src/flash.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/AES/.vscode/README.md b/Examples/MAX32670/AES/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/AES/.vscode/README.md +++ b/Examples/MAX32670/AES/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/AES/.vscode/settings.json b/Examples/MAX32670/AES/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/AES/.vscode/settings.json +++ b/Examples/MAX32670/AES/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/AES/ARM/sct_config.h b/Examples/MAX32670/AES/ARM/sct_config.h index 9d09d6917af..56af18b1e66 100644 --- a/Examples/MAX32670/AES/ARM/sct_config.h +++ b/Examples/MAX32670/AES/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/AES/Makefile b/Examples/MAX32670/AES/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/AES/Makefile +++ b/Examples/MAX32670/AES/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/AES/main.c b/Examples/MAX32670/AES/main.c index 5151a829fa8..9458c5b2b07 100644 --- a/Examples/MAX32670/AES/main.c +++ b/Examples/MAX32670/AES/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -50,7 +49,7 @@ mxc_aes_req_t req; volatile int dma_flag = 0; /***** Functions *****/ -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); dma_flag++; diff --git a/Examples/MAX32670/AES/project.mk b/Examples/MAX32670/AES/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/AES/project.mk +++ b/Examples/MAX32670/AES/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/ARM-DSP/README.md b/Examples/MAX32670/ARM-DSP/README.md index 9bb2d50bedc..5e1d116671b 100644 --- a/Examples/MAX32670/ARM-DSP/README.md +++ b/Examples/MAX32670/ARM-DSP/README.md @@ -8,7 +8,7 @@ The projects in this folder are ports of ARM's DSP example projects that can be Debug launch configurations are included in each project, and should appear in the "Favorites" menu in Eclipse. -Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop) +Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop) ## Software diff --git a/Examples/MAX32670/ARM-DSP/arm_bayes_example/.vscode/README.md b/Examples/MAX32670/ARM-DSP/arm_bayes_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/ARM-DSP/arm_bayes_example/.vscode/README.md +++ b/Examples/MAX32670/ARM-DSP/arm_bayes_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/ARM-DSP/arm_bayes_example/.vscode/settings.json b/Examples/MAX32670/ARM-DSP/arm_bayes_example/.vscode/settings.json index 313f96c6017..d34d4dfe618 100755 --- a/Examples/MAX32670/ARM-DSP/arm_bayes_example/.vscode/settings.json +++ b/Examples/MAX32670/ARM-DSP/arm_bayes_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/ARM-DSP/arm_bayes_example/Makefile b/Examples/MAX32670/ARM-DSP/arm_bayes_example/Makefile index b0ad5d35ada..90f9d298d03 100644 --- a/Examples/MAX32670/ARM-DSP/arm_bayes_example/Makefile +++ b/Examples/MAX32670/ARM-DSP/arm_bayes_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/ARM-DSP/arm_bayes_example/project.mk b/Examples/MAX32670/ARM-DSP/arm_bayes_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32670/ARM-DSP/arm_bayes_example/project.mk +++ b/Examples/MAX32670/ARM-DSP/arm_bayes_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/ARM-DSP/arm_class_marks_example/.vscode/README.md b/Examples/MAX32670/ARM-DSP/arm_class_marks_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/ARM-DSP/arm_class_marks_example/.vscode/README.md +++ b/Examples/MAX32670/ARM-DSP/arm_class_marks_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/ARM-DSP/arm_class_marks_example/.vscode/settings.json b/Examples/MAX32670/ARM-DSP/arm_class_marks_example/.vscode/settings.json index 313f96c6017..d34d4dfe618 100755 --- a/Examples/MAX32670/ARM-DSP/arm_class_marks_example/.vscode/settings.json +++ b/Examples/MAX32670/ARM-DSP/arm_class_marks_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/ARM-DSP/arm_class_marks_example/Makefile b/Examples/MAX32670/ARM-DSP/arm_class_marks_example/Makefile index b0ad5d35ada..90f9d298d03 100644 --- a/Examples/MAX32670/ARM-DSP/arm_class_marks_example/Makefile +++ b/Examples/MAX32670/ARM-DSP/arm_class_marks_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c b/Examples/MAX32670/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c index 30f548bc888..2ea5e90d59a 100644 --- a/Examples/MAX32670/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c +++ b/Examples/MAX32670/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c @@ -139,7 +139,7 @@ uint32_t student_num; * Main f32 test function. It returns maximum marks secured and student number * ------------------------------------------------------------------------------- */ -int main() +int main(void) { #ifndef USE_STATIC_INIT diff --git a/Examples/MAX32670/ARM-DSP/arm_class_marks_example/project.mk b/Examples/MAX32670/ARM-DSP/arm_class_marks_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32670/ARM-DSP/arm_class_marks_example/project.mk +++ b/Examples/MAX32670/ARM-DSP/arm_class_marks_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/ARM-DSP/arm_convolution_example/.vscode/README.md b/Examples/MAX32670/ARM-DSP/arm_convolution_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/ARM-DSP/arm_convolution_example/.vscode/README.md +++ b/Examples/MAX32670/ARM-DSP/arm_convolution_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/ARM-DSP/arm_convolution_example/.vscode/settings.json b/Examples/MAX32670/ARM-DSP/arm_convolution_example/.vscode/settings.json index 313f96c6017..d34d4dfe618 100755 --- a/Examples/MAX32670/ARM-DSP/arm_convolution_example/.vscode/settings.json +++ b/Examples/MAX32670/ARM-DSP/arm_convolution_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/ARM-DSP/arm_convolution_example/Makefile b/Examples/MAX32670/ARM-DSP/arm_convolution_example/Makefile index b0ad5d35ada..90f9d298d03 100644 --- a/Examples/MAX32670/ARM-DSP/arm_convolution_example/Makefile +++ b/Examples/MAX32670/ARM-DSP/arm_convolution_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/ARM-DSP/arm_convolution_example/project.mk b/Examples/MAX32670/ARM-DSP/arm_convolution_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32670/ARM-DSP/arm_convolution_example/project.mk +++ b/Examples/MAX32670/ARM-DSP/arm_convolution_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md b/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md +++ b/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json b/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json index 313f96c6017..d34d4dfe618 100755 --- a/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json +++ b/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/Makefile b/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/Makefile index b0ad5d35ada..90f9d298d03 100644 --- a/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/Makefile +++ b/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/project.mk b/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/project.mk +++ b/Examples/MAX32670/ARM-DSP/arm_dotproduct_example_f32/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/.vscode/README.md b/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/.vscode/README.md +++ b/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/.vscode/settings.json b/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/.vscode/settings.json index 313f96c6017..d34d4dfe618 100755 --- a/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/.vscode/settings.json +++ b/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/Makefile b/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/Makefile index b0ad5d35ada..90f9d298d03 100644 --- a/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/Makefile +++ b/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/project.mk b/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/project.mk +++ b/Examples/MAX32670/ARM-DSP/arm_fft_bin_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/ARM-DSP/arm_fir_example/.vscode/README.md b/Examples/MAX32670/ARM-DSP/arm_fir_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/ARM-DSP/arm_fir_example/.vscode/README.md +++ b/Examples/MAX32670/ARM-DSP/arm_fir_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/ARM-DSP/arm_fir_example/.vscode/settings.json b/Examples/MAX32670/ARM-DSP/arm_fir_example/.vscode/settings.json index 313f96c6017..d34d4dfe618 100755 --- a/Examples/MAX32670/ARM-DSP/arm_fir_example/.vscode/settings.json +++ b/Examples/MAX32670/ARM-DSP/arm_fir_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/ARM-DSP/arm_fir_example/Makefile b/Examples/MAX32670/ARM-DSP/arm_fir_example/Makefile index b0ad5d35ada..90f9d298d03 100644 --- a/Examples/MAX32670/ARM-DSP/arm_fir_example/Makefile +++ b/Examples/MAX32670/ARM-DSP/arm_fir_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/ARM-DSP/arm_fir_example/project.mk b/Examples/MAX32670/ARM-DSP/arm_fir_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32670/ARM-DSP/arm_fir_example/project.mk +++ b/Examples/MAX32670/ARM-DSP/arm_fir_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md b/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md +++ b/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json b/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json index 313f96c6017..d34d4dfe618 100755 --- a/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json +++ b/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/Makefile b/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/Makefile index b0ad5d35ada..90f9d298d03 100644 --- a/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/Makefile +++ b/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/project.mk b/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/project.mk +++ b/Examples/MAX32670/ARM-DSP/arm_graphic_equalizer_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/.vscode/README.md b/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/.vscode/README.md +++ b/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/.vscode/settings.json b/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/.vscode/settings.json index 313f96c6017..d34d4dfe618 100755 --- a/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/.vscode/settings.json +++ b/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/Makefile b/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/Makefile index b0ad5d35ada..90f9d298d03 100644 --- a/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/Makefile +++ b/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/project.mk b/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/project.mk +++ b/Examples/MAX32670/ARM-DSP/arm_linear_interp_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/ARM-DSP/arm_matrix_example/.vscode/README.md b/Examples/MAX32670/ARM-DSP/arm_matrix_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/ARM-DSP/arm_matrix_example/.vscode/README.md +++ b/Examples/MAX32670/ARM-DSP/arm_matrix_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/ARM-DSP/arm_matrix_example/.vscode/settings.json b/Examples/MAX32670/ARM-DSP/arm_matrix_example/.vscode/settings.json index 313f96c6017..d34d4dfe618 100755 --- a/Examples/MAX32670/ARM-DSP/arm_matrix_example/.vscode/settings.json +++ b/Examples/MAX32670/ARM-DSP/arm_matrix_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/ARM-DSP/arm_matrix_example/Makefile b/Examples/MAX32670/ARM-DSP/arm_matrix_example/Makefile index b0ad5d35ada..90f9d298d03 100644 --- a/Examples/MAX32670/ARM-DSP/arm_matrix_example/Makefile +++ b/Examples/MAX32670/ARM-DSP/arm_matrix_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/ARM-DSP/arm_matrix_example/project.mk b/Examples/MAX32670/ARM-DSP/arm_matrix_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32670/ARM-DSP/arm_matrix_example/project.mk +++ b/Examples/MAX32670/ARM-DSP/arm_matrix_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/.vscode/README.md b/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/.vscode/README.md +++ b/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/.vscode/settings.json b/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/.vscode/settings.json index 313f96c6017..d34d4dfe618 100755 --- a/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/.vscode/settings.json +++ b/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/Makefile b/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/Makefile index b0ad5d35ada..90f9d298d03 100644 --- a/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/Makefile +++ b/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/project.mk b/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/project.mk +++ b/Examples/MAX32670/ARM-DSP/arm_signal_converge_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/.vscode/README.md b/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/.vscode/README.md +++ b/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/.vscode/settings.json b/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/.vscode/settings.json index 313f96c6017..d34d4dfe618 100755 --- a/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/.vscode/settings.json +++ b/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/Makefile b/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/Makefile index b0ad5d35ada..90f9d298d03 100644 --- a/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/Makefile +++ b/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/project.mk b/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/project.mk +++ b/Examples/MAX32670/ARM-DSP/arm_sin_cos_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/ARM-DSP/arm_svm_example/.vscode/README.md b/Examples/MAX32670/ARM-DSP/arm_svm_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/ARM-DSP/arm_svm_example/.vscode/README.md +++ b/Examples/MAX32670/ARM-DSP/arm_svm_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/ARM-DSP/arm_svm_example/.vscode/settings.json b/Examples/MAX32670/ARM-DSP/arm_svm_example/.vscode/settings.json index 313f96c6017..d34d4dfe618 100755 --- a/Examples/MAX32670/ARM-DSP/arm_svm_example/.vscode/settings.json +++ b/Examples/MAX32670/ARM-DSP/arm_svm_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/ARM-DSP/arm_svm_example/Makefile b/Examples/MAX32670/ARM-DSP/arm_svm_example/Makefile index b0ad5d35ada..90f9d298d03 100644 --- a/Examples/MAX32670/ARM-DSP/arm_svm_example/Makefile +++ b/Examples/MAX32670/ARM-DSP/arm_svm_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/ARM-DSP/arm_svm_example/project.mk b/Examples/MAX32670/ARM-DSP/arm_svm_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32670/ARM-DSP/arm_svm_example/project.mk +++ b/Examples/MAX32670/ARM-DSP/arm_svm_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/ARM-DSP/arm_variance_example/.vscode/README.md b/Examples/MAX32670/ARM-DSP/arm_variance_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/ARM-DSP/arm_variance_example/.vscode/README.md +++ b/Examples/MAX32670/ARM-DSP/arm_variance_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/ARM-DSP/arm_variance_example/.vscode/settings.json b/Examples/MAX32670/ARM-DSP/arm_variance_example/.vscode/settings.json index 313f96c6017..d34d4dfe618 100755 --- a/Examples/MAX32670/ARM-DSP/arm_variance_example/.vscode/settings.json +++ b/Examples/MAX32670/ARM-DSP/arm_variance_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/ARM-DSP/arm_variance_example/Makefile b/Examples/MAX32670/ARM-DSP/arm_variance_example/Makefile index b0ad5d35ada..90f9d298d03 100644 --- a/Examples/MAX32670/ARM-DSP/arm_variance_example/Makefile +++ b/Examples/MAX32670/ARM-DSP/arm_variance_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/ARM-DSP/arm_variance_example/project.mk b/Examples/MAX32670/ARM-DSP/arm_variance_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32670/ARM-DSP/arm_variance_example/project.mk +++ b/Examples/MAX32670/ARM-DSP/arm_variance_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/CRC/.vscode/README.md b/Examples/MAX32670/CRC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/CRC/.vscode/README.md +++ b/Examples/MAX32670/CRC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/CRC/.vscode/settings.json b/Examples/MAX32670/CRC/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/CRC/.vscode/settings.json +++ b/Examples/MAX32670/CRC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/CRC/ARM/sct_config.h b/Examples/MAX32670/CRC/ARM/sct_config.h index 216230d2486..3d5328e8c33 100644 --- a/Examples/MAX32670/CRC/ARM/sct_config.h +++ b/Examples/MAX32670/CRC/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/CRC/Makefile b/Examples/MAX32670/CRC/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/CRC/Makefile +++ b/Examples/MAX32670/CRC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/CRC/main.c b/Examples/MAX32670/CRC/main.c index 94b33ce8e18..a325ad2c038 100644 --- a/Examples/MAX32670/CRC/main.c +++ b/Examples/MAX32670/CRC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/CRC/project.mk b/Examples/MAX32670/CRC/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/CRC/project.mk +++ b/Examples/MAX32670/CRC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/Coremark/.vscode/README.md b/Examples/MAX32670/Coremark/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/Coremark/.vscode/README.md +++ b/Examples/MAX32670/Coremark/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/Coremark/.vscode/settings.json b/Examples/MAX32670/Coremark/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/Coremark/.vscode/settings.json +++ b/Examples/MAX32670/Coremark/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/Coremark/ARM/sct_config.h b/Examples/MAX32670/Coremark/ARM/sct_config.h index d1ef1322b9b..dcf547c494f 100644 --- a/Examples/MAX32670/Coremark/ARM/sct_config.h +++ b/Examples/MAX32670/Coremark/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Coremark/Makefile b/Examples/MAX32670/Coremark/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/Coremark/Makefile +++ b/Examples/MAX32670/Coremark/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/Coremark/project.mk b/Examples/MAX32670/Coremark/project.mk index 9ded8091069..a6efc624169 100644 --- a/Examples/MAX32670/Coremark/project.mk +++ b/Examples/MAX32670/Coremark/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/DMA/.vscode/README.md b/Examples/MAX32670/DMA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/DMA/.vscode/README.md +++ b/Examples/MAX32670/DMA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/DMA/.vscode/settings.json b/Examples/MAX32670/DMA/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/DMA/.vscode/settings.json +++ b/Examples/MAX32670/DMA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/DMA/ARM/sct_config.h b/Examples/MAX32670/DMA/ARM/sct_config.h index a6a24fabab8..7977630202a 100644 --- a/Examples/MAX32670/DMA/ARM/sct_config.h +++ b/Examples/MAX32670/DMA/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/DMA/Makefile b/Examples/MAX32670/DMA/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/DMA/Makefile +++ b/Examples/MAX32670/DMA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/DMA/main.c b/Examples/MAX32670/DMA/main.c index cdc4118dc45..bbeaf6fb196 100644 --- a/Examples/MAX32670/DMA/main.c +++ b/Examples/MAX32670/DMA/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -56,7 +55,7 @@ void memCpyComplete(void *dest) flag++; } -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); } diff --git a/Examples/MAX32670/DMA/project.mk b/Examples/MAX32670/DMA/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/DMA/project.mk +++ b/Examples/MAX32670/DMA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/EEPROM_Emulator/.vscode/README.md b/Examples/MAX32670/EEPROM_Emulator/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/EEPROM_Emulator/.vscode/README.md +++ b/Examples/MAX32670/EEPROM_Emulator/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/EEPROM_Emulator/.vscode/settings.json b/Examples/MAX32670/EEPROM_Emulator/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/EEPROM_Emulator/.vscode/settings.json +++ b/Examples/MAX32670/EEPROM_Emulator/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/EEPROM_Emulator/ARM/sct_config.h b/Examples/MAX32670/EEPROM_Emulator/ARM/sct_config.h index 4f12beb9efb..638a79b9ee8 100644 --- a/Examples/MAX32670/EEPROM_Emulator/ARM/sct_config.h +++ b/Examples/MAX32670/EEPROM_Emulator/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/EEPROM_Emulator/Makefile b/Examples/MAX32670/EEPROM_Emulator/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/EEPROM_Emulator/Makefile +++ b/Examples/MAX32670/EEPROM_Emulator/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/EEPROM_Emulator/include/cache.h b/Examples/MAX32670/EEPROM_Emulator/include/cache.h index a5ee562bae1..e08a1a3db87 100644 --- a/Examples/MAX32670/EEPROM_Emulator/include/cache.h +++ b/Examples/MAX32670/EEPROM_Emulator/include/cache.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/EEPROM_Emulator/include/eeprom.h b/Examples/MAX32670/EEPROM_Emulator/include/eeprom.h index 0392553d085..d7cbc1b95a9 100644 --- a/Examples/MAX32670/EEPROM_Emulator/include/eeprom.h +++ b/Examples/MAX32670/EEPROM_Emulator/include/eeprom.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/EEPROM_Emulator/main.c b/Examples/MAX32670/EEPROM_Emulator/main.c index 5ec0aa2fda2..c999547b363 100644 --- a/Examples/MAX32670/EEPROM_Emulator/main.c +++ b/Examples/MAX32670/EEPROM_Emulator/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/EEPROM_Emulator/project.mk b/Examples/MAX32670/EEPROM_Emulator/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32670/EEPROM_Emulator/project.mk +++ b/Examples/MAX32670/EEPROM_Emulator/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/EEPROM_Emulator/src/cache.c b/Examples/MAX32670/EEPROM_Emulator/src/cache.c index 17bc7b57c13..adf98b89839 100644 --- a/Examples/MAX32670/EEPROM_Emulator/src/cache.c +++ b/Examples/MAX32670/EEPROM_Emulator/src/cache.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/EEPROM_Emulator/src/eeprom.c b/Examples/MAX32670/EEPROM_Emulator/src/eeprom.c index 22ede1df092..266766e2e42 100644 --- a/Examples/MAX32670/EEPROM_Emulator/src/eeprom.c +++ b/Examples/MAX32670/EEPROM_Emulator/src/eeprom.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/EXT_CLK/.vscode/README.md b/Examples/MAX32670/EXT_CLK/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/EXT_CLK/.vscode/README.md +++ b/Examples/MAX32670/EXT_CLK/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/EXT_CLK/.vscode/settings.json b/Examples/MAX32670/EXT_CLK/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/EXT_CLK/.vscode/settings.json +++ b/Examples/MAX32670/EXT_CLK/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/EXT_CLK/ARM/sct_config.h b/Examples/MAX32670/EXT_CLK/ARM/sct_config.h index 1d1fcfe0d1b..449a744674b 100644 --- a/Examples/MAX32670/EXT_CLK/ARM/sct_config.h +++ b/Examples/MAX32670/EXT_CLK/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/EXT_CLK/Makefile b/Examples/MAX32670/EXT_CLK/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/EXT_CLK/Makefile +++ b/Examples/MAX32670/EXT_CLK/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/EXT_CLK/main.c b/Examples/MAX32670/EXT_CLK/main.c index 9c3916f0036..5ef2a8e98ef 100644 --- a/Examples/MAX32670/EXT_CLK/main.c +++ b/Examples/MAX32670/EXT_CLK/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/EXT_CLK/project.mk b/Examples/MAX32670/EXT_CLK/project.mk index d27aeb5fbff..41a57ee7443 100644 --- a/Examples/MAX32670/EXT_CLK/project.mk +++ b/Examples/MAX32670/EXT_CLK/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/Flash/.vscode/README.md b/Examples/MAX32670/Flash/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/Flash/.vscode/README.md +++ b/Examples/MAX32670/Flash/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/Flash/.vscode/settings.json b/Examples/MAX32670/Flash/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/Flash/.vscode/settings.json +++ b/Examples/MAX32670/Flash/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/Flash/ARM/sct_config.h b/Examples/MAX32670/Flash/ARM/sct_config.h index 9c399eddcfb..1f53bdf1b6d 100644 --- a/Examples/MAX32670/Flash/ARM/sct_config.h +++ b/Examples/MAX32670/Flash/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Flash/Makefile b/Examples/MAX32670/Flash/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/Flash/Makefile +++ b/Examples/MAX32670/Flash/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/Flash/main.c b/Examples/MAX32670/Flash/main.c index 6e451738ae1..82218d9b941 100644 --- a/Examples/MAX32670/Flash/main.c +++ b/Examples/MAX32670/Flash/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -60,7 +59,7 @@ volatile uint32_t isr_flags; //****************************************************************************** int button_pressed = 0; -void button_handler() +void button_handler(void) { button_pressed = 1; } @@ -121,7 +120,7 @@ void setup_irqs(void) isr_cnt = 0; } -int write_test_pattern() +int write_test_pattern(void) { int err; // A flash address must be in the erased state before writing to it, because the @@ -163,7 +162,7 @@ int write_test_pattern() return err; } -int validate_test_pattern() +int validate_test_pattern(void) { int err = 0; @@ -183,7 +182,7 @@ int validate_test_pattern() return err; } -int erase_magic() +int erase_magic(void) { /* To modify a location in flash that has already been written to, diff --git a/Examples/MAX32670/Flash/project.mk b/Examples/MAX32670/Flash/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32670/Flash/project.mk +++ b/Examples/MAX32670/Flash/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/Flash_CLI/.vscode/README.md b/Examples/MAX32670/Flash_CLI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/Flash_CLI/.vscode/README.md +++ b/Examples/MAX32670/Flash_CLI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/Flash_CLI/.vscode/settings.json b/Examples/MAX32670/Flash_CLI/.vscode/settings.json index aeee1b0927e..a7f41897232 100755 --- a/Examples/MAX32670/Flash_CLI/.vscode/settings.json +++ b/Examples/MAX32670/Flash_CLI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/Flash_CLI/ARM/sct_config.h b/Examples/MAX32670/Flash_CLI/ARM/sct_config.h index 969ee25523f..dddbe11d6e3 100644 --- a/Examples/MAX32670/Flash_CLI/ARM/sct_config.h +++ b/Examples/MAX32670/Flash_CLI/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Flash_CLI/Makefile b/Examples/MAX32670/Flash_CLI/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/Flash_CLI/Makefile +++ b/Examples/MAX32670/Flash_CLI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/Flash_CLI/definitions.h b/Examples/MAX32670/Flash_CLI/definitions.h index 48ae104a5e1..c49fd60e045 100644 --- a/Examples/MAX32670/Flash_CLI/definitions.h +++ b/Examples/MAX32670/Flash_CLI/definitions.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Flash_CLI/main.c b/Examples/MAX32670/Flash_CLI/main.c index 993d78e71a0..f26d233fb55 100644 --- a/Examples/MAX32670/Flash_CLI/main.c +++ b/Examples/MAX32670/Flash_CLI/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Flash_CLI/project.mk b/Examples/MAX32670/Flash_CLI/project.mk index 6d35d86af3f..0c278be5748 100644 --- a/Examples/MAX32670/Flash_CLI/project.mk +++ b/Examples/MAX32670/Flash_CLI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/FreeRTOSDemo/.vscode/README.md b/Examples/MAX32670/FreeRTOSDemo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/FreeRTOSDemo/.vscode/README.md +++ b/Examples/MAX32670/FreeRTOSDemo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/FreeRTOSDemo/.vscode/settings.json b/Examples/MAX32670/FreeRTOSDemo/.vscode/settings.json index 1bf084142b2..9abbdb10b57 100755 --- a/Examples/MAX32670/FreeRTOSDemo/.vscode/settings.json +++ b/Examples/MAX32670/FreeRTOSDemo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/FreeRTOSDemo/ARM/sct_config.h b/Examples/MAX32670/FreeRTOSDemo/ARM/sct_config.h index b42e176a8e5..8e7dd30db2c 100644 --- a/Examples/MAX32670/FreeRTOSDemo/ARM/sct_config.h +++ b/Examples/MAX32670/FreeRTOSDemo/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/FreeRTOSDemo/FreeRTOSConfig.h b/Examples/MAX32670/FreeRTOSDemo/FreeRTOSConfig.h index e3e46cb99d7..1d5fabe340a 100644 --- a/Examples/MAX32670/FreeRTOSDemo/FreeRTOSConfig.h +++ b/Examples/MAX32670/FreeRTOSDemo/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/FreeRTOSDemo/Makefile b/Examples/MAX32670/FreeRTOSDemo/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/FreeRTOSDemo/Makefile +++ b/Examples/MAX32670/FreeRTOSDemo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/FreeRTOSDemo/freertos_tickless.c b/Examples/MAX32670/FreeRTOSDemo/freertos_tickless.c index 55039948e4e..9d298af043d 100644 --- a/Examples/MAX32670/FreeRTOSDemo/freertos_tickless.c +++ b/Examples/MAX32670/FreeRTOSDemo/freertos_tickless.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/FreeRTOSDemo/main.c b/Examples/MAX32670/FreeRTOSDemo/main.c index 78c14e11aaf..d8eafaa63a4 100644 --- a/Examples/MAX32670/FreeRTOSDemo/main.c +++ b/Examples/MAX32670/FreeRTOSDemo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/FreeRTOSDemo/project.mk b/Examples/MAX32670/FreeRTOSDemo/project.mk index 07c7bbffcab..752e6e42391 100644 --- a/Examples/MAX32670/FreeRTOSDemo/project.mk +++ b/Examples/MAX32670/FreeRTOSDemo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/GPIO/.vscode/README.md b/Examples/MAX32670/GPIO/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/GPIO/.vscode/README.md +++ b/Examples/MAX32670/GPIO/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/GPIO/.vscode/settings.json b/Examples/MAX32670/GPIO/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/GPIO/.vscode/settings.json +++ b/Examples/MAX32670/GPIO/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/GPIO/ARM/sct_config.h b/Examples/MAX32670/GPIO/ARM/sct_config.h index 7cef4dc59f7..969c82925bf 100644 --- a/Examples/MAX32670/GPIO/ARM/sct_config.h +++ b/Examples/MAX32670/GPIO/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/GPIO/Makefile b/Examples/MAX32670/GPIO/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/GPIO/Makefile +++ b/Examples/MAX32670/GPIO/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/GPIO/main.c b/Examples/MAX32670/GPIO/main.c index b83410f9c2e..86204c4ca6b 100644 --- a/Examples/MAX32670/GPIO/main.c +++ b/Examples/MAX32670/GPIO/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/GPIO/project.mk b/Examples/MAX32670/GPIO/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/GPIO/project.mk +++ b/Examples/MAX32670/GPIO/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/Hello_World/.vscode/README.md b/Examples/MAX32670/Hello_World/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/Hello_World/.vscode/README.md +++ b/Examples/MAX32670/Hello_World/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/Hello_World/.vscode/settings.json b/Examples/MAX32670/Hello_World/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/Hello_World/.vscode/settings.json +++ b/Examples/MAX32670/Hello_World/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/Hello_World/ARM/sct_config.h b/Examples/MAX32670/Hello_World/ARM/sct_config.h index b3ca3f78db2..67e0734daed 100644 --- a/Examples/MAX32670/Hello_World/ARM/sct_config.h +++ b/Examples/MAX32670/Hello_World/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Hello_World/Makefile b/Examples/MAX32670/Hello_World/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/Hello_World/Makefile +++ b/Examples/MAX32670/Hello_World/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/Hello_World/main.c b/Examples/MAX32670/Hello_World/main.c index bea69a62300..ad20d280fff 100644 --- a/Examples/MAX32670/Hello_World/main.c +++ b/Examples/MAX32670/Hello_World/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Hello_World/project.mk b/Examples/MAX32670/Hello_World/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/Hello_World/project.mk +++ b/Examples/MAX32670/Hello_World/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/Hello_World_Cpp/.vscode/README.md b/Examples/MAX32670/Hello_World_Cpp/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/Hello_World_Cpp/.vscode/README.md +++ b/Examples/MAX32670/Hello_World_Cpp/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/Hello_World_Cpp/.vscode/settings.json b/Examples/MAX32670/Hello_World_Cpp/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/Hello_World_Cpp/.vscode/settings.json +++ b/Examples/MAX32670/Hello_World_Cpp/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/Hello_World_Cpp/ARM/sct_config.h b/Examples/MAX32670/Hello_World_Cpp/ARM/sct_config.h index e8e46b36112..e953fb85021 100644 --- a/Examples/MAX32670/Hello_World_Cpp/ARM/sct_config.h +++ b/Examples/MAX32670/Hello_World_Cpp/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Hello_World_Cpp/Makefile b/Examples/MAX32670/Hello_World_Cpp/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/Hello_World_Cpp/Makefile +++ b/Examples/MAX32670/Hello_World_Cpp/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/Hello_World_Cpp/main.cpp b/Examples/MAX32670/Hello_World_Cpp/main.cpp index daade0e995d..fdf8363cde1 100644 --- a/Examples/MAX32670/Hello_World_Cpp/main.cpp +++ b/Examples/MAX32670/Hello_World_Cpp/main.cpp @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -66,7 +65,7 @@ class LED { int blink_count; }; -int main() +int main(void) { LED led = LED(0); diff --git a/Examples/MAX32670/Hello_World_Cpp/project.mk b/Examples/MAX32670/Hello_World_Cpp/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX32670/Hello_World_Cpp/project.mk +++ b/Examples/MAX32670/Hello_World_Cpp/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/I2C/.vscode/README.md b/Examples/MAX32670/I2C/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/I2C/.vscode/README.md +++ b/Examples/MAX32670/I2C/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/I2C/.vscode/settings.json b/Examples/MAX32670/I2C/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/I2C/.vscode/settings.json +++ b/Examples/MAX32670/I2C/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/I2C/ARM/sct_config.h b/Examples/MAX32670/I2C/ARM/sct_config.h index 7cb3942941f..a621549d145 100644 --- a/Examples/MAX32670/I2C/ARM/sct_config.h +++ b/Examples/MAX32670/I2C/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/I2C/Makefile b/Examples/MAX32670/I2C/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/I2C/Makefile +++ b/Examples/MAX32670/I2C/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/I2C/main.c b/Examples/MAX32670/I2C/main.c index 4ba5980581a..5cfdb5a2b87 100644 --- a/Examples/MAX32670/I2C/main.c +++ b/Examples/MAX32670/I2C/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -190,7 +189,7 @@ int verifyData(void) } // ***************************************************************************** -int main() +int main(void) { printf("\n******** I2C Master-Slave Transaction Demo *********\n"); printf("\nThis example uses one I2C peripheral as a master to\n"); diff --git a/Examples/MAX32670/I2C/project.mk b/Examples/MAX32670/I2C/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/I2C/project.mk +++ b/Examples/MAX32670/I2C/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/I2C_MNGR/.vscode/README.md b/Examples/MAX32670/I2C_MNGR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/I2C_MNGR/.vscode/README.md +++ b/Examples/MAX32670/I2C_MNGR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/I2C_MNGR/.vscode/settings.json b/Examples/MAX32670/I2C_MNGR/.vscode/settings.json index e6c17abec23..c248d9e466b 100755 --- a/Examples/MAX32670/I2C_MNGR/.vscode/settings.json +++ b/Examples/MAX32670/I2C_MNGR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/I2C_MNGR/ARM/sct_config.h b/Examples/MAX32670/I2C_MNGR/ARM/sct_config.h index ca27dc4ca43..b83ef590e59 100644 --- a/Examples/MAX32670/I2C_MNGR/ARM/sct_config.h +++ b/Examples/MAX32670/I2C_MNGR/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/I2C_MNGR/FreeRTOSConfig.h b/Examples/MAX32670/I2C_MNGR/FreeRTOSConfig.h index e5f2922ca2d..0387c187b16 100644 --- a/Examples/MAX32670/I2C_MNGR/FreeRTOSConfig.h +++ b/Examples/MAX32670/I2C_MNGR/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/I2C_MNGR/Makefile b/Examples/MAX32670/I2C_MNGR/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/I2C_MNGR/Makefile +++ b/Examples/MAX32670/I2C_MNGR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/I2C_MNGR/i2c_mngr/i2c_mngr.c b/Examples/MAX32670/I2C_MNGR/i2c_mngr/i2c_mngr.c index 2677dfbbda2..d2c41b1d609 100644 --- a/Examples/MAX32670/I2C_MNGR/i2c_mngr/i2c_mngr.c +++ b/Examples/MAX32670/I2C_MNGR/i2c_mngr/i2c_mngr.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +38,7 @@ typedef struct { static i2c_txn_mngr_t s_mngr; /******************************************************************************/ -int I2C_MNGR_Init() +int I2C_MNGR_Init(void) { s_mngr.inst0 = MXC_I2C0; s_mngr.inst1 = MXC_I2C1; diff --git a/Examples/MAX32670/I2C_MNGR/i2c_mngr/i2c_mngr.h b/Examples/MAX32670/I2C_MNGR/i2c_mngr/i2c_mngr.h index ae7247b0245..ce2ffb4d35b 100644 --- a/Examples/MAX32670/I2C_MNGR/i2c_mngr/i2c_mngr.h +++ b/Examples/MAX32670/I2C_MNGR/i2c_mngr/i2c_mngr.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +54,7 @@ typedef struct { * @brief Initializes I2C transaction manager * @return #E_NO_ERROR if succeeded, error code otherwise */ -int I2C_MNGR_Init(); +int I2C_MNGR_Init(void); /* * @brief Executes I2C transaction diff --git a/Examples/MAX32670/I2C_MNGR/main.c b/Examples/MAX32670/I2C_MNGR/main.c index efcd6c7498c..a5300127d10 100644 --- a/Examples/MAX32670/I2C_MNGR/main.c +++ b/Examples/MAX32670/I2C_MNGR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/I2C_MNGR/project.mk b/Examples/MAX32670/I2C_MNGR/project.mk index 90e76c6363a..da687b6e847 100644 --- a/Examples/MAX32670/I2C_MNGR/project.mk +++ b/Examples/MAX32670/I2C_MNGR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/I2C_SCAN/.vscode/README.md b/Examples/MAX32670/I2C_SCAN/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/I2C_SCAN/.vscode/README.md +++ b/Examples/MAX32670/I2C_SCAN/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/I2C_SCAN/.vscode/settings.json b/Examples/MAX32670/I2C_SCAN/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/I2C_SCAN/.vscode/settings.json +++ b/Examples/MAX32670/I2C_SCAN/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/I2C_SCAN/ARM/sct_config.h b/Examples/MAX32670/I2C_SCAN/ARM/sct_config.h index 4d7f71d1137..776cb524436 100644 --- a/Examples/MAX32670/I2C_SCAN/ARM/sct_config.h +++ b/Examples/MAX32670/I2C_SCAN/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/I2C_SCAN/Makefile b/Examples/MAX32670/I2C_SCAN/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/I2C_SCAN/Makefile +++ b/Examples/MAX32670/I2C_SCAN/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/I2C_SCAN/main.c b/Examples/MAX32670/I2C_SCAN/main.c index ff2d9ba4c1b..6336c00e864 100644 --- a/Examples/MAX32670/I2C_SCAN/main.c +++ b/Examples/MAX32670/I2C_SCAN/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -44,7 +43,7 @@ uint8_t counter = 0; // ***************************************************************************** -int main() +int main(void) { printf("\n******** I2C SLAVE ADDRESS SCANNER *********\n"); printf("\nThis example finds the addresses of any I2C Slave devices connected to the"); diff --git a/Examples/MAX32670/I2C_SCAN/project.mk b/Examples/MAX32670/I2C_SCAN/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/I2C_SCAN/project.mk +++ b/Examples/MAX32670/I2C_SCAN/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/I2C_Sensor/.vscode/README.md b/Examples/MAX32670/I2C_Sensor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/I2C_Sensor/.vscode/README.md +++ b/Examples/MAX32670/I2C_Sensor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/I2C_Sensor/.vscode/settings.json b/Examples/MAX32670/I2C_Sensor/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/I2C_Sensor/.vscode/settings.json +++ b/Examples/MAX32670/I2C_Sensor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/I2C_Sensor/ARM/sct_config.h b/Examples/MAX32670/I2C_Sensor/ARM/sct_config.h index 5bc88d52b66..f8b539791f7 100644 --- a/Examples/MAX32670/I2C_Sensor/ARM/sct_config.h +++ b/Examples/MAX32670/I2C_Sensor/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/I2C_Sensor/Makefile b/Examples/MAX32670/I2C_Sensor/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/I2C_Sensor/Makefile +++ b/Examples/MAX32670/I2C_Sensor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/I2C_Sensor/main.c b/Examples/MAX32670/I2C_Sensor/main.c index 59cef950d03..51131833f6a 100644 --- a/Examples/MAX32670/I2C_Sensor/main.c +++ b/Examples/MAX32670/I2C_Sensor/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/I2C_Sensor/project.mk b/Examples/MAX32670/I2C_Sensor/project.mk index 6a77af63372..fa0464ac6ba 100644 --- a/Examples/MAX32670/I2C_Sensor/project.mk +++ b/Examples/MAX32670/I2C_Sensor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/I2S/.vscode/README.md b/Examples/MAX32670/I2S/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/I2S/.vscode/README.md +++ b/Examples/MAX32670/I2S/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/I2S/.vscode/settings.json b/Examples/MAX32670/I2S/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/I2S/.vscode/settings.json +++ b/Examples/MAX32670/I2S/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/I2S/ARM/sct_config.h b/Examples/MAX32670/I2S/ARM/sct_config.h index fc78841649d..46cb9f2bc83 100644 --- a/Examples/MAX32670/I2S/ARM/sct_config.h +++ b/Examples/MAX32670/I2S/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/I2S/Makefile b/Examples/MAX32670/I2S/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/I2S/Makefile +++ b/Examples/MAX32670/I2S/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/I2S/main.c b/Examples/MAX32670/I2S/main.c index 14cb4e08788..9bd2c1fc945 100644 --- a/Examples/MAX32670/I2S/main.c +++ b/Examples/MAX32670/I2S/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -71,7 +70,7 @@ void i2s_dma_cb(int ch, int err) #endif /*****************************************************************/ -int main() +int main(void) { int err; mxc_i2s_req_t req; diff --git a/Examples/MAX32670/I2S/project.mk b/Examples/MAX32670/I2S/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/I2S/project.mk +++ b/Examples/MAX32670/I2S/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/ICC/.vscode/README.md b/Examples/MAX32670/ICC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/ICC/.vscode/README.md +++ b/Examples/MAX32670/ICC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/ICC/.vscode/settings.json b/Examples/MAX32670/ICC/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/ICC/.vscode/settings.json +++ b/Examples/MAX32670/ICC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/ICC/ARM/sct_config.h b/Examples/MAX32670/ICC/ARM/sct_config.h index bbe957413e2..a692bf22956 100644 --- a/Examples/MAX32670/ICC/ARM/sct_config.h +++ b/Examples/MAX32670/ICC/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/ICC/Makefile b/Examples/MAX32670/ICC/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/ICC/Makefile +++ b/Examples/MAX32670/ICC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/ICC/main.c b/Examples/MAX32670/ICC/main.c index 31a6d291f9d..8262fdf8c09 100644 --- a/Examples/MAX32670/ICC/main.c +++ b/Examples/MAX32670/ICC/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/ICC/project.mk b/Examples/MAX32670/ICC/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/ICC/project.mk +++ b/Examples/MAX32670/ICC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/LP/.vscode/README.md b/Examples/MAX32670/LP/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/LP/.vscode/README.md +++ b/Examples/MAX32670/LP/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/LP/.vscode/settings.json b/Examples/MAX32670/LP/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/LP/.vscode/settings.json +++ b/Examples/MAX32670/LP/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/LP/ARM/sct_config.h b/Examples/MAX32670/LP/ARM/sct_config.h index 0416d8acf77..6926081a57d 100644 --- a/Examples/MAX32670/LP/ARM/sct_config.h +++ b/Examples/MAX32670/LP/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/LP/Makefile b/Examples/MAX32670/LP/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/LP/Makefile +++ b/Examples/MAX32670/LP/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/LP/lp.ld b/Examples/MAX32670/LP/lp.ld index d4640af5240..42f506b8614 100644 --- a/Examples/MAX32670/LP/lp.ld +++ b/Examples/MAX32670/LP/lp.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/LP/main.c b/Examples/MAX32670/LP/main.c index 142f56709a4..c96e6979950 100644 --- a/Examples/MAX32670/LP/main.c +++ b/Examples/MAX32670/LP/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/LP/project.mk b/Examples/MAX32670/LP/project.mk index 705be27c7aa..355c3e4e6aa 100644 --- a/Examples/MAX32670/LP/project.mk +++ b/Examples/MAX32670/LP/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/Library_Generate/.vscode/README.md b/Examples/MAX32670/Library_Generate/.vscode/README.md index e2e9a1a6522..a740741c3ab 100644 --- a/Examples/MAX32670/Library_Generate/.vscode/README.md +++ b/Examples/MAX32670/Library_Generate/.vscode/README.md @@ -7,11 +7,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) * If it's not in the README, check the UG. * If it's not in the UG, open a ticket! -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -38,7 +38,7 @@ The steps below are also available in video form in "Understanding Artificial In 2. Run the installer executable, and ensure that "Visual Studio Code Support" is enabled for your installation. - ![Selected Components](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/installer_components.JPG) + ![Selected Components](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/installer_components.JPG) 3. Finish the MSDK installation, taking note of where the MSDK was installed. @@ -54,7 +54,7 @@ The steps below are also available in video form in "Understanding Artificial In 9. Type "open settings json" and select the "Preferences: Open Settings (JSON)" option (_not_ the "Preferences: Open _Default_ Settings (JSON)"). This will open your user settings.json file in VS Code's editor. - ![Open Settings JSON Command](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/open_settings_json.jpg) + ![Open Settings JSON Command](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/open_settings_json.jpg) 10. Add the entries below into your user settings.json file. @@ -82,7 +82,7 @@ This section covers basic usage of the VSCode-Maxim project files. For document Visual Studio Code is built around a "working directory" paradigm. The editor is always rooted in a working directory, and the main mechanism for changing that directory is `File -> Open Folder...`. -![File -> Open Folder](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/file_openfolder.JPG) +![File -> Open Folder](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/file_openfolder.JPG) As a result, you'll notice that there is no "New Project" mechanism. A "project" in VS Code is simply a folder. It will look inside of the opened folder for a `.vscode` _sub_-folder to load project-specific settings from. @@ -90,11 +90,11 @@ A project that is configured for VS Code will have, at minimum, a .vscode sub-fo Ex: -![Example Directory Contents](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/opening_projects_2.jpg) +![Example Directory Contents](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/opening_projects_2.jpg) ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MSDK installation. @@ -102,7 +102,7 @@ Additionally, empty project templates and a drag-and-drop folder for "injecting" Once a project is opened 4 available build tasks will become available via `Terminal > Run Build task...` or the shortcut `Ctrl+Shift+B`. These tasks are configured by the `.vscode/task.json` file. -![Build Tasks Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/buildtasks.JPG) +![Build Tasks Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/buildtasks.JPG) #### Build @@ -138,7 +138,7 @@ Once a project is opened 4 available build tasks will become available via `Term ### Debugging -![Debug Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger.JPG) +![Debug Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger.JPG) Debugging is enabled by Visual Studio Code's integrated debugger. Launch configurations can be found in the `.vscode/launch.json` file. @@ -162,11 +162,11 @@ In general, the MAX-series microcontrollers have the following debugger limitati 3. Launch the debugger with `Run > Start Debugging`, with the shortcut `F5`, or via the `Run and Debug` window (Ctrl + Shift + D) and the green "launch" arrow. - ![Debug Tab](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_window.JPG) + ![Debug Tab](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_window.JPG) 4. The debugger will launch a GDB client & OpenOCD server, reset the microcontroller, and should break on entry into `main`. - ![Debugger Break on Main](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_breakmain.JPG) + ![Debugger Break on Main](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_breakmain.JPG) #### Using the Debugger @@ -174,13 +174,13 @@ In general, the MAX-series microcontrollers have the following debugger limitati The main interface for the debugger is the debugger control bar: -![Debugger Control Bar Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_bar.JPG) +![Debugger Control Bar Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_bar.JPG) `Continue | Step Over | Step Into | Step Out | Restart | Stop` Breakpoints can be set by clicking in the space next to the line number in a source code file. A red dot indicates a line to break on. Breakpoints can be removed by clicking on them again. Ex: -![Breakpoint](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/breakpoint.JPG) +![Breakpoint](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/breakpoint.JPG) ## Project Configuration @@ -190,7 +190,7 @@ Breakpoints can be set by clicking in the space next to the line number in a sou **When a change is made to this file, VS Code should be reloaded with CTRL+SHIFT+P -> Reload Window (or alternatively restarted completely) to force a re-parse.** -![Reload Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/reload_window.JPG) +![Reload Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/reload_window.JPG) The default project configuration should work for most use cases as long as `"target"` and `"board"` are set correctly. @@ -227,7 +227,7 @@ The following configuration options are available: * ... can be found in the `Libraries/Boards` folder of the MSDK * For example, the supported options for the MAX78000 are `"EvKit_V1"`, `"FTHR_RevA"`, and `"MAXREFDES178"`. - ![MAX78000 Boards](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/78000_boards.JPG) + ![MAX78000 Boards](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/78000_boards.JPG) ### Advanced Config Options @@ -353,7 +353,7 @@ A project's build system is managed by two files found in the project's root dir * `Makefile` * `project.mk` -![Files are located in the root directory](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) +![Files are located in the root directory](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) When the command... @@ -416,7 +416,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the @@ -540,7 +540,7 @@ If you want to start from scratch, take this option. ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/Library_Generate/ARM/sct_config.h b/Examples/MAX32670/Library_Generate/ARM/sct_config.h index f45399cf83d..30ec78f368d 100644 --- a/Examples/MAX32670/Library_Generate/ARM/sct_config.h +++ b/Examples/MAX32670/Library_Generate/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Library_Generate/Makefile b/Examples/MAX32670/Library_Generate/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/Library_Generate/Makefile +++ b/Examples/MAX32670/Library_Generate/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/Library_Generate/gpiolib.c b/Examples/MAX32670/Library_Generate/gpiolib.c index 5c8845edc78..252f6df4c44 100644 --- a/Examples/MAX32670/Library_Generate/gpiolib.c +++ b/Examples/MAX32670/Library_Generate/gpiolib.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Library_Generate/gpiolib.h b/Examples/MAX32670/Library_Generate/gpiolib.h index cc3d81b3a4b..31ed23ae466 100644 --- a/Examples/MAX32670/Library_Generate/gpiolib.h +++ b/Examples/MAX32670/Library_Generate/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Library_Generate/project.mk b/Examples/MAX32670/Library_Generate/project.mk index 01dcd9fbb2a..b5729be6ef0 100644 --- a/Examples/MAX32670/Library_Generate/project.mk +++ b/Examples/MAX32670/Library_Generate/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/Library_Use/.vscode/README.md b/Examples/MAX32670/Library_Use/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/Library_Use/.vscode/README.md +++ b/Examples/MAX32670/Library_Use/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/Library_Use/.vscode/settings.json b/Examples/MAX32670/Library_Use/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/Library_Use/.vscode/settings.json +++ b/Examples/MAX32670/Library_Use/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/Library_Use/ARM/sct_config.h b/Examples/MAX32670/Library_Use/ARM/sct_config.h index 5bb74b0a3a8..a40d0599adc 100644 --- a/Examples/MAX32670/Library_Use/ARM/sct_config.h +++ b/Examples/MAX32670/Library_Use/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Library_Use/Makefile b/Examples/MAX32670/Library_Use/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/Library_Use/Makefile +++ b/Examples/MAX32670/Library_Use/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/Library_Use/lib/include/gpiolib.h b/Examples/MAX32670/Library_Use/lib/include/gpiolib.h index dd03154f0f4..83d2d42ae71 100644 --- a/Examples/MAX32670/Library_Use/lib/include/gpiolib.h +++ b/Examples/MAX32670/Library_Use/lib/include/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Library_Use/main.c b/Examples/MAX32670/Library_Use/main.c index a9c20ec444f..c686476d185 100644 --- a/Examples/MAX32670/Library_Use/main.c +++ b/Examples/MAX32670/Library_Use/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Library_Use/project.mk b/Examples/MAX32670/Library_Use/project.mk index 697d6809f88..8639a5f2593 100644 --- a/Examples/MAX32670/Library_Use/project.mk +++ b/Examples/MAX32670/Library_Use/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/RTC/.vscode/README.md b/Examples/MAX32670/RTC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/RTC/.vscode/README.md +++ b/Examples/MAX32670/RTC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/RTC/.vscode/settings.json b/Examples/MAX32670/RTC/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/RTC/.vscode/settings.json +++ b/Examples/MAX32670/RTC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/RTC/ARM/sct_config.h b/Examples/MAX32670/RTC/ARM/sct_config.h index 3790bc19a10..12b746c0148 100644 --- a/Examples/MAX32670/RTC/ARM/sct_config.h +++ b/Examples/MAX32670/RTC/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/RTC/Makefile b/Examples/MAX32670/RTC/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/RTC/Makefile +++ b/Examples/MAX32670/RTC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/RTC/main.c b/Examples/MAX32670/RTC/main.c index 64e2bcc5a37..385c482428b 100644 --- a/Examples/MAX32670/RTC/main.c +++ b/Examples/MAX32670/RTC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -109,12 +108,12 @@ void RTC_IRQHandler(void) } volatile int buttonPressed = 0; -void buttonHandler() +void buttonHandler(void) { buttonPressed = 1; } -void printTime() +void printTime(void) { int day, hr, min, err; uint32_t sec, rtc_readout; diff --git a/Examples/MAX32670/RTC/project.mk b/Examples/MAX32670/RTC/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/RTC/project.mk +++ b/Examples/MAX32670/RTC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/RTC_Backup/.vscode/README.md b/Examples/MAX32670/RTC_Backup/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/RTC_Backup/.vscode/README.md +++ b/Examples/MAX32670/RTC_Backup/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/RTC_Backup/.vscode/settings.json b/Examples/MAX32670/RTC_Backup/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/RTC_Backup/.vscode/settings.json +++ b/Examples/MAX32670/RTC_Backup/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/RTC_Backup/ARM/sct_config.h b/Examples/MAX32670/RTC_Backup/ARM/sct_config.h index d030b5494b9..d10ff1458ab 100644 --- a/Examples/MAX32670/RTC_Backup/ARM/sct_config.h +++ b/Examples/MAX32670/RTC_Backup/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/RTC_Backup/Makefile b/Examples/MAX32670/RTC_Backup/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/RTC_Backup/Makefile +++ b/Examples/MAX32670/RTC_Backup/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/RTC_Backup/main.c b/Examples/MAX32670/RTC_Backup/main.c index 4546cf54010..d3a826272b1 100644 --- a/Examples/MAX32670/RTC_Backup/main.c +++ b/Examples/MAX32670/RTC_Backup/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -61,7 +60,7 @@ void RTC_IRQHandler(void) {} // ***************************************************************************** -void rescheduleAlarm() +void rescheduleAlarm(void) { uint32_t time; int flags = MXC_RTC_GetFlags(); @@ -87,7 +86,7 @@ void rescheduleAlarm() } // ***************************************************************************** -void printTime() +void printTime(void) { int day, hr, min; uint32_t sec; @@ -108,7 +107,7 @@ void printTime() } // ***************************************************************************** -int configureRTC() +int configureRTC(void) { int rtcTrim; diff --git a/Examples/MAX32670/RTC_Backup/project.mk b/Examples/MAX32670/RTC_Backup/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/RTC_Backup/project.mk +++ b/Examples/MAX32670/RTC_Backup/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/SPI/.vscode/README.md b/Examples/MAX32670/SPI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/SPI/.vscode/README.md +++ b/Examples/MAX32670/SPI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/SPI/.vscode/settings.json b/Examples/MAX32670/SPI/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/SPI/.vscode/settings.json +++ b/Examples/MAX32670/SPI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/SPI/ARM/sct_config.h b/Examples/MAX32670/SPI/ARM/sct_config.h index a98cc43c0db..64acfcfb36f 100644 --- a/Examples/MAX32670/SPI/ARM/sct_config.h +++ b/Examples/MAX32670/SPI/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SPI/Makefile b/Examples/MAX32670/SPI/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/SPI/Makefile +++ b/Examples/MAX32670/SPI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/SPI/main.c b/Examples/MAX32670/SPI/main.c index ceebf0b7d7d..707e2ed17b3 100644 --- a/Examples/MAX32670/SPI/main.c +++ b/Examples/MAX32670/SPI/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SPI/project.mk b/Examples/MAX32670/SPI/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/SPI/project.mk +++ b/Examples/MAX32670/SPI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/SPI_MasterSlave/.vscode/README.md b/Examples/MAX32670/SPI_MasterSlave/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/SPI_MasterSlave/.vscode/README.md +++ b/Examples/MAX32670/SPI_MasterSlave/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/SPI_MasterSlave/.vscode/settings.json b/Examples/MAX32670/SPI_MasterSlave/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/SPI_MasterSlave/.vscode/settings.json +++ b/Examples/MAX32670/SPI_MasterSlave/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/SPI_MasterSlave/ARM/sct_config.h b/Examples/MAX32670/SPI_MasterSlave/ARM/sct_config.h index c8c25bd4f0d..77f9c7da8ab 100644 --- a/Examples/MAX32670/SPI_MasterSlave/ARM/sct_config.h +++ b/Examples/MAX32670/SPI_MasterSlave/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SPI_MasterSlave/Makefile b/Examples/MAX32670/SPI_MasterSlave/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/SPI_MasterSlave/Makefile +++ b/Examples/MAX32670/SPI_MasterSlave/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/SPI_MasterSlave/main.c b/Examples/MAX32670/SPI_MasterSlave/main.c index feda3f46af0..7ca36a66abf 100644 --- a/Examples/MAX32670/SPI_MasterSlave/main.c +++ b/Examples/MAX32670/SPI_MasterSlave/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SPI_MasterSlave/project.mk b/Examples/MAX32670/SPI_MasterSlave/project.mk index a298e084edb..e6a4e75d314 100644 --- a/Examples/MAX32670/SPI_MasterSlave/project.mk +++ b/Examples/MAX32670/SPI_MasterSlave/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/SPI_Usecase/.vscode/README.md b/Examples/MAX32670/SPI_Usecase/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/SPI_Usecase/.vscode/README.md +++ b/Examples/MAX32670/SPI_Usecase/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/SPI_Usecase/.vscode/settings.json b/Examples/MAX32670/SPI_Usecase/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/SPI_Usecase/.vscode/settings.json +++ b/Examples/MAX32670/SPI_Usecase/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/SPI_Usecase/ARM/sct_config.h b/Examples/MAX32670/SPI_Usecase/ARM/sct_config.h index 50b0404d04d..a58669c421a 100644 --- a/Examples/MAX32670/SPI_Usecase/ARM/sct_config.h +++ b/Examples/MAX32670/SPI_Usecase/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SPI_Usecase/Makefile b/Examples/MAX32670/SPI_Usecase/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/SPI_Usecase/Makefile +++ b/Examples/MAX32670/SPI_Usecase/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/SPI_Usecase/main.c b/Examples/MAX32670/SPI_Usecase/main.c index 99b5fc1a246..b90eaec62d0 100644 --- a/Examples/MAX32670/SPI_Usecase/main.c +++ b/Examples/MAX32670/SPI_Usecase/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SPI_Usecase/project.mk b/Examples/MAX32670/SPI_Usecase/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/SPI_Usecase/project.mk +++ b/Examples/MAX32670/SPI_Usecase/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/SPI_Usecase/spi_config.h b/Examples/MAX32670/SPI_Usecase/spi_config.h index e73bcc5b0fd..5eaadfb77cc 100644 --- a/Examples/MAX32670/SPI_Usecase/spi_config.h +++ b/Examples/MAX32670/SPI_Usecase/spi_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SPI_Usecase/spi_master.c b/Examples/MAX32670/SPI_Usecase/spi_master.c index 7a1bbc37be6..ea5ace277d6 100644 --- a/Examples/MAX32670/SPI_Usecase/spi_master.c +++ b/Examples/MAX32670/SPI_Usecase/spi_master.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SPI_Usecase/spi_slave.c b/Examples/MAX32670/SPI_Usecase/spi_slave.c index 507e3930176..f389b9454e4 100644 --- a/Examples/MAX32670/SPI_Usecase/spi_slave.c +++ b/Examples/MAX32670/SPI_Usecase/spi_slave.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SecureROM_BL_Host/.vscode/README.md b/Examples/MAX32670/SecureROM_BL_Host/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/SecureROM_BL_Host/.vscode/README.md +++ b/Examples/MAX32670/SecureROM_BL_Host/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/SecureROM_BL_Host/.vscode/settings.json b/Examples/MAX32670/SecureROM_BL_Host/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/SecureROM_BL_Host/.vscode/settings.json +++ b/Examples/MAX32670/SecureROM_BL_Host/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/SecureROM_BL_Host/ARM/sct_config.h b/Examples/MAX32670/SecureROM_BL_Host/ARM/sct_config.h index 0cbcb2cdb30..52b45275717 100644 --- a/Examples/MAX32670/SecureROM_BL_Host/ARM/sct_config.h +++ b/Examples/MAX32670/SecureROM_BL_Host/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SecureROM_BL_Host/Makefile b/Examples/MAX32670/SecureROM_BL_Host/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/SecureROM_BL_Host/Makefile +++ b/Examples/MAX32670/SecureROM_BL_Host/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/SecureROM_BL_Host/bootloader/bootloader.c b/Examples/MAX32670/SecureROM_BL_Host/bootloader/bootloader.c index 6cdb6e533ce..f6a099f3c76 100644 --- a/Examples/MAX32670/SecureROM_BL_Host/bootloader/bootloader.c +++ b/Examples/MAX32670/SecureROM_BL_Host/bootloader/bootloader.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SecureROM_BL_Host/bootloader/bootloader.h b/Examples/MAX32670/SecureROM_BL_Host/bootloader/bootloader.h index 008569c1799..90b3d8bb724 100644 --- a/Examples/MAX32670/SecureROM_BL_Host/bootloader/bootloader.h +++ b/Examples/MAX32670/SecureROM_BL_Host/bootloader/bootloader.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SecureROM_BL_Host/include/platform.h b/Examples/MAX32670/SecureROM_BL_Host/include/platform.h index c6c10932a02..aa761966f47 100644 --- a/Examples/MAX32670/SecureROM_BL_Host/include/platform.h +++ b/Examples/MAX32670/SecureROM_BL_Host/include/platform.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SecureROM_BL_Host/include/terminal.h b/Examples/MAX32670/SecureROM_BL_Host/include/terminal.h index e5e400fad65..2a43a1c4e45 100644 --- a/Examples/MAX32670/SecureROM_BL_Host/include/terminal.h +++ b/Examples/MAX32670/SecureROM_BL_Host/include/terminal.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SecureROM_BL_Host/project.mk b/Examples/MAX32670/SecureROM_BL_Host/project.mk index 626673adfca..8688615b1ec 100644 --- a/Examples/MAX32670/SecureROM_BL_Host/project.mk +++ b/Examples/MAX32670/SecureROM_BL_Host/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/SecureROM_BL_Host/script/scp_to_c_array.py b/Examples/MAX32670/SecureROM_BL_Host/script/scp_to_c_array.py index 0ac91638ccf..92e6a47fa7f 100644 --- a/Examples/MAX32670/SecureROM_BL_Host/script/scp_to_c_array.py +++ b/Examples/MAX32670/SecureROM_BL_Host/script/scp_to_c_array.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SecureROM_BL_Host/src/main.c b/Examples/MAX32670/SecureROM_BL_Host/src/main.c index f030f1e863f..321bc0bfbb0 100644 --- a/Examples/MAX32670/SecureROM_BL_Host/src/main.c +++ b/Examples/MAX32670/SecureROM_BL_Host/src/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SecureROM_BL_Host/src/platform_max32670.c b/Examples/MAX32670/SecureROM_BL_Host/src/platform_max32670.c index 0092bf267a7..5d621bddf38 100644 --- a/Examples/MAX32670/SecureROM_BL_Host/src/platform_max32670.c +++ b/Examples/MAX32670/SecureROM_BL_Host/src/platform_max32670.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SecureROM_BL_Host/src/terminal.c b/Examples/MAX32670/SecureROM_BL_Host/src/terminal.c index 2dbb55cdfed..066ec5ff226 100644 --- a/Examples/MAX32670/SecureROM_BL_Host/src/terminal.c +++ b/Examples/MAX32670/SecureROM_BL_Host/src/terminal.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_6.c b/Examples/MAX32670/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_6.c index 8c8dcd5503d..8813807a91c 100644 --- a/Examples/MAX32670/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_6.c +++ b/Examples/MAX32670/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_6.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_7.c b/Examples/MAX32670/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_7.c index 6efa607624b..34bab5e2b8b 100644 --- a/Examples/MAX32670/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_7.c +++ b/Examples/MAX32670/SecureROM_BL_Host/test_images/MAX32520-KIT/blinkled_P1_7.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SecureROM_BL_Host/test_images/MAX32651-EVKIT/blinkled_P2_25.c b/Examples/MAX32670/SecureROM_BL_Host/test_images/MAX32651-EVKIT/blinkled_P2_25.c index 7b29cae76e5..db8f0dee7b8 100644 --- a/Examples/MAX32670/SecureROM_BL_Host/test_images/MAX32651-EVKIT/blinkled_P2_25.c +++ b/Examples/MAX32670/SecureROM_BL_Host/test_images/MAX32651-EVKIT/blinkled_P2_25.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/SecureROM_BL_Host/test_images/test_images.h b/Examples/MAX32670/SecureROM_BL_Host/test_images/test_images.h index c7857811cc2..cb58b57c17c 100644 --- a/Examples/MAX32670/SecureROM_BL_Host/test_images/test_images.h +++ b/Examples/MAX32670/SecureROM_BL_Host/test_images/test_images.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/TMR/.vscode/README.md b/Examples/MAX32670/TMR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/TMR/.vscode/README.md +++ b/Examples/MAX32670/TMR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/TMR/.vscode/settings.json b/Examples/MAX32670/TMR/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/TMR/.vscode/settings.json +++ b/Examples/MAX32670/TMR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/TMR/ARM/sct_config.h b/Examples/MAX32670/TMR/ARM/sct_config.h index abb5b1cd2a1..9e49d0713af 100644 --- a/Examples/MAX32670/TMR/ARM/sct_config.h +++ b/Examples/MAX32670/TMR/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/TMR/Makefile b/Examples/MAX32670/TMR/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/TMR/Makefile +++ b/Examples/MAX32670/TMR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/TMR/main.c b/Examples/MAX32670/TMR/main.c index 766cf3401e9..c59964e1979 100644 --- a/Examples/MAX32670/TMR/main.c +++ b/Examples/MAX32670/TMR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -40,7 +39,7 @@ /***** Definitions *****/ // Parameters for PWM output -#define CLOCK_SOURCE MXC_TMR_8M_CLK // must be mxc_tmr_clock_t +#define CLOCK_SOURCE MXC_TMR_IBRO_CLK // must be mxc_tmr_clock_t // Parameters for Continuous timer #define OST_FREQ 1 // (Hz) diff --git a/Examples/MAX32670/TMR/project.mk b/Examples/MAX32670/TMR/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/TMR/project.mk +++ b/Examples/MAX32670/TMR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/TRNG/.vscode/README.md b/Examples/MAX32670/TRNG/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/TRNG/.vscode/README.md +++ b/Examples/MAX32670/TRNG/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/TRNG/.vscode/settings.json b/Examples/MAX32670/TRNG/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/TRNG/.vscode/settings.json +++ b/Examples/MAX32670/TRNG/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/TRNG/ARM/sct_config.h b/Examples/MAX32670/TRNG/ARM/sct_config.h index 1cc71ee2390..5750a1766d7 100644 --- a/Examples/MAX32670/TRNG/ARM/sct_config.h +++ b/Examples/MAX32670/TRNG/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/TRNG/Makefile b/Examples/MAX32670/TRNG/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/TRNG/Makefile +++ b/Examples/MAX32670/TRNG/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/TRNG/main.c b/Examples/MAX32670/TRNG/main.c index 151059a1a7f..dbd6b9f23f5 100644 --- a/Examples/MAX32670/TRNG/main.c +++ b/Examples/MAX32670/TRNG/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/TRNG/project.mk b/Examples/MAX32670/TRNG/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/TRNG/project.mk +++ b/Examples/MAX32670/TRNG/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/Temp_Monitor/.vscode/README.md b/Examples/MAX32670/Temp_Monitor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/Temp_Monitor/.vscode/README.md +++ b/Examples/MAX32670/Temp_Monitor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/Temp_Monitor/.vscode/settings.json b/Examples/MAX32670/Temp_Monitor/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/Temp_Monitor/.vscode/settings.json +++ b/Examples/MAX32670/Temp_Monitor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/Temp_Monitor/ARM/sct_config.h b/Examples/MAX32670/Temp_Monitor/ARM/sct_config.h index 04521b5bbbd..03056ce3576 100644 --- a/Examples/MAX32670/Temp_Monitor/ARM/sct_config.h +++ b/Examples/MAX32670/Temp_Monitor/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Temp_Monitor/Makefile b/Examples/MAX32670/Temp_Monitor/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/Temp_Monitor/Makefile +++ b/Examples/MAX32670/Temp_Monitor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/Temp_Monitor/main.c b/Examples/MAX32670/Temp_Monitor/main.c index b2e39f12cf2..ee538032656 100644 --- a/Examples/MAX32670/Temp_Monitor/main.c +++ b/Examples/MAX32670/Temp_Monitor/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Temp_Monitor/project.mk b/Examples/MAX32670/Temp_Monitor/project.mk index aebbcc92b49..ff8bd9d0f82 100644 --- a/Examples/MAX32670/Temp_Monitor/project.mk +++ b/Examples/MAX32670/Temp_Monitor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/Temp_Monitor/temp_monitor.c b/Examples/MAX32670/Temp_Monitor/temp_monitor.c index 37c6c79826f..3c4edac4dc3 100644 --- a/Examples/MAX32670/Temp_Monitor/temp_monitor.c +++ b/Examples/MAX32670/Temp_Monitor/temp_monitor.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Temp_Monitor/temp_monitor.h b/Examples/MAX32670/Temp_Monitor/temp_monitor.h index 51c3bcc26cb..0d438a7188c 100644 --- a/Examples/MAX32670/Temp_Monitor/temp_monitor.h +++ b/Examples/MAX32670/Temp_Monitor/temp_monitor.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/UART/.vscode/README.md b/Examples/MAX32670/UART/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/UART/.vscode/README.md +++ b/Examples/MAX32670/UART/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/UART/.vscode/settings.json b/Examples/MAX32670/UART/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/UART/.vscode/settings.json +++ b/Examples/MAX32670/UART/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/UART/ARM/sct_config.h b/Examples/MAX32670/UART/ARM/sct_config.h index bd834e4dfc4..fcac9de813d 100644 --- a/Examples/MAX32670/UART/ARM/sct_config.h +++ b/Examples/MAX32670/UART/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/UART/Makefile b/Examples/MAX32670/UART/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/UART/Makefile +++ b/Examples/MAX32670/UART/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/UART/main.c b/Examples/MAX32670/UART/main.c index 9394fb7fcaf..3860a70238a 100644 --- a/Examples/MAX32670/UART/main.c +++ b/Examples/MAX32670/UART/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/UART/project.mk b/Examples/MAX32670/UART/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/UART/project.mk +++ b/Examples/MAX32670/UART/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/UART_DMA/.cproject b/Examples/MAX32670/UART_DMA/.cproject new file mode 100644 index 00000000000..c9d62244405 --- /dev/null +++ b/Examples/MAX32670/UART_DMA/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32670/UART_DMA/.project b/Examples/MAX32670/UART_DMA/.project new file mode 100644 index 00000000000..523d770068f --- /dev/null +++ b/Examples/MAX32670/UART_DMA/.project @@ -0,0 +1,26 @@ + + + UART_DMA + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32670/UART_DMA/.settings/language.settings.xml b/Examples/MAX32670/UART_DMA/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32670/UART_DMA/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32670/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32670/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32670/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32670/UART_DMA/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32670/UART_DMA/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..be8d77d441f --- /dev/null +++ b/Examples/MAX32670/UART_DMA/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=UART_DMA +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32670 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32670/UART_DMA/.settings/org.eclipse.core.resources.prefs b/Examples/MAX32670/UART_DMA/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 00000000000..99f26c0203a --- /dev/null +++ b/Examples/MAX32670/UART_DMA/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/Examples/MAX32670/UART_DMA/.vscode/README.md b/Examples/MAX32670/UART_DMA/.vscode/README.md new file mode 100755 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32670/UART_DMA/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32670/UART_DMA/.vscode/c_cpp_properties.json b/Examples/MAX32670/UART_DMA/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32670/UART_DMA/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32670/UART_DMA/.vscode/flash.gdb b/Examples/MAX32670/UART_DMA/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32670/UART_DMA/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32670/UART_DMA/.vscode/launch.json b/Examples/MAX32670/UART_DMA/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32670/UART_DMA/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32670/UART_DMA/.vscode/settings.json b/Examples/MAX32670/UART_DMA/.vscode/settings.json new file mode 100755 index 00000000000..69a6d5eb65e --- /dev/null +++ b/Examples/MAX32670/UART_DMA/.vscode/settings.json @@ -0,0 +1,79 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32670", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32670.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32670/UART_DMA/.vscode/tasks.json b/Examples/MAX32670/UART_DMA/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32670/UART_DMA/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32670/UART_DMA/Makefile b/Examples/MAX32670/UART_DMA/Makefile new file mode 100644 index 00000000000..5954b8b4b52 --- /dev/null +++ b/Examples/MAX32670/UART_DMA/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32670 +TARGET_UC := MAX32670 +TARGET_LC := max32670 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32670/UART_DMA/README.md b/Examples/MAX32670/UART_DMA/README.md new file mode 100644 index 00000000000..e83dcc41763 --- /dev/null +++ b/Examples/MAX32670/UART_DMA/README.md @@ -0,0 +1,71 @@ +## Description + +To demonstrate the use of the UART peripheral with DMA, data is sent between two UART ports on the MAX32670. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +(None - this project builds as a standard example) + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. +- Open an terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect P0.28 (UART 1 RX) -> P0.15 (UART 2 TX). + +## Expected Output + +The Console UART of the device will output these messages: + +``` +**************** UART Example ****************** +This example sends data from one UART to another + +Connect RX(Px.xx) of UARTx and TX(Px.xx) of UARTx. + +To indicate a successful UART transfer, LED1 will illuminate. + +Push SW2 to continue + +UART Baud : 115200 Hz +Test Length : 512 bytes + +-->UART Initialized + +-->Data verified + +-->Example Succeeded + +``` + +or + +``` +**************** UART Example ****************** +This example sends data from one UART to another + +Connect RX(Px.xx) of UARTx and TX(Px.xx) of UARTx. + +To indicate a successful UART transfer, LED1 will illuminate. + +Push SW2 to continue + +UART Baud : 115200 Hz +Test Length : 512 bytes + +Acquired DMA channel 0 for RX transaction +Acquired DMA channel 1 for TX transaction + +-->UART Initialized + +-->Data verified + +-->Example Succeeded + +``` \ No newline at end of file diff --git a/Examples/MAX32670/UART_DMA/UART_DMA.launch b/Examples/MAX32670/UART_DMA/UART_DMA.launch new file mode 100644 index 00000000000..ceeff9410ec --- /dev/null +++ b/Examples/MAX32670/UART_DMA/UART_DMA.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32670/UART_DMA/main.c b/Examples/MAX32670/UART_DMA/main.c new file mode 100644 index 00000000000..9184c3d3a93 --- /dev/null +++ b/Examples/MAX32670/UART_DMA/main.c @@ -0,0 +1,272 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Main for UART with DMA example. + * @details This example demonstrates how to use DMA with UART for data transfer. + * The example sets up DMA channels to handle UART transmissions and receptions, + * looping back the TX of one UART to the RX of another UART. A jumper must be + * connected between P0.28 (UART 1 RX) -> P0.15 (UART 2 TX). + * The example uses either automatic or manual DMA handler configuration + * depending on the AUTOHANDLERS macro definition. + */ + +/***** Includes *****/ +#include +#include +#include +#include "mxc_device.h" +#include "pb.h" +#include "board.h" +#include "mxc_delay.h" +#include "uart.h" +#include "dma.h" +#include "nvic_table.h" +#include "led.h" + +/***** Definitions *****/ +#define AUTOHANDLERS + +#define UART_BAUD 115200 +#define BUFF_SIZE 512 + +#define RX_UART MXC_UART1 +#define TX_UART MXC_UART2 + +/***** Globals *****/ +volatile int READ_FLAG; +volatile int WRITE_FLAG; +volatile int buttonPressed; +static mxc_uart_req_t read_req; +static mxc_uart_req_t write_req; + +/***** Functions *****/ +#ifndef AUTOHANDLERS +void DMA_RX_Handler(void) +{ + MXC_DMA_Handler(); +} + +void DMA_TX_Handler(void) +{ + MXC_DMA_Handler(); +} +#endif + +void readCallback(mxc_uart_req_t *req, int error) +{ + READ_FLAG = error; +} + +void writeCallback(mxc_uart_req_t *req, int error) +{ + WRITE_FLAG = error; +} + +void buttonHandler(void) +{ + buttonPressed = 1; +} + +#ifdef AUTOHANDLERS +int exampleDMAAutoHandlers(void) +{ + int error = 0; + + // Auto DMA handlers will automatically initialize DMA, acquire & assign channels, + // and guarantee that each transaction's callback function is executed when + // the transaction is complete. + MXC_UART_SetAutoDMAHandlers(RX_UART, true); + MXC_UART_SetAutoDMAHandlers(TX_UART, true); + + // "READ_FLAG" is set in the read transaction's callback. It will be set to 0 when + // the read request completes successfully. We use it to wait for the DMA transaction + // to complete, since the DMA APIs are asynchronous (non-blocking) + READ_FLAG = 1; + + error = MXC_UART_TransactionDMA(&read_req); + if (error) { + printf("-->Error starting DMA read: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + error = MXC_UART_TransactionDMA(&write_req); + if (error) { + printf("-->Error starting DMA write: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + while (READ_FLAG) {} + + printf("-->Transaction completed\n"); + return READ_FLAG; +} +#else +int exampleDMAManualHandlers(void) +{ + int error = 0; + + // Manally initialize DMA + MXC_DMA_Init(); + + // Manually acquire a channel for the read request and assign it to the drivers. + int rx_channel = MXC_DMA_AcquireChannel(); + if (rx_channel >= 0) { + printf("Acquired DMA channel %i for RX transaction\n", rx_channel); + } else { + printf("Failed to acquire RX DMA channel with error %i\n", rx_channel); + return rx_channel; + } + MXC_UART_SetRXDMAChannel(RX_UART, rx_channel); + + // Additionally, assign the NVIC IRQ to a function that calls "MXC_DMA_Handler()". + // This is required for any assigned callbacks to work. + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(rx_channel)); + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(rx_channel), DMA_RX_Handler); + + // Do the same for the write request. + int tx_channel = MXC_DMA_AcquireChannel(); + if (tx_channel >= 0) { + printf("Acquired DMA channel %i for RX transaction\n", tx_channel); + } else { + printf("Failed to acquire RX DMA channel with error %i\n", tx_channel); + return tx_channel; + } + MXC_UART_SetTXDMAChannel(TX_UART, tx_channel); + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(tx_channel)); + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(tx_channel), DMA_TX_Handler); + + // Initialize flags. We will use these to monitor when the read/write requests + // have completed, since the DMA APIs are asynchronous. + WRITE_FLAG = 1; + READ_FLAG = 1; + + error = MXC_UART_TransactionDMA(&read_req); + if (error) { + printf("-->Error starting DMA read: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + error = MXC_UART_TransactionDMA(&write_req); + if (error) { + printf("-->Error starting DMA write: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + while (WRITE_FLAG) {} + while (READ_FLAG) {} + + printf("-->Transaction completed\n"); + return WRITE_FLAG; +} +#endif // AUTOHANDLERS + +/******************************************************************************/ +int main(void) +{ + int error, i, fail = 0; + uint8_t TxData[BUFF_SIZE]; + uint8_t RxData[BUFF_SIZE]; + + printf("\n\n**************** UART Example ******************\n"); + printf("This example sends data from one UART to another\n"); + printf("\nConnect P0.28 (UART 1 RX) to P0.15 (UART 2 TX).\n\n"); + printf("To indicate a successful UART transfer, LED1 will illuminate.\n"); + printf("\nPush SW3 to continue\n"); + + buttonPressed = 0; + PB_RegisterCallback(0, (pb_callback)buttonHandler); + while (!buttonPressed) {} + + printf("\nUART Baud \t: %d Hz\n", UART_BAUD); + printf("Test Length \t: %d bytes\n\n", BUFF_SIZE); + + // Initialize the data buffers + for (i = 0; i < BUFF_SIZE; i++) { + TxData[i] = i; + } + memset(RxData, 0x0, BUFF_SIZE); + + // Initialize the UART + error = MXC_UART_Init(TX_UART, UART_BAUD, MXC_UART_APB_CLK); + if (error < E_NO_ERROR) { + printf("-->Error initializing UART: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + error = MXC_UART_Init(RX_UART, UART_BAUD, MXC_UART_APB_CLK); + if (error < E_NO_ERROR) { + printf("-->Error initializing UART: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + // Setup request structs describing the transactions. + // Request structs are placed in the global scope so they + // don't go out of context. This can happen when a req struct + // is declared inside a function and the function completes. + // The memory would be freed, invalidating the UART driver's + // pointers to it. + read_req.uart = RX_UART; + read_req.rxData = RxData; + read_req.rxLen = BUFF_SIZE; + read_req.txLen = 0; + read_req.callback = readCallback; + + write_req.uart = TX_UART; + write_req.txData = TxData; + write_req.txLen = BUFF_SIZE; + write_req.rxLen = 0; + write_req.callback = writeCallback; + + printf("-->UART Initialized\n\n"); + +#ifdef AUTOHANDLERS + error = exampleDMAAutoHandlers(); +#else + error = exampleDMAManualHandlers(); +#endif + + if (READ_FLAG != E_NO_ERROR) { + printf("-->Error with read callback; %d\n", READ_FLAG); + fail++; + } + + if ((error = memcmp(RxData, TxData, BUFF_SIZE)) != 0) { + printf("-->Error verifying Data: %d\n", error); + fail++; + } else { + printf("-->Data verified\n"); + } + + if (fail != 0) { + printf("\n-->Example Failed\n"); + LED_On(0); // indicates FAIL + return E_FAIL; + } + + LED_On(1); // indicates SUCCESS + printf("\n-->Example Succeeded\n"); + return E_NO_ERROR; +} diff --git a/Examples/MAX32670/UART_DMA/project.mk b/Examples/MAX32670/UART_DMA/project.mk new file mode 100644 index 00000000000..7e750c9c17a --- /dev/null +++ b/Examples/MAX32670/UART_DMA/project.mk @@ -0,0 +1,14 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +#BOARD=FTHR_RevA +# ^ For example, you can uncomment this line to make the +# project build for the "FTHR_RevA" board. + +# ********************************************************** + +# Add your config here! diff --git a/Examples/MAX32670/UCL/.vscode/README.md b/Examples/MAX32670/UCL/.vscode/README.md index f57d4364851..cc0783881d1 100644 --- a/Examples/MAX32670/UCL/.vscode/README.md +++ b/Examples/MAX32670/UCL/.vscode/README.md @@ -4,14 +4,14 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) -* [Wiki](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/wiki) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) +* [Wiki](https://github.com/analogdevicesinc/VSCode-Maxim/wiki) * If it's not in the readme, check the wiki. * If it's not in the wiki, open a ticket! ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. The following features are supported: @@ -91,7 +91,7 @@ Ex: ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MaximSDK installation. @@ -413,7 +413,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the diff --git a/Examples/MAX32670/UCL/ARM/sct_config.h b/Examples/MAX32670/UCL/ARM/sct_config.h index e14f65aeed2..175f5592c09 100644 --- a/Examples/MAX32670/UCL/ARM/sct_config.h +++ b/Examples/MAX32670/UCL/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/UCL/Makefile b/Examples/MAX32670/UCL/Makefile index 50baec2f51b..db5da3e66f5 100644 --- a/Examples/MAX32670/UCL/Makefile +++ b/Examples/MAX32670/UCL/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -25,7 +24,7 @@ # in "project.mk", on the command-line, or with system environment # variables. -# See https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# See https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # for more detailed instructions on how to use this system. # The detailed instructions mentioned above are easier to read than @@ -375,7 +374,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/UCL/project.mk b/Examples/MAX32670/UCL/project.mk index d880db33a8e..b6e125dbf45 100644 --- a/Examples/MAX32670/UCL/project.mk +++ b/Examples/MAX32670/UCL/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/Watchdog/.vscode/README.md b/Examples/MAX32670/Watchdog/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/Watchdog/.vscode/README.md +++ b/Examples/MAX32670/Watchdog/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/Watchdog/.vscode/settings.json b/Examples/MAX32670/Watchdog/.vscode/settings.json index 61b24bd6739..69a6d5eb65e 100755 --- a/Examples/MAX32670/Watchdog/.vscode/settings.json +++ b/Examples/MAX32670/Watchdog/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/Watchdog/ARM/sct_config.h b/Examples/MAX32670/Watchdog/ARM/sct_config.h index 39701527245..597ada68cdf 100644 --- a/Examples/MAX32670/Watchdog/ARM/sct_config.h +++ b/Examples/MAX32670/Watchdog/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/Watchdog/Makefile b/Examples/MAX32670/Watchdog/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/Watchdog/Makefile +++ b/Examples/MAX32670/Watchdog/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/Watchdog/main.c b/Examples/MAX32670/Watchdog/main.c index bf88fe6e8ba..63845825c8d 100644 --- a/Examples/MAX32670/Watchdog/main.c +++ b/Examples/MAX32670/Watchdog/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -63,7 +62,7 @@ static mxc_wdt_cfg_t cfg; /***** Functions *****/ // ***************************************************************************** -void watchdogHandler() +void watchdogHandler(void) { MXC_WDT_ClearIntFlag(MXC_WDT0); printf("\nTIMEOUT! \n"); @@ -75,14 +74,14 @@ void WDT0_IRQHandler(void) watchdogHandler(); } // ***************************************************************************** -void MXC_WDT_Setup() +void MXC_WDT_Setup(void) { MXC_WDT_Disable(MXC_WDT0); MXC_WDT_ResetTimer(MXC_WDT0); MXC_WDT_Enable(MXC_WDT0); } -void SW1_Callback() +void SW1_Callback(void) { printf("\nEnabling Timeout Interrupt...\n"); MXC_WDT_Disable(MXC_WDT0); diff --git a/Examples/MAX32670/Watchdog/project.mk b/Examples/MAX32670/Watchdog/project.mk index 7e750c9c17a..d296a156a11 100644 --- a/Examples/MAX32670/Watchdog/project.mk +++ b/Examples/MAX32670/Watchdog/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/WearLeveling/.vscode/README.md b/Examples/MAX32670/WearLeveling/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32670/WearLeveling/.vscode/README.md +++ b/Examples/MAX32670/WearLeveling/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32670/WearLeveling/.vscode/settings.json b/Examples/MAX32670/WearLeveling/.vscode/settings.json index 1e73c442ec0..5b716f68146 100755 --- a/Examples/MAX32670/WearLeveling/.vscode/settings.json +++ b/Examples/MAX32670/WearLeveling/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32670/WearLeveling/ARM/sct_config.h b/Examples/MAX32670/WearLeveling/ARM/sct_config.h index 08a9b0ce7ac..50ca376218a 100644 --- a/Examples/MAX32670/WearLeveling/ARM/sct_config.h +++ b/Examples/MAX32670/WearLeveling/ARM/sct_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/WearLeveling/Makefile b/Examples/MAX32670/WearLeveling/Makefile index b5795cd6e0f..5954b8b4b52 100644 --- a/Examples/MAX32670/WearLeveling/Makefile +++ b/Examples/MAX32670/WearLeveling/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32670/WearLeveling/include/cmd_table.h b/Examples/MAX32670/WearLeveling/include/cmd_table.h index a117f0b13fe..d8a909120c8 100644 --- a/Examples/MAX32670/WearLeveling/include/cmd_table.h +++ b/Examples/MAX32670/WearLeveling/include/cmd_table.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/WearLeveling/include/file.h b/Examples/MAX32670/WearLeveling/include/file.h index b658e68b242..d58bea82017 100644 --- a/Examples/MAX32670/WearLeveling/include/file.h +++ b/Examples/MAX32670/WearLeveling/include/file.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/WearLeveling/include/flash.h b/Examples/MAX32670/WearLeveling/include/flash.h index 9bbb41a8355..b4488fa8c64 100644 --- a/Examples/MAX32670/WearLeveling/include/flash.h +++ b/Examples/MAX32670/WearLeveling/include/flash.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/WearLeveling/main.c b/Examples/MAX32670/WearLeveling/main.c index f713c697a8f..55643707be1 100644 --- a/Examples/MAX32670/WearLeveling/main.c +++ b/Examples/MAX32670/WearLeveling/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/WearLeveling/project.mk b/Examples/MAX32670/WearLeveling/project.mk index 26fc0b88eed..8ffec05dac2 100644 --- a/Examples/MAX32670/WearLeveling/project.mk +++ b/Examples/MAX32670/WearLeveling/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32670/WearLeveling/src/file.c b/Examples/MAX32670/WearLeveling/src/file.c index dec9a57200f..ddb03186181 100644 --- a/Examples/MAX32670/WearLeveling/src/file.c +++ b/Examples/MAX32670/WearLeveling/src/file.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32670/WearLeveling/src/flash.c b/Examples/MAX32670/WearLeveling/src/flash.c index 0a6dbb4a889..7f67c29690c 100644 --- a/Examples/MAX32670/WearLeveling/src/flash.c +++ b/Examples/MAX32670/WearLeveling/src/flash.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/ADC/.vscode/README.md b/Examples/MAX32672/ADC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/ADC/.vscode/README.md +++ b/Examples/MAX32672/ADC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/ADC/.vscode/settings.json b/Examples/MAX32672/ADC/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/ADC/.vscode/settings.json +++ b/Examples/MAX32672/ADC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/ADC/Makefile b/Examples/MAX32672/ADC/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/ADC/Makefile +++ b/Examples/MAX32672/ADC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/ADC/main.c b/Examples/MAX32672/ADC/main.c index 169fff25650..bc3da067ef7 100644 --- a/Examples/MAX32672/ADC/main.c +++ b/Examples/MAX32672/ADC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/ADC/project.mk b/Examples/MAX32672/ADC/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/ADC/project.mk +++ b/Examples/MAX32672/ADC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/ADC_DMA_RMS/.cproject b/Examples/MAX32672/ADC_DMA_RMS/.cproject new file mode 100644 index 00000000000..9ead3f985fd --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/.cproject @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32672/ADC_DMA_RMS/.project b/Examples/MAX32672/ADC_DMA_RMS/.project new file mode 100644 index 00000000000..6cef97f5e95 --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/.project @@ -0,0 +1,26 @@ + + + ADC_DMA_RMS + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32672/ADC_DMA_RMS/.settings/language.settings.xml b/Examples/MAX32672/ADC_DMA_RMS/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32672/ADC_DMA_RMS/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32672/ADC_DMA_RMS/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32672/ADC_DMA_RMS/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32672/ADC_DMA_RMS/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..70832da36c1 --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=ADC_DMA_RMS +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32672 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.vscode/README.md b/Examples/MAX32672/ADC_DMA_RMS/.vscode/README.md old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_CDC/.vscode/README.md rename to Examples/MAX32672/ADC_DMA_RMS/.vscode/README.md diff --git a/Examples/MAX32672/ADC_DMA_RMS/.vscode/c_cpp_properties.json b/Examples/MAX32672/ADC_DMA_RMS/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32672/ADC_DMA_RMS/.vscode/flash.gdb b/Examples/MAX32672/ADC_DMA_RMS/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32672/ADC_DMA_RMS/.vscode/launch.json b/Examples/MAX32672/ADC_DMA_RMS/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32672/ADC_DMA_RMS/.vscode/settings.json b/Examples/MAX32672/ADC_DMA_RMS/.vscode/settings.json new file mode 100644 index 00000000000..948202f52a1 --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/.vscode/settings.json @@ -0,0 +1,84 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32672", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32672.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32672/ADC_DMA_RMS/.vscode/tasks.json b/Examples/MAX32672/ADC_DMA_RMS/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32672/ADC_DMA_RMS/ADC_DMA_RMS.launch b/Examples/MAX32672/ADC_DMA_RMS/ADC_DMA_RMS.launch new file mode 100644 index 00000000000..0ce5b93a856 --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/ADC_DMA_RMS.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32672/ADC_DMA_RMS/CM4_Utils.c b/Examples/MAX32672/ADC_DMA_RMS/CM4_Utils.c new file mode 100644 index 00000000000..050230100fa --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/CM4_Utils.c @@ -0,0 +1,41 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#include "CM4_Utils.h" + +/* + This algorithm comes from Jack W. Crenshaw's 1998 article in Embedded: + http://www.embedded.com/electronics-blogs/programmer-s-toolbox/4219659/Integer-Square-Roots + + And book 'Math Toolkit for Realtime Programming' + Jack Crenshaw (2000) Math Toolkit for Real-Time Programming. Lawrence, Kan: CRC Press. +*/ +uint16_t sqrt32(uint32_t a) +{ + uint32_t rem = 0, root = 0; + + for (int i = 32 / 2; i > 0; i--) { + root <<= 1; + rem = (rem << 2) | (a >> (32 - 2)); + a <<= 2; + if (root < rem) { + rem -= root | 1; + root += 2; + } + } + return root >> 1; +} diff --git a/Examples/MAX32672/ADC_DMA_RMS/CM4_Utils.h b/Examples/MAX32672/ADC_DMA_RMS/CM4_Utils.h new file mode 100644 index 00000000000..a80f7ba8c3f --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/CM4_Utils.h @@ -0,0 +1,103 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#ifndef EXAMPLES_MAX32672_ADC_DMA_RMS_CM4_UTILS_H_ +#define EXAMPLES_MAX32672_ADC_DMA_RMS_CM4_UTILS_H_ + +#include + +/* + * Helper union for working with 64-bit data in memory and pulling out the + * 32-bit components + */ +typedef union { + int64_t i64; + struct { + int32_t i32lo; + int32_t i32hi; + } words; +} int64_wrapper_t; + +/** + * Helper union for working with 32-bit data in memory and pulling out the + * 16-bit components + */ +typedef union { + int32_t i32; + struct { + int16_t i16lo; + int16_t i16hi; + } words; +} int32_wrapper_t; + +/******************************************************************************* + * The GCC built in intrinsics for assembly calls is not complete, specifically + * with instructions that have optional extra features built into the encodings + * such as UXTAH {,} , {, } where the rotation value is + * 8,16, or 24 bits, and is part of the actual instruction. + * + * This collection of inline functions provides shortcuts to including assembly + * calls into code + */ + +/* Signed Multiply, Accumulate Long, Bottom x Bottom + * This multiplies the bottom 16-bits of both word1 and word2 together, and adds + * result to the 64-bit accumulation value + */ +inline int64_t __SMLALBB(int32_t word1, int32_t word2, int64_t acc) +{ + int64_wrapper_t llr = { .i64 = acc }; + + asm("smlalbb %0, %1, %2, %3" + : "=r"(llr.words.i32lo), "=r"(llr.words.i32hi) + : "r"(word1), "r"(word2), "0"(llr.words.i32lo), "1"(llr.words.i32hi)); + return (llr.i64); +} + +/* Signed Multiply, Accumulate Long, Top x Top + * This multiplies the top 16-bits of both word1 and word2 together, and adds + * result to the 64-bit accumulation value + */ +inline int64_t __SMLALTT(int32_t word1, int32_t word2, int64_t acc) +{ + int64_wrapper_t llr = { .i64 = acc }; + + asm("smlaltt %0, %1, %2, %3" + : "=r"(llr.words.i32lo), "=r"(llr.words.i32hi) + : "r"(word1), "r"(word2), "0"(llr.words.i32lo), "1"(llr.words.i32hi)); + return (llr.i64); +} + +/* Dual signed 16 subtraction. Subtracts each halfword from the second operand + * from the corresponding halfword of the first operand + */ +inline uint32_t __SSUB16(uint32_t src1, uint32_t src2) +{ + uint32_t result; + asm("ssub16 %0, %1, %2 " : "=r "(result) : "r"(src1), "r"(src2)); + return (result); +} + +/** + * Our implementation of a integer square root function for 32-bit values + * + * @param a - Value to calculate square root of + * @returns Square root value + */ +uint16_t sqrt32(uint32_t a); + +#endif // EXAMPLES_MAX32672_ADC_DMA_RMS_CM4_UTILS_H_ diff --git a/Examples/MAX32672/ADC_DMA_RMS/Debug.c b/Examples/MAX32672/ADC_DMA_RMS/Debug.c new file mode 100644 index 00000000000..a3c49addfcb --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/Debug.c @@ -0,0 +1,41 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#include "Debug.h" + +void DebugInitialize() +{ + mxc_gpio_cfg_t pinCfg; + + pinCfg.func = MXC_GPIO_FUNC_OUT; + pinCfg.mask = DBG_IRQ_PIN; + pinCfg.port = DBG_IRQ_PORT; + pinCfg.vssel = MXC_GPIO_VSSEL_VDDIOH; + pinCfg.pad = MXC_GPIO_PAD_NONE; + pinCfg.drvstr = MXC_GPIO_DRVSTR_0; + MXC_GPIO_OutClr(DBG_IRQ_PORT, DBG_IRQ_PIN); + MXC_GPIO_Config(&pinCfg); + + pinCfg.func = MXC_GPIO_FUNC_OUT; + pinCfg.mask = DBG_SQ_PIN; + pinCfg.port = DBG_SQ_PORT; + pinCfg.vssel = MXC_GPIO_VSSEL_VDDIOH; + pinCfg.pad = MXC_GPIO_PAD_NONE; + pinCfg.drvstr = MXC_GPIO_DRVSTR_0; + MXC_GPIO_OutClr(DBG_SQ_PORT, DBG_SQ_PIN); + MXC_GPIO_Config(&pinCfg); +} diff --git a/Examples/MAX32672/ADC_DMA_RMS/Debug.h b/Examples/MAX32672/ADC_DMA_RMS/Debug.h new file mode 100644 index 00000000000..d6adeff7066 --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/Debug.h @@ -0,0 +1,42 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#ifndef EXAMPLES_MAX32672_ADC_DMA_RMS_DEBUG_H_ +#define EXAMPLES_MAX32672_ADC_DMA_RMS_DEBUG_H_ + +#include "mxc_device.h" +#include "gpio.h" + +/* Pin definitions for the Debug GPIO Toggling */ +#define DBG_IRQ_PORT MXC_GPIO0 +#define DBG_IRQ_PIN MXC_GPIO_PIN_6 +#define DBG_SQ_PORT MXC_GPIO0 +#define DBG_SQ_PIN MXC_GPIO_PIN_7 + +/* MACROS to help Toggle some test GPIOS */ +#define DBG_IRQ_START() (MXC_GPIO_OutSet(DBG_IRQ_PORT, DBG_IRQ_PIN)) +#define DBG_IRQ_END() (MXC_GPIO_OutClr(DBG_IRQ_PORT, DBG_IRQ_PIN)) +#define DBG_SQ_START() (MXC_GPIO_OutSet(DBG_SQ_PORT, DBG_SQ_PIN)) +#define DBG_SQ_END() (MXC_GPIO_OutClr(DBG_SQ_PORT, DBG_SQ_PIN)) + +/** + * Initializes the debug functionality. Must be called before doing any GPIO + * toggles + */ +void DebugInitialize(void); + +#endif // EXAMPLES_MAX32672_ADC_DMA_RMS_DEBUG_H_ diff --git a/Examples/MAX32672/ADC_DMA_RMS/InternalADC.c b/Examples/MAX32672/ADC_DMA_RMS/InternalADC.c new file mode 100644 index 00000000000..1ef16acabd1 --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/InternalADC.c @@ -0,0 +1,294 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#include "adc.h" +#include "dma.h" +#include "fcr_regs.h" +#include "mcr_regs.h" +#include "mxc_device.h" +#include "nvic_table.h" + +#include "Debug.h" +#include "InternalADC.h" + +/* Define the data type of the samples. */ +#define DMA_SAMPLE_TYPE uint32_t + +/* Size of each DMA buffer in bytes */ +#define DMA_BUFFER_BYTES (sizeof(DMA_SAMPLE_TYPE) * INTERNAL_ADC_DMA_BLOCK_SIZE) + +/* Helper constant to know if a DMA channel isn't allocated */ +#define DMA_CHANNEL_INVALID -1 + +/* MACRO to help bank swapping the DMA buffers */ +#define DMA_QUEUE_NEXT(idx) (idx ^ 0x1) + +/* Bank swapping DMA buffer allocation */ +static DMA_SAMPLE_TYPE adcDMA_Buffers[2][INTERNAL_ADC_DMA_BLOCK_SIZE]; + +/* Indexes of current buffer uses */ +static volatile int activeIndex = 0; +static volatile int reloadIndex = 1; + +/* Currently assigned DMA channel */ +static int adcDMA_ChannelID = DMA_CHANNEL_INVALID; + +/* Configuration of the ADC conversion slot - FTHR AIN3 */ +static mxc_adc_slot_req_t adcSingleSlot = { MXC_ADC_CH_3, MXC_ADC_DIV2_5K, MXC_ADC_PY_DN_DISABLE }; + +/* User callback function for sample blocks */ +static ADC_Callback dmaCallback = NULL; + +/* Prototypes */ +static void InternalADC_ISR(void); +static void InternalADC_DMA_SetupAndStart(void); +static void InternalADC_DMA_Callback(int ch, int err); +static void InternalADC_Reload(void); +static void InternalADC_TrimRef(void); + +void InternalADC_Init() +{ + mxc_adc_req_t adcConfig; + + adcConfig.clock = MXC_ADC_CLK_HCLK; //100MHz System Clock + adcConfig.clkdiv = MXC_ADC_CLKDIV_4; //25MHz, maximum allowed per datasheet + adcConfig.cal = MXC_ADC_EN_CAL; //Enable calibration values + + //Effective Sample rate 25/51 = 490196 + //Minimum values: Track + Idle = 8 + 17 = 25 + adcConfig.trackCount = 13; //Really is 4 + 13 = 17 + adcConfig.idleCount = 17; //Really is 17 + 17 = 34 + adcConfig.ref = MXC_ADC_REF_INT_2V048; + + /* Initialize ADC */ + if (MXC_ADC_Init(&adcConfig) != E_NO_ERROR) { + //Error Handling + } + + //Calibrate the reference voltage + InternalADC_TrimRef(); + + //Enable Interrupts + MXC_NVIC_SetVector(ADC_IRQn, InternalADC_ISR); + NVIC_EnableIRQ(ADC_IRQn); +} + +void InternalADC_StartSampling(ADC_Callback callback) +{ + mxc_adc_conversion_req_t adcConv; + + if (adcDMA_ChannelID != DMA_CHANNEL_INVALID) { + //Already running + return; + } + + dmaCallback = callback; + + adcConv.mode = MXC_ADC_CONTINUOUS_CONV; //Run forever + adcConv.trig = MXC_ADC_TRIG_SOFTWARE; //Started by software + adcConv.avg_number = MXC_ADC_AVG_1; //No averaging + adcConv.fifo_format = MXC_ADC_DATA; //Data only. + adcConv.lpmode_divder = MXC_ADC_DIV_2_5K_50K_DISABLE; + adcConv.num_slots = 0; //1 slot/single channel + adcConv.fifo_threshold = 0; + MXC_ADC_Configuration(&adcConv); + MXC_ADC_SlotConfiguration(&adcSingleSlot, 0); + + //Default the buffer indexes + activeIndex = 0; + reloadIndex = 1; + + //Start the DMA conversions + InternalADC_DMA_SetupAndStart(); + + //Reload to prime the next block + InternalADC_Reload(); +} + +void InternalADC_StopSampling() +{ + if (adcDMA_ChannelID != DMA_CHANNEL_INVALID) { + MXC_ADC_DisableConversion(); + MXC_DMA_Stop(adcDMA_ChannelID); + MXC_DMA_ReleaseChannel(adcDMA_ChannelID); + NVIC_DisableIRQ(MXC_DMA_CH_GET_IRQ(adcDMA_ChannelID)); + adcDMA_ChannelID = DMA_CHANNEL_INVALID; + } +} + +/** + * Reloads the DMA to configure the next buffer on completion. This can happen + * at any point after the current DMA operation starts. +*/ +static void InternalADC_Reload() +{ + mxc_dma_srcdst_t srcdst; + srcdst.ch = adcDMA_ChannelID; + srcdst.dest = adcDMA_Buffers[reloadIndex]; + srcdst.len = DMA_BUFFER_BYTES; + MXC_DMA_SetSrcReload(srcdst); + reloadIndex = DMA_QUEUE_NEXT(reloadIndex); +} + +/** + * ISR for completion of DMA conversions + */ +static void InternalADC_DMA_Callback(int ch, int err) +{ + DBG_IRQ_START(); //GPIO for timing + //At this point the reloaded ADC DMA conversions should be underway, so go + //ahead and reload again. + InternalADC_Reload(); + + if (dmaCallback) { + dmaCallback(adcDMA_Buffers[activeIndex], INTERNAL_ADC_DMA_BLOCK_SIZE); + } + + activeIndex = DMA_QUEUE_NEXT(activeIndex); + DBG_IRQ_END(); //GPIO for timing +} + +/** + * This is a custom implementation of the MSDKs MXC_ADC_StartConversionDMA call + * to support getting multiple samples from a single channel, as well as only + * grabbing 16 bits of data without channel or status information +*/ +#include "adc_revb.h" +//This constant taken from adc_revb.c +#define ADC_IF_MASK \ + (MXC_F_ADC_REVB_INTFL_READY | MXC_F_ADC_REVB_INTFL_ABORT | MXC_F_ADC_REVB_INTFL_START_DET | \ + MXC_F_ADC_REVB_INTFL_SEQ_STARTED | MXC_F_ADC_REVB_INTFL_SEQ_DONE | \ + MXC_F_ADC_REVB_INTFL_CONV_DONE | MXC_F_ADC_REVB_INTFL_CLIPPED | \ + MXC_F_ADC_REVB_INTFL_FIFO_LVL | MXC_F_ADC_REVB_INTFL_FIFO_UFL | \ + MXC_F_ADC_REVB_INTFL_FIFO_OFL) +void InternalADC_DMA_SetupAndStart() +{ + mxc_dma_config_t config; + mxc_dma_srcdst_t srcdst; + + // Clear interrupt flags + MXC_ADC_ClearFlags(ADC_IF_MASK); + + MXC_ADC->fifodmactrl |= MXC_F_ADC_REVB_FIFODMACTRL_FLUSH; //Flush data FIFO + MXC_ADC->fifodmactrl |= MXC_S_ADC_REVB_FIFODMACTRL_DATA_FORMAT_DATA_ONLY; //Transfer data only + MXC_ADC->fifodmactrl |= MXC_F_ADC_REVB_FIFODMACTRL_DMA_EN; //Enable ADC DMA + + //Get an ADC Channel + adcDMA_ChannelID = MXC_DMA_AcquireChannel(); + + config.reqsel = MXC_DMA_REQUEST_ADC; + config.ch = adcDMA_ChannelID; + + //ADC FIFO must be read in 32-bit words per the hardware design + config.srcwd = MXC_DMA_WIDTH_WORD; + config.dstwd = MXC_DMA_WIDTH_WORD; + config.srcinc_en = 0; + config.dstinc_en = 1; + + srcdst.ch = adcDMA_ChannelID; + srcdst.source = NULL; + srcdst.dest = adcDMA_Buffers[activeIndex]; + srcdst.len = DMA_BUFFER_BYTES; + + MXC_DMA_ConfigChannel(config, srcdst); + MXC_DMA_SetCallback(adcDMA_ChannelID, InternalADC_DMA_Callback); + + MXC_DMA->ch[adcDMA_ChannelID].ctrl |= (sizeof(DMA_SAMPLE_TYPE) - 1) + << MXC_F_DMA_CTRL_BURST_SIZE_POS; + + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(adcDMA_ChannelID)); + MXC_DMA_EnableInt(adcDMA_ChannelID); + MXC_DMA_Start(adcDMA_ChannelID); + MXC_DMA_SetChannelInterruptEn(adcDMA_ChannelID, 0, 1); + + MXC_ADC->ctrl1 |= MXC_F_ADC_REVB_CTRL1_START; +} + +/** + * Performs the trim/calibration for the internal reference. This procedure was + * taken from the MAX32672 Users Manual + */ +static void InternalADC_TrimRef() +{ + uint32_t tempData; + uint32_t tempReg; + //Enter nap state + MXC_ADC->ctrl0 &= ~MXC_F_ADC_CTRL0_ADC_EN; + + //Clear Skip Cal + MXC_ADC->ctrl0 &= ~MXC_F_ADC_CTRL0_SKIP_CAL; + + //Clear ADC Interrupt Flags + MXC_ADC_ClearFlags(0xFFFFFFFF); + + //The following is for the 2.048V Reference. Procedure would need updating + //for other references + MXC_ADC->sfraddr = 0x01; + tempData = MXC_ADC->sfrrddata; + tempData |= 0x0F; + MXC_ADC->sfrwrdata = tempData; + + MXC_ADC->sfraddr = 0x0B; + tempData = MXC_ADC->sfrrddata; + tempData &= 0xC0; + tempData |= ((MXC_FCR->adcreftrim0 & MXC_F_FCR_ADCREFTRIM0_VX2_TUNE) >> + MXC_F_FCR_ADCREFTRIM0_VX2_TUNE_POS); + MXC_ADC->sfrwrdata = tempData; + + tempReg = 0; + tempData = (MXC_FCR->adcreftrim1 & MXC_F_FCR_ADCREFTRIM1_VCM) >> MXC_F_FCR_ADCREFTRIM1_VCM_POS; + tempReg |= ((tempData << MXC_F_MCR_ADC_CFG3_VCM_POS) & MXC_F_MCR_ADC_CFG3_VCM); + tempData = (MXC_FCR->adcreftrim1 & MXC_F_FCR_ADCREFTRIM1_VREFM) >> + MXC_F_FCR_ADCREFTRIM1_VREFM_POS; + tempReg |= ((tempData << MXC_F_MCR_ADC_CFG3_VREFM_POS) & MXC_F_MCR_ADC_CFG3_VREFM); + tempData = (MXC_FCR->adcreftrim1 & MXC_F_FCR_ADCREFTRIM1_VREFP) >> + MXC_F_FCR_ADCREFTRIM1_VREFP_POS; + tempReg |= ((tempData << MXC_F_MCR_ADC_CFG3_VREFP_POS) & MXC_F_MCR_ADC_CFG3_VREFP); + tempData = (MXC_FCR->adcreftrim2 & MXC_F_FCR_ADCREFTRIM2_IBOOST_2P048) >> + MXC_F_FCR_ADCREFTRIM2_IBOOST_2P048_POS; + tempReg |= ((tempData << MXC_F_MCR_ADC_CFG3_D_IBOOST_POS) & MXC_F_MCR_ADC_CFG3_D_IBOOST); + tempData = (MXC_FCR->adcreftrim2 & MXC_F_FCR_ADCREFTRIM2_IDRV_2P048) >> + MXC_F_FCR_ADCREFTRIM2_IDRV_2P048_POS; + tempReg |= ((tempData << MXC_F_MCR_ADC_CFG3_IDRV_POS) & MXC_F_MCR_ADC_CFG3_IDRV); + MXC_MCR->adc_cfg3 = tempReg; + + MXC_ADC->sfraddr = 0x05; + tempData = MXC_ADC->sfrrddata; + tempData &= 0xF0; + tempData |= 6; //Closest value for 500ksps + MXC_ADC->sfrwrdata = tempData; + + MXC_ADC->sfraddr = 0x06; + tempData = MXC_ADC->sfrrddata; + tempData &= 0xF0; + tempData |= 6; //Closest value for 500ksps + MXC_ADC->sfrwrdata = tempData; + + //Enable + MXC_ADC->ctrl0 |= MXC_F_ADC_CTRL0_ADC_EN; + + //wait for calibration to complete + while (!(MXC_ADC->intfl & MXC_F_ADC_INTFL_READY)) {} +} + +/** + * ADC ISR handler. Just clear the flags since DMA drives the real data + */ +static void InternalADC_ISR() +{ + MXC_ADC_ClearFlags(0xFFFFFFFF); +} diff --git a/Examples/MAX32672/ADC_DMA_RMS/InternalADC.h b/Examples/MAX32672/ADC_DMA_RMS/InternalADC.h new file mode 100644 index 00000000000..1816074a20e --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/InternalADC.h @@ -0,0 +1,55 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#ifndef EXAMPLES_MAX32672_ADC_DMA_RMS_INTERNALADC_H_ +#define EXAMPLES_MAX32672_ADC_DMA_RMS_INTERNALADC_H_ + +#include +#include + +/* Sample rate of the ADC in SPS. This is a informative constant. The code needs + to be changed to change the sample rate + */ +#define INTERNAL_ADC_SAMPLE_RATE 490196 + +/* How many samples per block of DMA conversions before notifying the user. This + has a direct impact on IRQ frequency and RAM utilization + */ +#define INTERNAL_ADC_DMA_BLOCK_SIZE 1024 + +/* Prototype for callback functionality */ +typedef void (*ADC_Callback)(uint32_t *blockAddr, uint32_t count); + +/** + * Initializes the internal ADC interface + */ +void InternalADC_Init(void); + +/** + * Starts the autonomous conversion process. Callback will be called from an ISR + * context on every completed DMA block + * + * @param callback - Callback function + */ +void InternalADC_StartSampling(ADC_Callback callback); + +/** + * Stops the background ADC processing + */ +void InternalADC_StopSampling(void); + +#endif // EXAMPLES_MAX32672_ADC_DMA_RMS_INTERNALADC_H_ diff --git a/Examples/MAX32672/ADC_DMA_RMS/Makefile b/Examples/MAX32672/ADC_DMA_RMS/Makefile new file mode 100644 index 00000000000..b0b9c0a7ff2 --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/Makefile @@ -0,0 +1,383 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. + # (now owned by Analog Devices, Inc.), + # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software + # is proprietary to Analog Devices, Inc. and its licensors. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32672 +TARGET_UC := MAX32672 +TARGET_LC := max32672 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32672/ADC_DMA_RMS/MovingAverage.c b/Examples/MAX32672/ADC_DMA_RMS/MovingAverage.c new file mode 100644 index 00000000000..066997c15aa --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/MovingAverage.c @@ -0,0 +1,57 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#include "MovingAverage.h" + +void MovingAverageInitialize(moving_average_instance_t *inst, uint16_t *window, uint8_t windowSize) +{ + inst->window = window; + inst->index = 0; + inst->count = 0; + inst->windowSize = windowSize; + inst->workingSum = 0; + inst->lastVal = 0; +} + +void MovingAverageReset(moving_average_instance_t *inst) +{ + inst->count = 0; + inst->index = 0; + inst->workingSum = 0; + inst->lastVal = 0; +} + +uint16_t MovingAverageFilter(moving_average_instance_t *inst, uint16_t sample) +{ + if (inst->count == inst->windowSize) //Window has reached capacity + { + inst->workingSum -= inst->window[inst->index]; + inst->window[inst->index] = sample; + inst->workingSum += sample; + } else { //Window hasn't filled up yet + inst->window[inst->index] = sample; + inst->workingSum += sample; + inst->count++; + } + + /* Note: If windowSize/count becomes power of 2, both these steps can + be simplified/optimized for execution time + */ + inst->lastVal = inst->workingSum / inst->count; + inst->index = (inst->index + 1) % inst->windowSize; + return inst->lastVal; +} diff --git a/Examples/MAX32672/ADC_DMA_RMS/MovingAverage.h b/Examples/MAX32672/ADC_DMA_RMS/MovingAverage.h new file mode 100644 index 00000000000..d8e269482fa --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/MovingAverage.h @@ -0,0 +1,61 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#ifndef EXAMPLES_MAX32672_ADC_DMA_RMS_MOVINGAVERAGE_H_ +#define EXAMPLES_MAX32672_ADC_DMA_RMS_MOVINGAVERAGE_H_ +#include + +/** + * Structure for holding a moving average instance + */ +typedef struct { + uint16_t *window; //Needs to be memory allocated by user + uint32_t workingSum; + uint16_t lastVal; + uint8_t index; + uint8_t count; + uint8_t windowSize; +} moving_average_instance_t; + +/** + * Initializes an instance of a moving average filter. Both the instance and + * window should be pre-allocated memory by the user. The window buffer must be + * at least windowSize big to prevent overflow + * + * @param inst - Instance pointer to initialize + * @param window - Window buffer + * @param windowSize - size of the window +*/ +void MovingAverageInitialize(moving_average_instance_t *inst, uint16_t *window, uint8_t windowSize); + +/** + * Resets the state of the Moving Average Filter + * + * @param inst - Instance to reset + */ +void MovingAverageReset(moving_average_instance_t *inst); + +/** + * Performs the moving average filtering operation. + * + * @param inst - Instance to work on + * @param sample - Sample to filter + * @returns New filtered result + */ +uint16_t MovingAverageFilter(moving_average_instance_t *inst, uint16_t sample); + +#endif // EXAMPLES_MAX32672_ADC_DMA_RMS_MOVINGAVERAGE_H_ diff --git a/Examples/MAX32672/ADC_DMA_RMS/README.md b/Examples/MAX32672/ADC_DMA_RMS/README.md new file mode 100644 index 00000000000..01e3f27ea06 --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/README.md @@ -0,0 +1,120 @@ +# Description + +This example demonstrates utilizing the integrated ADC with DMA to continuously +sample converter data from a single channel for signal processing applications. + +This application performs a simple RMS calculation on the input signals, filters +the data through a moving average filter, and optionally provides the result +via the console and/or a SPI connected AD5592r configured as a DAC. + +## ADC Configuration + +The internal ADC is configured to run at a sample rate of approximately 500ksps +(490196). The ADC is configured with the internal 2.048VDC reference, and +trimmed using the defined calibration procedure. The input features a /2, giving +an actual input range of 0 - 4.096VDC. + +## ADC DMA Operation + +The ADC conversion is continuous, and as a result double buffering is utilized +with the DMA engine. To accomplish a continuous stream of data, while a block +of samples is being processed by the RMS engine, a second block is being loaded +by the DMA. Through the use of the reload feature, the DMA engine can be +configured to continuously provide sample data to the application. + +## RMS Calculation + +The RMS calculation subtracts a DC offset of 2.048VDC from the sample to create +a simulated AC input signal. For testing, all AC input signals should be centered +around a mid point 2.048VDC. The current 'block size' for the RMS calculation +is 32768 samples, which equates to a RMS output rate of approximately 15Hz. + +## AD5592r Output + +To visualize the calculated RMS values, an AD5592r PMOD connected via SPI is +utilized to convert the RMS value to analog representation. + +## Timing Analysis + +Two GPIOs are configured for analyzing the time spent performing math operations + * P0.6 is set high during the time the DMA IRQ is active + * P0.7 is set high during the time the RMS calculation is being performed. + +These GPIOs can be monitored with an oscilloscope to determine frequency and +active time of these functions. + +# Software + +## Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +## Project-Specific Build Notes + +There are several user configurable options to tailor what aspects of this +project are run. While these #defines can be added to the source code, it +is recommended they are incorporated with PROJ_CFLAGS variable in the project.mk +file. + +| Definition | Description | +| ---------- | ----------- | +| `CONSOLE_OUTPUT` | Prints the raw and filtered RMS values to the console. | +| `AD5592_OUTPUT` | Converts the raw and filtered RMS values to analog via the AD5592r. | Y | + +## Required Connections + +This project can run on either the MAX32672FTHR or MAX32672EVKIT. Due to ease +of integration with the AD5592r PMOD and access to the AIN3 and GPIO pins, the +MAX32672FTHR is recommended. + +When working with the CONSOLE_OUTPUT only, no additional hardware is required +to run this application. Apply a input signal to AIN3 and observe the output +on the console. + +### MAX32672FTHR & AD5592r PMOD + +To view the resulting RMS value as an analog signal, the AD5592r can be utilized. + +A simple setup involves the following hardware: + * [MAX32672FTHR](https://www.analog.com/en/resources/evaluation-hardware-and-software/evaluation-boards-kits/max32672fthr.html) + * [EVAL-AD5592R-PMDZ](https://www.analog.com/en/resources/evaluation-hardware-and-software/evaluation-boards-kits/eval-ad5592r-pmdz.html) + * [FTHR-PMD-INTZ](https://www.analog.com/en/resources/evaluation-hardware-and-software/evaluation-boards-kits/fthr-pmd-intz.html) + +The FTHR-PMD-INTZ may be joined to the MAX32672FTHR via stacking headers, or by +utilizing a 3rd party FTHR expander as shown. + +![FTHR Setup](doc/fthr_setup.png) + +## Expected Output + +### CONSOLE_OUTPUT + +When using the CONSOLE_OUTPUT flag, the serial console port will continuously +stream pairs of RMS data, with the first column being the raw calculated RMS and +the second being the filtered RMS via the moving average filter. These values +are in decimal and are the same 12-bit scale as the ADC. + +### AD5592_OUTPUT + +When using the AD5592r, the output data can be monitored on an oscilloscope. +The data is updated at the output rate of the RMS, ~15Hz. The following plot +shows the raw (yellow), filtered (magenta) RMS values, as well as the input +signal (cyan). + +![AD5592 Output](doc/ad5592_output.png) + +# Input Signal Generation + +Any signal source may be utilized to interface with the ADC as long as it does +not exceed the input range of 0-4.096V. + +For testing during development of this example, the Analog Devices +[ADALM2000](https://www.analog.com/en/resources/evaluation-hardware-and-software/evaluation-boards-kits/adalm2000.html) +(i.e M2K) was used as a signal source. Along with the free +[Scopy software](https://wiki.analog.com/university/tools/m2k/scopy), the +M2K can easily output configurable and arbitrary waveforms. + +![Scopy](doc/scopy.png) + +![ADALM2000](doc/ADALM2000-web.png) + diff --git a/Examples/MAX32672/ADC_DMA_RMS/RMS.c b/Examples/MAX32672/ADC_DMA_RMS/RMS.c new file mode 100644 index 00000000000..f0c2c16bee2 --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/RMS.c @@ -0,0 +1,83 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#include "RMS.h" +#include "CM4_Utils.h" + +#include +#include +#include + +void RMS_Initialize(rms_instance_t *instance) +{ + memset(instance, 0, sizeof(rms_instance_t)); + instance->sumCountRemaining = SQ_AVG_COUNT; +} + +bool RMS_ProcessSamples(rms_instance_t *instance, uint32_t *sampleBuffer, uint32_t sampleCount) +{ + int64_t workingSum = instance->sumOfSquares; + uint32_t sumCount = instance->sumCountRemaining; + int64_wrapper_t *samplePtr = (int64_wrapper_t *)sampleBuffer; + int64_wrapper_t sample; + + /* Pseudo-Unroll the loop by working on 64-bits at a time. Reducing the + * number of decrements and checks + */ + uint32_t remaining = sampleCount / 2; + + /* By running this as a while loop, doing a != 0 check, the compiler can use + * the flags set by the decrement operation directly, and avoid having to do + * an additional CMP instruction if we were to do a < type loop terminator + * like a for loop + */ + while (remaining != 0) { + /* Try working in 64-bit chunks to make use of instructions like LDRD + and limit the number of loop iterations, decrements, branches needed + for processing the block + */ + sample = *samplePtr++; + sample.words.i32hi -= RMS_DC_OFFSET; + sample.words.i32lo -= RMS_DC_OFFSET; + + //There is probably a way to trick the compiler into generating this + //instruction, but its not as obvious since we're only caring about the + //lower word of a 32-bit. Easiest just to do the ASM ourselves. + //By using this instruction, we can discard the status/unused portion of + //the 32-bit ADC data in the instruction itself without needing masking + //or other calls + workingSum = __SMLALBB(sample.words.i32hi, sample.words.i32hi, workingSum); + workingSum = __SMLALBB(sample.words.i32lo, sample.words.i32lo, workingSum); + + remaining--; + } + + /* Do this with a decrement so we can compare against 0 */ + sumCount -= sampleCount; + if (sumCount == 0) //Completed this block + { + uint32_t value = (uint32_t)(workingSum >> SQ_AVG_SHIFT); + instance->sumCountRemaining = SQ_AVG_COUNT; + instance->sumOfSquares = 0; + instance->lastRMS = sqrt32(value); + return true; + } else { //More to go + instance->sumOfSquares = workingSum; + instance->sumCountRemaining = sumCount; + return false; + } +} diff --git a/Examples/MAX32672/ADC_DMA_RMS/RMS.h b/Examples/MAX32672/ADC_DMA_RMS/RMS.h new file mode 100644 index 00000000000..4f227020369 --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/RMS.h @@ -0,0 +1,75 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#ifndef EXAMPLES_MAX32672_ADC_DMA_RMS_RMS_H_ +#define EXAMPLES_MAX32672_ADC_DMA_RMS_RMS_H_ + +#include +#include + +/* These define the number of samples used to generated the average of squares. + * These should be set based on the overall system sample rate and desired + * output rate. Alternatively they could be configured at runtime, however that + * will impact performance. + */ +#define SQ_AVG_SHIFT 15 //Right shift this many bits to divide by count +#define SQ_AVG_COUNT (1U << SQ_AVG_SHIFT) + +/* This value will be subtracted from every sample to generate AC data */ +#define RMS_DC_OFFSET (int32_t)(1 << 11) //Half of a 12-bit ADC + +/** + * Instance structure to track state. Helpful if multiple instances are needed + */ +typedef struct { + uint64_t sumOfSquares; + uint32_t sumCountRemaining; + uint16_t lastRMS; +} rms_instance_t; + +/** + * Initializes the RMS instance. + * + * @param instance - Instance to initialize + */ +void RMS_Initialize(rms_instance_t *instance); + +/** + * Processes a block of samples. This runs the sample block through the math, + * if the sumCount is achieved, the lastRMS value of the instance is updated and + * this returns True to indicate new data, otherwise returns false. + * + * IMPORTANT: This assumes that the block sizes coming in will always be a + * divisor of/add up to SQ_AVG_COUNT. This doesn't account for variable size + * sampleCounts or non-divisible counts. + * + * IMPORTANT: This also assumes the sampleCount is even (/2) to reduce loop + * loop iterations in the code + * + * NOTE: This implementation (taking in uint32_t buffers) is for the internal + * ADC which stores the ADC data in the lower 16-bits, and the upper 16-bits is + * status or 0. An alternative implementation (more efficient with math) could + * be used for ADC data which is packed in 16-bit intervals + * + * @param instance - Instance to work with + * @param sampleBuffer - ADC data + * @param sampleCount - Size of the ADC data + * @return True if a new output sample is available, false otherwise + */ +bool RMS_ProcessSamples(rms_instance_t *instance, uint32_t *sampleBuffer, uint32_t sampleCount); + +#endif // EXAMPLES_MAX32672_ADC_DMA_RMS_RMS_H_ diff --git a/Examples/MAX32672/ADC_DMA_RMS/doc/ADALM2000-web.png b/Examples/MAX32672/ADC_DMA_RMS/doc/ADALM2000-web.png new file mode 100644 index 00000000000..be138521a54 Binary files /dev/null and b/Examples/MAX32672/ADC_DMA_RMS/doc/ADALM2000-web.png differ diff --git a/Examples/MAX32672/ADC_DMA_RMS/doc/ad5592_output.png b/Examples/MAX32672/ADC_DMA_RMS/doc/ad5592_output.png new file mode 100644 index 00000000000..6059a258a51 Binary files /dev/null and b/Examples/MAX32672/ADC_DMA_RMS/doc/ad5592_output.png differ diff --git a/Examples/MAX32672/ADC_DMA_RMS/doc/fthr_setup.png b/Examples/MAX32672/ADC_DMA_RMS/doc/fthr_setup.png new file mode 100644 index 00000000000..7262a63bdf7 Binary files /dev/null and b/Examples/MAX32672/ADC_DMA_RMS/doc/fthr_setup.png differ diff --git a/Examples/MAX32672/ADC_DMA_RMS/doc/scopy.png b/Examples/MAX32672/ADC_DMA_RMS/doc/scopy.png new file mode 100644 index 00000000000..b3fac86bf02 Binary files /dev/null and b/Examples/MAX32672/ADC_DMA_RMS/doc/scopy.png differ diff --git a/Examples/MAX32672/ADC_DMA_RMS/main.c b/Examples/MAX32672/ADC_DMA_RMS/main.c new file mode 100644 index 00000000000..155458f13c9 --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/main.c @@ -0,0 +1,263 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#include +#include +#include + +#include "adc.h" +#include "dma.h" +#include "gpio.h" +#include "mxc_delay.h" +#include "mxc_device.h" +#include "mxc_errors.h" +#include "nvic_table.h" +#include "spi.h" +#include "tmr.h" + +#include "Debug.h" +#include "InternalADC.h" +#include "MovingAverage.h" +#include "RMS.h" + +/* Size of the moving average output filter */ +#define MA_WINDOW_SIZE 8 + +/* Number of bits to RSH the RMS when determining a MA reset threshold */ +#define RESET_THRESH_SHIFT 3 // 1/8th + +/* New output data is ready for processing */ +static volatile int dataReady = 0; + +/* Track the number of ADC interrupts, for testing/info */ +static volatile uint32_t irqCount = 0; + +/* Track if we are taking too long in the main loop */ +static volatile uint32_t overflowCount = 0; + +/* Moving average buffer and instance */ +static uint16_t movingAvgWindow[MA_WINDOW_SIZE]; +static moving_average_instance_t movingAvgInstance; + +/* RMS Instance */ +rms_instance_t rmsInstance; + +/* Platform support for DMA in the MSDK */ +static void InitializeDMA(void); +static void GlobalDMA_ISR_Handler(void); + +/* Callback from the internal ADC */ +static void ADC_Handler(uint32_t *dataBuffer, uint32_t count); + +/* Prototypes if using the AD5592 for Output*/ +#ifdef AD5592_OUTPUT +static void InitializeAD5592(void); +static void AD5592_WriteDAC(uint8_t ch, uint16_t localvalue); +#endif + +/** + * Main entry point into the application. Configures the system and runs the + * main loop + */ +int main(void) +{ + uint16_t lastRms = 0; + + //Setup the hardware + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_GPIO0); + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_GPIO1); + + DebugInitialize(); + InitializeDMA(); + +#ifdef AD5592_OUTPUT + InitializeAD5592(); + AD5592_WriteDAC(0, 0); + AD5592_WriteDAC(1, 0); +#endif + + RMS_Initialize(&rmsInstance); + MovingAverageInitialize(&movingAvgInstance, movingAvgWindow, MA_WINDOW_SIZE); + + //Initialize the internal ADC + InternalADC_Init(); + InternalADC_StartSampling(ADC_Handler); + + while (1) //Loop forever + { + //In a RTOS or other more complete application, wait for a flag here + while (dataReady == 0) {} + + //Determine if the MA should be reset by taking the delta, and comparing + //it to the threshold + if (abs((int32_t)rmsInstance.lastRMS - (int32_t)lastRms) > + (rmsInstance.lastRMS >> RESET_THRESH_SHIFT)) { + MovingAverageReset(&movingAvgInstance); + } + lastRms = rmsInstance.lastRMS; + + MovingAverageFilter(&movingAvgInstance, rmsInstance.lastRMS); + +#ifdef CONSOLE_OUTPUT + printf("%d %d\n", rmsInstance.lastRMS, movingAvgInstance.lastVal); +#endif + +#ifdef AD5592_OUTPUT + AD5592_WriteDAC(0, rmsInstance.lastRMS); + AD5592_WriteDAC(1, movingAvgInstance.lastVal); +#endif + + dataReady = 0; + } + return 0; +} + +/** + * Handles a new block of data coming from the ADC. Performs the RMS filter + * operation directly. + * + * It is expected (but not required) this is called from an interrupt context + * + * @param dataBuffer - Buffer of sample data + * @param count - Number of samples +*/ +static void ADC_Handler(uint32_t *dataBuffer, uint32_t count) +{ + irqCount++; + + if (dataReady) { + overflowCount++; + } + + DBG_SQ_START(); //GPIO for timing analysis + if (RMS_ProcessSamples(&rmsInstance, dataBuffer, count)) { + //Notify the main loop + dataReady = 1; + } + DBG_SQ_END(); //GPIO for timing analysis +} + +/** + * Initializes all the DMA channels to support interrupts, routing through the + * handler into the MSDK + */ +static void InitializeDMA() +{ + int i; + + MXC_DMA_Init(); + + /* Configure all DMA channels. */ + for (i = 0; i < MXC_DMA_CHANNELS; i++) { + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(i), GlobalDMA_ISR_Handler); + } +} + +/** + * DMA/DMA0 Interrupt handler connected to the NVIC. Call the MXC DMA handler + */ +static void GlobalDMA_ISR_Handler() +{ + MXC_DMA_Handler(); +} + +#ifdef AD5592_OUTPUT +/* Need to re-define these since we may need a different drive strength for the bus */ +static const mxc_gpio_cfg_t spiPins = { MXC_GPIO0, + (MXC_GPIO_PIN_14 | MXC_GPIO_PIN_15 | MXC_GPIO_PIN_16 | + MXC_GPIO_PIN_17), + MXC_GPIO_FUNC_ALT1, + MXC_GPIO_PAD_NONE, + MXC_GPIO_VSSEL_VDDIOH, + MXC_GPIO_DRVSTR_2 }; + +/* Define the SPI instance to use */ +#define AD5592_SPI_INST MXC_SPI1 +#define AD5592_SPI_CS_IDX 0 + +/* Static SPI request struct to ensure persistance between function calls */ +static mxc_spi_req_t ad5592SpiReq; + +/** + * Writes a word (16-bits) to the AD5592 + * + * @param data - Word to write +*/ +static void AD5592_SPI_Write(uint16_t data) +{ + uint8_t dataBytes[2]; + + //Big endian format + dataBytes[0] = ((data >> 8) & 0xFF); + dataBytes[1] = (data & 0xFF); + + ad5592SpiReq.spi = AD5592_SPI_INST; + ad5592SpiReq.ssIdx = AD5592_SPI_CS_IDX; + ad5592SpiReq.ssDeassert = 1; + ad5592SpiReq.rxData = 0; + ad5592SpiReq.txData = dataBytes; + ad5592SpiReq.txCnt = 0; + ad5592SpiReq.rxCnt = 0; + ad5592SpiReq.txLen = 2; + ad5592SpiReq.rxLen = 0; + ad5592SpiReq.completeCB = NULL; + + MXC_SPI_MasterTransaction(&ad5592SpiReq); +} + +/** + * Initializes the AD5592 and the associated SPI interface + */ +static void InitializeAD5592() +{ + uint16_t regData; + + /* Configure the SPI port */ + MXC_SPI_Init(AD5592_SPI_INST, 1, 0, 1, 0, 5000000); //Master, Not Quad, 1 Slave, 0 Polarity + MXC_SPI_SetWidth(AD5592_SPI_INST, SPI_WIDTH_STANDARD); + MXC_SPI_SetDataSize(AD5592_SPI_INST, 8); + MXC_SPI_SetMode(AD5592_SPI_INST, SPI_MODE_2); + MXC_GPIO_Config(&spiPins); + + //Power Down/Ref Ctrl - Internal Reference Powered Up + regData = (0xB << 11) | (1 << 9); + AD5592_SPI_Write(regData); + + //DAC Config, Ch 0 & 1 are outputs + regData = (0x5 << 11) | (0x3); + AD5592_SPI_Write(regData); +} + +/** + * Writes the value out the AD5592 channel. It is assumed the value passed to + * this function is scaled to the INTERNAL ADC scale factor. This function + * will rescale the value to the AD5592's reference so can easily be compared + * on a scope. + * + * @param ch - Channel to write + * @param localvalue - Value (scaled to internal ADC) + */ +static void AD5592_WriteDAC(uint8_t ch, uint16_t localvalue) +{ + uint32_t value; + + //Our internal ADC is configured for 4.096 volts full scale, AD5592r is 2.5 + //Adjust accordingly. + value = (localvalue * 4096) / (2500); + AD5592_SPI_Write((0x1 << 15) | (ch << 12) | (value & 0xFFF)); +} +#endif //AD5592_OUTPUT diff --git a/Examples/MAX32672/ADC_DMA_RMS/project.mk b/Examples/MAX32672/ADC_DMA_RMS/project.mk new file mode 100644 index 00000000000..3ff568ba61e --- /dev/null +++ b/Examples/MAX32672/ADC_DMA_RMS/project.mk @@ -0,0 +1,29 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +MXC_OPTIMIZE_CFLAGS += -O3 + +# Flags to control the different output methods for RMS values+ +PROJ_CFLAGS += -DCONSOLE_OUTPUT +#PROJ_CFLAGS += -DAD5592_OUTPUT \ No newline at end of file diff --git a/Examples/MAX32672/AES/.vscode/README.md b/Examples/MAX32672/AES/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/AES/.vscode/README.md +++ b/Examples/MAX32672/AES/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/AES/.vscode/settings.json b/Examples/MAX32672/AES/.vscode/settings.json index 2d8de59c151..91239b69716 100755 --- a/Examples/MAX32672/AES/.vscode/settings.json +++ b/Examples/MAX32672/AES/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/AES/Makefile b/Examples/MAX32672/AES/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/AES/Makefile +++ b/Examples/MAX32672/AES/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/AES/main.c b/Examples/MAX32672/AES/main.c index 74000f724de..3af390136b0 100644 --- a/Examples/MAX32672/AES/main.c +++ b/Examples/MAX32672/AES/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -53,7 +52,7 @@ mxc_aes_req_t req; volatile int dma_flag = 0; /***** Functions *****/ -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); dma_flag++; diff --git a/Examples/MAX32672/AES/project.mk b/Examples/MAX32672/AES/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/AES/project.mk +++ b/Examples/MAX32672/AES/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/ARM-DSP/README.md b/Examples/MAX32672/ARM-DSP/README.md index 9bb2d50bedc..5e1d116671b 100644 --- a/Examples/MAX32672/ARM-DSP/README.md +++ b/Examples/MAX32672/ARM-DSP/README.md @@ -8,7 +8,7 @@ The projects in this folder are ports of ARM's DSP example projects that can be Debug launch configurations are included in each project, and should appear in the "Favorites" menu in Eclipse. -Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop) +Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop) ## Software diff --git a/Examples/MAX32672/ARM-DSP/arm_bayes_example/.vscode/README.md b/Examples/MAX32672/ARM-DSP/arm_bayes_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/ARM-DSP/arm_bayes_example/.vscode/README.md +++ b/Examples/MAX32672/ARM-DSP/arm_bayes_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/ARM-DSP/arm_bayes_example/.vscode/settings.json b/Examples/MAX32672/ARM-DSP/arm_bayes_example/.vscode/settings.json index 8bac05e1c5f..14ecc42ff32 100755 --- a/Examples/MAX32672/ARM-DSP/arm_bayes_example/.vscode/settings.json +++ b/Examples/MAX32672/ARM-DSP/arm_bayes_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/ARM-DSP/arm_bayes_example/Makefile b/Examples/MAX32672/ARM-DSP/arm_bayes_example/Makefile index 7bb38ee42e1..80ccf7ac02e 100644 --- a/Examples/MAX32672/ARM-DSP/arm_bayes_example/Makefile +++ b/Examples/MAX32672/ARM-DSP/arm_bayes_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/ARM-DSP/arm_bayes_example/project.mk b/Examples/MAX32672/ARM-DSP/arm_bayes_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32672/ARM-DSP/arm_bayes_example/project.mk +++ b/Examples/MAX32672/ARM-DSP/arm_bayes_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/ARM-DSP/arm_class_marks_example/.vscode/README.md b/Examples/MAX32672/ARM-DSP/arm_class_marks_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/ARM-DSP/arm_class_marks_example/.vscode/README.md +++ b/Examples/MAX32672/ARM-DSP/arm_class_marks_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/ARM-DSP/arm_class_marks_example/.vscode/settings.json b/Examples/MAX32672/ARM-DSP/arm_class_marks_example/.vscode/settings.json index 8bac05e1c5f..14ecc42ff32 100755 --- a/Examples/MAX32672/ARM-DSP/arm_class_marks_example/.vscode/settings.json +++ b/Examples/MAX32672/ARM-DSP/arm_class_marks_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/ARM-DSP/arm_class_marks_example/Makefile b/Examples/MAX32672/ARM-DSP/arm_class_marks_example/Makefile index 7bb38ee42e1..80ccf7ac02e 100644 --- a/Examples/MAX32672/ARM-DSP/arm_class_marks_example/Makefile +++ b/Examples/MAX32672/ARM-DSP/arm_class_marks_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c b/Examples/MAX32672/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c index 30f548bc888..2ea5e90d59a 100644 --- a/Examples/MAX32672/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c +++ b/Examples/MAX32672/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c @@ -139,7 +139,7 @@ uint32_t student_num; * Main f32 test function. It returns maximum marks secured and student number * ------------------------------------------------------------------------------- */ -int main() +int main(void) { #ifndef USE_STATIC_INIT diff --git a/Examples/MAX32672/ARM-DSP/arm_class_marks_example/project.mk b/Examples/MAX32672/ARM-DSP/arm_class_marks_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32672/ARM-DSP/arm_class_marks_example/project.mk +++ b/Examples/MAX32672/ARM-DSP/arm_class_marks_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/ARM-DSP/arm_convolution_example/.vscode/README.md b/Examples/MAX32672/ARM-DSP/arm_convolution_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/ARM-DSP/arm_convolution_example/.vscode/README.md +++ b/Examples/MAX32672/ARM-DSP/arm_convolution_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/ARM-DSP/arm_convolution_example/.vscode/settings.json b/Examples/MAX32672/ARM-DSP/arm_convolution_example/.vscode/settings.json index 8bac05e1c5f..14ecc42ff32 100755 --- a/Examples/MAX32672/ARM-DSP/arm_convolution_example/.vscode/settings.json +++ b/Examples/MAX32672/ARM-DSP/arm_convolution_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/ARM-DSP/arm_convolution_example/Makefile b/Examples/MAX32672/ARM-DSP/arm_convolution_example/Makefile index 7bb38ee42e1..80ccf7ac02e 100644 --- a/Examples/MAX32672/ARM-DSP/arm_convolution_example/Makefile +++ b/Examples/MAX32672/ARM-DSP/arm_convolution_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/ARM-DSP/arm_convolution_example/project.mk b/Examples/MAX32672/ARM-DSP/arm_convolution_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32672/ARM-DSP/arm_convolution_example/project.mk +++ b/Examples/MAX32672/ARM-DSP/arm_convolution_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md b/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md +++ b/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json b/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json index 8bac05e1c5f..14ecc42ff32 100755 --- a/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json +++ b/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/Makefile b/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/Makefile index 7bb38ee42e1..80ccf7ac02e 100644 --- a/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/Makefile +++ b/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/project.mk b/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/project.mk +++ b/Examples/MAX32672/ARM-DSP/arm_dotproduct_example_f32/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/.vscode/README.md b/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/.vscode/README.md +++ b/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/.vscode/settings.json b/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/.vscode/settings.json index 8bac05e1c5f..14ecc42ff32 100755 --- a/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/.vscode/settings.json +++ b/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/Makefile b/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/Makefile index 7bb38ee42e1..80ccf7ac02e 100644 --- a/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/Makefile +++ b/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/project.mk b/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/project.mk +++ b/Examples/MAX32672/ARM-DSP/arm_fft_bin_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/ARM-DSP/arm_fir_example/.vscode/README.md b/Examples/MAX32672/ARM-DSP/arm_fir_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/ARM-DSP/arm_fir_example/.vscode/README.md +++ b/Examples/MAX32672/ARM-DSP/arm_fir_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/ARM-DSP/arm_fir_example/.vscode/settings.json b/Examples/MAX32672/ARM-DSP/arm_fir_example/.vscode/settings.json index 8bac05e1c5f..14ecc42ff32 100755 --- a/Examples/MAX32672/ARM-DSP/arm_fir_example/.vscode/settings.json +++ b/Examples/MAX32672/ARM-DSP/arm_fir_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/ARM-DSP/arm_fir_example/Makefile b/Examples/MAX32672/ARM-DSP/arm_fir_example/Makefile index 7bb38ee42e1..80ccf7ac02e 100644 --- a/Examples/MAX32672/ARM-DSP/arm_fir_example/Makefile +++ b/Examples/MAX32672/ARM-DSP/arm_fir_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/ARM-DSP/arm_fir_example/project.mk b/Examples/MAX32672/ARM-DSP/arm_fir_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32672/ARM-DSP/arm_fir_example/project.mk +++ b/Examples/MAX32672/ARM-DSP/arm_fir_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md b/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md +++ b/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json b/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json index 8bac05e1c5f..14ecc42ff32 100755 --- a/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json +++ b/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/Makefile b/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/Makefile index 7bb38ee42e1..80ccf7ac02e 100644 --- a/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/Makefile +++ b/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/project.mk b/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/project.mk +++ b/Examples/MAX32672/ARM-DSP/arm_graphic_equalizer_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/.vscode/README.md b/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/.vscode/README.md +++ b/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/.vscode/settings.json b/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/.vscode/settings.json index 8bac05e1c5f..14ecc42ff32 100755 --- a/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/.vscode/settings.json +++ b/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/Makefile b/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/Makefile index 7bb38ee42e1..80ccf7ac02e 100644 --- a/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/Makefile +++ b/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/project.mk b/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/project.mk +++ b/Examples/MAX32672/ARM-DSP/arm_linear_interp_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/ARM-DSP/arm_matrix_example/.vscode/README.md b/Examples/MAX32672/ARM-DSP/arm_matrix_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/ARM-DSP/arm_matrix_example/.vscode/README.md +++ b/Examples/MAX32672/ARM-DSP/arm_matrix_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/ARM-DSP/arm_matrix_example/.vscode/settings.json b/Examples/MAX32672/ARM-DSP/arm_matrix_example/.vscode/settings.json index 8bac05e1c5f..14ecc42ff32 100755 --- a/Examples/MAX32672/ARM-DSP/arm_matrix_example/.vscode/settings.json +++ b/Examples/MAX32672/ARM-DSP/arm_matrix_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/ARM-DSP/arm_matrix_example/Makefile b/Examples/MAX32672/ARM-DSP/arm_matrix_example/Makefile index 7bb38ee42e1..80ccf7ac02e 100644 --- a/Examples/MAX32672/ARM-DSP/arm_matrix_example/Makefile +++ b/Examples/MAX32672/ARM-DSP/arm_matrix_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/ARM-DSP/arm_matrix_example/project.mk b/Examples/MAX32672/ARM-DSP/arm_matrix_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32672/ARM-DSP/arm_matrix_example/project.mk +++ b/Examples/MAX32672/ARM-DSP/arm_matrix_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/.vscode/README.md b/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/.vscode/README.md +++ b/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/.vscode/settings.json b/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/.vscode/settings.json index 8bac05e1c5f..14ecc42ff32 100755 --- a/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/.vscode/settings.json +++ b/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/Makefile b/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/Makefile index 7bb38ee42e1..80ccf7ac02e 100644 --- a/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/Makefile +++ b/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/project.mk b/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/project.mk +++ b/Examples/MAX32672/ARM-DSP/arm_signal_converge_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/.vscode/README.md b/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/.vscode/README.md +++ b/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/.vscode/settings.json b/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/.vscode/settings.json index 8bac05e1c5f..14ecc42ff32 100755 --- a/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/.vscode/settings.json +++ b/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/Makefile b/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/Makefile index 7bb38ee42e1..80ccf7ac02e 100644 --- a/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/Makefile +++ b/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/project.mk b/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/project.mk +++ b/Examples/MAX32672/ARM-DSP/arm_sin_cos_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/ARM-DSP/arm_svm_example/.vscode/README.md b/Examples/MAX32672/ARM-DSP/arm_svm_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/ARM-DSP/arm_svm_example/.vscode/README.md +++ b/Examples/MAX32672/ARM-DSP/arm_svm_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/ARM-DSP/arm_svm_example/.vscode/settings.json b/Examples/MAX32672/ARM-DSP/arm_svm_example/.vscode/settings.json index 8bac05e1c5f..14ecc42ff32 100755 --- a/Examples/MAX32672/ARM-DSP/arm_svm_example/.vscode/settings.json +++ b/Examples/MAX32672/ARM-DSP/arm_svm_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/ARM-DSP/arm_svm_example/Makefile b/Examples/MAX32672/ARM-DSP/arm_svm_example/Makefile index 7bb38ee42e1..80ccf7ac02e 100644 --- a/Examples/MAX32672/ARM-DSP/arm_svm_example/Makefile +++ b/Examples/MAX32672/ARM-DSP/arm_svm_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/ARM-DSP/arm_svm_example/project.mk b/Examples/MAX32672/ARM-DSP/arm_svm_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32672/ARM-DSP/arm_svm_example/project.mk +++ b/Examples/MAX32672/ARM-DSP/arm_svm_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/ARM-DSP/arm_variance_example/.vscode/README.md b/Examples/MAX32672/ARM-DSP/arm_variance_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/ARM-DSP/arm_variance_example/.vscode/README.md +++ b/Examples/MAX32672/ARM-DSP/arm_variance_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/ARM-DSP/arm_variance_example/.vscode/settings.json b/Examples/MAX32672/ARM-DSP/arm_variance_example/.vscode/settings.json index 8bac05e1c5f..14ecc42ff32 100755 --- a/Examples/MAX32672/ARM-DSP/arm_variance_example/.vscode/settings.json +++ b/Examples/MAX32672/ARM-DSP/arm_variance_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/ARM-DSP/arm_variance_example/Makefile b/Examples/MAX32672/ARM-DSP/arm_variance_example/Makefile index 7bb38ee42e1..80ccf7ac02e 100644 --- a/Examples/MAX32672/ARM-DSP/arm_variance_example/Makefile +++ b/Examples/MAX32672/ARM-DSP/arm_variance_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/ARM-DSP/arm_variance_example/project.mk b/Examples/MAX32672/ARM-DSP/arm_variance_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32672/ARM-DSP/arm_variance_example/project.mk +++ b/Examples/MAX32672/ARM-DSP/arm_variance_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/CRC/.vscode/README.md b/Examples/MAX32672/CRC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/CRC/.vscode/README.md +++ b/Examples/MAX32672/CRC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/CRC/.vscode/settings.json b/Examples/MAX32672/CRC/.vscode/settings.json index 2d8de59c151..91239b69716 100755 --- a/Examples/MAX32672/CRC/.vscode/settings.json +++ b/Examples/MAX32672/CRC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/CRC/Makefile b/Examples/MAX32672/CRC/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/CRC/Makefile +++ b/Examples/MAX32672/CRC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/CRC/main.c b/Examples/MAX32672/CRC/main.c index b519d86edc5..3669f87a8cc 100644 --- a/Examples/MAX32672/CRC/main.c +++ b/Examples/MAX32672/CRC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/CRC/project.mk b/Examples/MAX32672/CRC/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/CRC/project.mk +++ b/Examples/MAX32672/CRC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/CTB_AES/.vscode/README.md b/Examples/MAX32672/CTB_AES/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/CTB_AES/.vscode/README.md +++ b/Examples/MAX32672/CTB_AES/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/CTB_AES/.vscode/settings.json b/Examples/MAX32672/CTB_AES/.vscode/settings.json index 2d8de59c151..91239b69716 100755 --- a/Examples/MAX32672/CTB_AES/.vscode/settings.json +++ b/Examples/MAX32672/CTB_AES/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/CTB_AES/Makefile b/Examples/MAX32672/CTB_AES/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/CTB_AES/Makefile +++ b/Examples/MAX32672/CTB_AES/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/CTB_AES/main.c b/Examples/MAX32672/CTB_AES/main.c index bce81868015..3180a346757 100644 --- a/Examples/MAX32672/CTB_AES/main.c +++ b/Examples/MAX32672/CTB_AES/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/CTB_AES/project.mk b/Examples/MAX32672/CTB_AES/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/CTB_AES/project.mk +++ b/Examples/MAX32672/CTB_AES/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/Comparator/.vscode/README.md b/Examples/MAX32672/Comparator/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/Comparator/.vscode/README.md +++ b/Examples/MAX32672/Comparator/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/Comparator/.vscode/settings.json b/Examples/MAX32672/Comparator/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/Comparator/.vscode/settings.json +++ b/Examples/MAX32672/Comparator/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/Comparator/Makefile b/Examples/MAX32672/Comparator/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/Comparator/Makefile +++ b/Examples/MAX32672/Comparator/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/Comparator/main.c b/Examples/MAX32672/Comparator/main.c index 971f4a16f3f..0483720cd86 100644 --- a/Examples/MAX32672/Comparator/main.c +++ b/Examples/MAX32672/Comparator/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Comparator/project.mk b/Examples/MAX32672/Comparator/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/Comparator/project.mk +++ b/Examples/MAX32672/Comparator/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/Coremark/.vscode/README.md b/Examples/MAX32672/Coremark/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/Coremark/.vscode/README.md +++ b/Examples/MAX32672/Coremark/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/Coremark/.vscode/settings.json b/Examples/MAX32672/Coremark/.vscode/settings.json index 2d8de59c151..91239b69716 100755 --- a/Examples/MAX32672/Coremark/.vscode/settings.json +++ b/Examples/MAX32672/Coremark/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/Coremark/Makefile b/Examples/MAX32672/Coremark/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/Coremark/Makefile +++ b/Examples/MAX32672/Coremark/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/Coremark/project.mk b/Examples/MAX32672/Coremark/project.mk index 9ded8091069..a6efc624169 100644 --- a/Examples/MAX32672/Coremark/project.mk +++ b/Examples/MAX32672/Coremark/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/DMA/.vscode/README.md b/Examples/MAX32672/DMA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/DMA/.vscode/README.md +++ b/Examples/MAX32672/DMA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/DMA/.vscode/settings.json b/Examples/MAX32672/DMA/.vscode/settings.json index 2d8de59c151..91239b69716 100755 --- a/Examples/MAX32672/DMA/.vscode/settings.json +++ b/Examples/MAX32672/DMA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/DMA/Makefile b/Examples/MAX32672/DMA/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/DMA/Makefile +++ b/Examples/MAX32672/DMA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/DMA/main.c b/Examples/MAX32672/DMA/main.c index 4f477975949..16ef9e63545 100644 --- a/Examples/MAX32672/DMA/main.c +++ b/Examples/MAX32672/DMA/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -58,7 +57,7 @@ void memCpyComplete(void *dest) flag++; } -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); } diff --git a/Examples/MAX32672/DMA/project.mk b/Examples/MAX32672/DMA/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/DMA/project.mk +++ b/Examples/MAX32672/DMA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/Demo/.vscode/README.md b/Examples/MAX32672/Demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/Demo/.vscode/README.md +++ b/Examples/MAX32672/Demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/Demo/.vscode/settings.json b/Examples/MAX32672/Demo/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/Demo/.vscode/settings.json +++ b/Examples/MAX32672/Demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/Demo/Makefile b/Examples/MAX32672/Demo/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/Demo/Makefile +++ b/Examples/MAX32672/Demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/Demo/main.c b/Examples/MAX32672/Demo/main.c index 3dc4b9f6182..b146dc8e37b 100644 --- a/Examples/MAX32672/Demo/main.c +++ b/Examples/MAX32672/Demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Demo/project.mk b/Examples/MAX32672/Demo/project.mk index e285667d5bc..60743a35845 100644 --- a/Examples/MAX32672/Demo/project.mk +++ b/Examples/MAX32672/Demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/Demo/resources/bitmap.h b/Examples/MAX32672/Demo/resources/bitmap.h index 2d8a19e334c..4a800ed963d 100644 --- a/Examples/MAX32672/Demo/resources/bitmap.h +++ b/Examples/MAX32672/Demo/resources/bitmap.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Demo/resources/tft_demo/bmp/bmp2c.py b/Examples/MAX32672/Demo/resources/tft_demo/bmp/bmp2c.py index d85d42f200a..6e4a77a77e8 100644 --- a/Examples/MAX32672/Demo/resources/tft_demo/bmp/bmp2c.py +++ b/Examples/MAX32672/Demo/resources/tft_demo/bmp/bmp2c.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Demo/resources/tft_demo/bmp/image_rgb565.c b/Examples/MAX32672/Demo/resources/tft_demo/bmp/image_rgb565.c index 435c50b308c..3848cb229d2 100644 --- a/Examples/MAX32672/Demo/resources/tft_demo/bmp/image_rgb565.c +++ b/Examples/MAX32672/Demo/resources/tft_demo/bmp/image_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Demo/resources/tft_demo/bmp/template.txt b/Examples/MAX32672/Demo/resources/tft_demo/bmp/template.txt index ba9d86c9a51..b2b7ff6425e 100644 --- a/Examples/MAX32672/Demo/resources/tft_demo/bmp/template.txt +++ b/Examples/MAX32672/Demo/resources/tft_demo/bmp/template.txt @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Demo/resources/tft_demo/logo_rgb565.c b/Examples/MAX32672/Demo/resources/tft_demo/logo_rgb565.c index 3c2141725cb..69ae930815e 100644 --- a/Examples/MAX32672/Demo/resources/tft_demo/logo_rgb565.c +++ b/Examples/MAX32672/Demo/resources/tft_demo/logo_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Display/.vscode/README.md b/Examples/MAX32672/Display/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/Display/.vscode/README.md +++ b/Examples/MAX32672/Display/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/Display/.vscode/settings.json b/Examples/MAX32672/Display/.vscode/settings.json index 912cda38bfd..30dda6c7a6e 100755 --- a/Examples/MAX32672/Display/.vscode/settings.json +++ b/Examples/MAX32672/Display/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/Display/Makefile b/Examples/MAX32672/Display/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/Display/Makefile +++ b/Examples/MAX32672/Display/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/Display/lv_conf.h b/Examples/MAX32672/Display/lv_conf.h index 3197ca39688..e34515c451a 100644 --- a/Examples/MAX32672/Display/lv_conf.h +++ b/Examples/MAX32672/Display/lv_conf.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Display/main.c b/Examples/MAX32672/Display/main.c index 64ce663f63c..360be74c9db 100644 --- a/Examples/MAX32672/Display/main.c +++ b/Examples/MAX32672/Display/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Display/project.mk b/Examples/MAX32672/Display/project.mk index 63479f3c395..0e0b1dab416 100644 --- a/Examples/MAX32672/Display/project.mk +++ b/Examples/MAX32672/Display/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/EEPROM_Emulator/.vscode/README.md b/Examples/MAX32672/EEPROM_Emulator/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/EEPROM_Emulator/.vscode/README.md +++ b/Examples/MAX32672/EEPROM_Emulator/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/EEPROM_Emulator/.vscode/settings.json b/Examples/MAX32672/EEPROM_Emulator/.vscode/settings.json index 2d8de59c151..91239b69716 100755 --- a/Examples/MAX32672/EEPROM_Emulator/.vscode/settings.json +++ b/Examples/MAX32672/EEPROM_Emulator/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/EEPROM_Emulator/Makefile b/Examples/MAX32672/EEPROM_Emulator/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/EEPROM_Emulator/Makefile +++ b/Examples/MAX32672/EEPROM_Emulator/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/EEPROM_Emulator/include/cache.h b/Examples/MAX32672/EEPROM_Emulator/include/cache.h index ee180121f6a..cd1a2b3e5e6 100644 --- a/Examples/MAX32672/EEPROM_Emulator/include/cache.h +++ b/Examples/MAX32672/EEPROM_Emulator/include/cache.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/EEPROM_Emulator/include/eeprom.h b/Examples/MAX32672/EEPROM_Emulator/include/eeprom.h index 0203ee54746..cd9714b9a29 100644 --- a/Examples/MAX32672/EEPROM_Emulator/include/eeprom.h +++ b/Examples/MAX32672/EEPROM_Emulator/include/eeprom.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/EEPROM_Emulator/main.c b/Examples/MAX32672/EEPROM_Emulator/main.c index efd602763d1..abf9756d7f4 100644 --- a/Examples/MAX32672/EEPROM_Emulator/main.c +++ b/Examples/MAX32672/EEPROM_Emulator/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/EEPROM_Emulator/project.mk b/Examples/MAX32672/EEPROM_Emulator/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/EEPROM_Emulator/project.mk +++ b/Examples/MAX32672/EEPROM_Emulator/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/EEPROM_Emulator/src/cache.c b/Examples/MAX32672/EEPROM_Emulator/src/cache.c index 17bc7b57c13..adf98b89839 100644 --- a/Examples/MAX32672/EEPROM_Emulator/src/cache.c +++ b/Examples/MAX32672/EEPROM_Emulator/src/cache.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/EEPROM_Emulator/src/eeprom.c b/Examples/MAX32672/EEPROM_Emulator/src/eeprom.c index 22ede1df092..266766e2e42 100644 --- a/Examples/MAX32672/EEPROM_Emulator/src/eeprom.c +++ b/Examples/MAX32672/EEPROM_Emulator/src/eeprom.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Flash/.vscode/README.md b/Examples/MAX32672/Flash/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/Flash/.vscode/README.md +++ b/Examples/MAX32672/Flash/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/Flash/.vscode/settings.json b/Examples/MAX32672/Flash/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/Flash/.vscode/settings.json +++ b/Examples/MAX32672/Flash/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/Flash/Makefile b/Examples/MAX32672/Flash/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/Flash/Makefile +++ b/Examples/MAX32672/Flash/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/Flash/main.c b/Examples/MAX32672/Flash/main.c index 54892ce391a..d812d781f0a 100644 --- a/Examples/MAX32672/Flash/main.c +++ b/Examples/MAX32672/Flash/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -61,7 +60,7 @@ volatile uint32_t isr_flags; //****************************************************************************** int button_pressed = 0; -void button_handler() +void button_handler(void) { button_pressed = 1; } @@ -122,7 +121,7 @@ void setup_irqs(void) isr_cnt = 0; } -int write_test_pattern() +int write_test_pattern(void) { int err; // A flash address must be in the erased state before writing to it, because the @@ -164,7 +163,7 @@ int write_test_pattern() return err; } -int validate_test_pattern() +int validate_test_pattern(void) { int err = 0; @@ -184,7 +183,7 @@ int validate_test_pattern() return err; } -int erase_magic() +int erase_magic(void) { /* To modify a location in flash that has already been written to, diff --git a/Examples/MAX32672/Flash/project.mk b/Examples/MAX32672/Flash/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/Flash/project.mk +++ b/Examples/MAX32672/Flash/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/Flash_CLI/.vscode/README.md b/Examples/MAX32672/Flash_CLI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/Flash_CLI/.vscode/README.md +++ b/Examples/MAX32672/Flash_CLI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/Flash_CLI/.vscode/settings.json b/Examples/MAX32672/Flash_CLI/.vscode/settings.json index e21c82d171e..819772b10eb 100755 --- a/Examples/MAX32672/Flash_CLI/.vscode/settings.json +++ b/Examples/MAX32672/Flash_CLI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/Flash_CLI/FreeRTOSConfig.h b/Examples/MAX32672/Flash_CLI/FreeRTOSConfig.h index 3fbc037749b..54c2d9dbe0c 100644 --- a/Examples/MAX32672/Flash_CLI/FreeRTOSConfig.h +++ b/Examples/MAX32672/Flash_CLI/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Flash_CLI/Makefile b/Examples/MAX32672/Flash_CLI/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/Flash_CLI/Makefile +++ b/Examples/MAX32672/Flash_CLI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/Flash_CLI/definitions.h b/Examples/MAX32672/Flash_CLI/definitions.h index 63f5876150c..a0d71742e7d 100644 --- a/Examples/MAX32672/Flash_CLI/definitions.h +++ b/Examples/MAX32672/Flash_CLI/definitions.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Flash_CLI/main.c b/Examples/MAX32672/Flash_CLI/main.c index a859c746764..d36a156834a 100644 --- a/Examples/MAX32672/Flash_CLI/main.c +++ b/Examples/MAX32672/Flash_CLI/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Flash_CLI/project.mk b/Examples/MAX32672/Flash_CLI/project.mk index b46ded3d1db..ed9299005dd 100644 --- a/Examples/MAX32672/Flash_CLI/project.mk +++ b/Examples/MAX32672/Flash_CLI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/FreeRTOSDemo/.vscode/README.md b/Examples/MAX32672/FreeRTOSDemo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/FreeRTOSDemo/.vscode/README.md +++ b/Examples/MAX32672/FreeRTOSDemo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/FreeRTOSDemo/.vscode/settings.json b/Examples/MAX32672/FreeRTOSDemo/.vscode/settings.json index 2e3b3fbbb0a..08ce9968e80 100755 --- a/Examples/MAX32672/FreeRTOSDemo/.vscode/settings.json +++ b/Examples/MAX32672/FreeRTOSDemo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/FreeRTOSDemo/FreeRTOSConfig.h b/Examples/MAX32672/FreeRTOSDemo/FreeRTOSConfig.h index 6637c662dca..fd5193a0257 100644 --- a/Examples/MAX32672/FreeRTOSDemo/FreeRTOSConfig.h +++ b/Examples/MAX32672/FreeRTOSDemo/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/FreeRTOSDemo/Makefile b/Examples/MAX32672/FreeRTOSDemo/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/FreeRTOSDemo/Makefile +++ b/Examples/MAX32672/FreeRTOSDemo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/FreeRTOSDemo/freertos_tickless.c b/Examples/MAX32672/FreeRTOSDemo/freertos_tickless.c index 55039948e4e..9d298af043d 100644 --- a/Examples/MAX32672/FreeRTOSDemo/freertos_tickless.c +++ b/Examples/MAX32672/FreeRTOSDemo/freertos_tickless.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/FreeRTOSDemo/main.c b/Examples/MAX32672/FreeRTOSDemo/main.c index 0e2d341016d..b37f199524b 100644 --- a/Examples/MAX32672/FreeRTOSDemo/main.c +++ b/Examples/MAX32672/FreeRTOSDemo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/FreeRTOSDemo/project.mk b/Examples/MAX32672/FreeRTOSDemo/project.mk index b46ded3d1db..ed9299005dd 100644 --- a/Examples/MAX32672/FreeRTOSDemo/project.mk +++ b/Examples/MAX32672/FreeRTOSDemo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/GPIO/.vscode/README.md b/Examples/MAX32672/GPIO/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/GPIO/.vscode/README.md +++ b/Examples/MAX32672/GPIO/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/GPIO/.vscode/settings.json b/Examples/MAX32672/GPIO/.vscode/settings.json index 2d8de59c151..91239b69716 100755 --- a/Examples/MAX32672/GPIO/.vscode/settings.json +++ b/Examples/MAX32672/GPIO/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/GPIO/Makefile b/Examples/MAX32672/GPIO/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/GPIO/Makefile +++ b/Examples/MAX32672/GPIO/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/GPIO/main.c b/Examples/MAX32672/GPIO/main.c index a69fc60e207..a363df5c322 100644 --- a/Examples/MAX32672/GPIO/main.c +++ b/Examples/MAX32672/GPIO/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/GPIO/project.mk b/Examples/MAX32672/GPIO/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/GPIO/project.mk +++ b/Examples/MAX32672/GPIO/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/Hello_World/.vscode/README.md b/Examples/MAX32672/Hello_World/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/Hello_World/.vscode/README.md +++ b/Examples/MAX32672/Hello_World/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/Hello_World/.vscode/settings.json b/Examples/MAX32672/Hello_World/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/Hello_World/.vscode/settings.json +++ b/Examples/MAX32672/Hello_World/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/Hello_World/Makefile b/Examples/MAX32672/Hello_World/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/Hello_World/Makefile +++ b/Examples/MAX32672/Hello_World/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/Hello_World/main.c b/Examples/MAX32672/Hello_World/main.c index fc616f7897d..424b1121848 100644 --- a/Examples/MAX32672/Hello_World/main.c +++ b/Examples/MAX32672/Hello_World/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Hello_World/project.mk b/Examples/MAX32672/Hello_World/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/Hello_World/project.mk +++ b/Examples/MAX32672/Hello_World/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/Hello_World_Cpp/.vscode/README.md b/Examples/MAX32672/Hello_World_Cpp/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/Hello_World_Cpp/.vscode/README.md +++ b/Examples/MAX32672/Hello_World_Cpp/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/Hello_World_Cpp/.vscode/settings.json b/Examples/MAX32672/Hello_World_Cpp/.vscode/settings.json index 2d8de59c151..91239b69716 100755 --- a/Examples/MAX32672/Hello_World_Cpp/.vscode/settings.json +++ b/Examples/MAX32672/Hello_World_Cpp/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/Hello_World_Cpp/Makefile b/Examples/MAX32672/Hello_World_Cpp/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/Hello_World_Cpp/Makefile +++ b/Examples/MAX32672/Hello_World_Cpp/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/Hello_World_Cpp/main.cpp b/Examples/MAX32672/Hello_World_Cpp/main.cpp index daade0e995d..fdf8363cde1 100644 --- a/Examples/MAX32672/Hello_World_Cpp/main.cpp +++ b/Examples/MAX32672/Hello_World_Cpp/main.cpp @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -66,7 +65,7 @@ class LED { int blink_count; }; -int main() +int main(void) { LED led = LED(0); diff --git a/Examples/MAX32672/Hello_World_Cpp/project.mk b/Examples/MAX32672/Hello_World_Cpp/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX32672/Hello_World_Cpp/project.mk +++ b/Examples/MAX32672/Hello_World_Cpp/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/I2C/.vscode/README.md b/Examples/MAX32672/I2C/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/I2C/.vscode/README.md +++ b/Examples/MAX32672/I2C/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/I2C/.vscode/settings.json b/Examples/MAX32672/I2C/.vscode/settings.json index 2d8de59c151..91239b69716 100755 --- a/Examples/MAX32672/I2C/.vscode/settings.json +++ b/Examples/MAX32672/I2C/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/I2C/Makefile b/Examples/MAX32672/I2C/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/I2C/Makefile +++ b/Examples/MAX32672/I2C/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/I2C/main.c b/Examples/MAX32672/I2C/main.c index 932af8d7d04..26ba401176c 100644 --- a/Examples/MAX32672/I2C/main.c +++ b/Examples/MAX32672/I2C/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -188,7 +187,7 @@ int verifyData(void) } // ***************************************************************************** -int main() +int main(void) { printf("\n******** I2C Master-Slave Transaction Demo *********\n"); printf("\nThis example uses one I2C peripheral as a master to\n"); diff --git a/Examples/MAX32672/I2C/project.mk b/Examples/MAX32672/I2C/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/I2C/project.mk +++ b/Examples/MAX32672/I2C/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/I2C_MNGR/.vscode/README.md b/Examples/MAX32672/I2C_MNGR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/I2C_MNGR/.vscode/README.md +++ b/Examples/MAX32672/I2C_MNGR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/I2C_MNGR/.vscode/settings.json b/Examples/MAX32672/I2C_MNGR/.vscode/settings.json index aa189aac120..4137bb4b53a 100755 --- a/Examples/MAX32672/I2C_MNGR/.vscode/settings.json +++ b/Examples/MAX32672/I2C_MNGR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/I2C_MNGR/FreeRTOSConfig.h b/Examples/MAX32672/I2C_MNGR/FreeRTOSConfig.h index 7188ecac641..94f36e05707 100644 --- a/Examples/MAX32672/I2C_MNGR/FreeRTOSConfig.h +++ b/Examples/MAX32672/I2C_MNGR/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/I2C_MNGR/Makefile b/Examples/MAX32672/I2C_MNGR/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/I2C_MNGR/Makefile +++ b/Examples/MAX32672/I2C_MNGR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/I2C_MNGR/i2c_mngr/i2c_mngr.c b/Examples/MAX32672/I2C_MNGR/i2c_mngr/i2c_mngr.c index 2677dfbbda2..d2c41b1d609 100644 --- a/Examples/MAX32672/I2C_MNGR/i2c_mngr/i2c_mngr.c +++ b/Examples/MAX32672/I2C_MNGR/i2c_mngr/i2c_mngr.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +38,7 @@ typedef struct { static i2c_txn_mngr_t s_mngr; /******************************************************************************/ -int I2C_MNGR_Init() +int I2C_MNGR_Init(void) { s_mngr.inst0 = MXC_I2C0; s_mngr.inst1 = MXC_I2C1; diff --git a/Examples/MAX32672/I2C_MNGR/i2c_mngr/i2c_mngr.h b/Examples/MAX32672/I2C_MNGR/i2c_mngr/i2c_mngr.h index 7d69ba75812..c4276e611a9 100644 --- a/Examples/MAX32672/I2C_MNGR/i2c_mngr/i2c_mngr.h +++ b/Examples/MAX32672/I2C_MNGR/i2c_mngr/i2c_mngr.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +54,7 @@ typedef struct { * @brief Initializes I2C transaction manager * @return #E_NO_ERROR if succeeded, error code otherwise */ -int I2C_MNGR_Init(); +int I2C_MNGR_Init(void); /* * @brief Executes I2C transaction diff --git a/Examples/MAX32672/I2C_MNGR/main.c b/Examples/MAX32672/I2C_MNGR/main.c index 4be75e9fa34..ea18978b982 100644 --- a/Examples/MAX32672/I2C_MNGR/main.c +++ b/Examples/MAX32672/I2C_MNGR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/I2C_MNGR/project.mk b/Examples/MAX32672/I2C_MNGR/project.mk index c006c3ef927..c00f7984c3a 100644 --- a/Examples/MAX32672/I2C_MNGR/project.mk +++ b/Examples/MAX32672/I2C_MNGR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/I2C_SCAN/.vscode/README.md b/Examples/MAX32672/I2C_SCAN/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/I2C_SCAN/.vscode/README.md +++ b/Examples/MAX32672/I2C_SCAN/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/I2C_SCAN/.vscode/settings.json b/Examples/MAX32672/I2C_SCAN/.vscode/settings.json index 2d8de59c151..91239b69716 100755 --- a/Examples/MAX32672/I2C_SCAN/.vscode/settings.json +++ b/Examples/MAX32672/I2C_SCAN/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/I2C_SCAN/Makefile b/Examples/MAX32672/I2C_SCAN/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/I2C_SCAN/Makefile +++ b/Examples/MAX32672/I2C_SCAN/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/I2C_SCAN/main.c b/Examples/MAX32672/I2C_SCAN/main.c index 3744fb8ae46..1d7d2e46b89 100644 --- a/Examples/MAX32672/I2C_SCAN/main.c +++ b/Examples/MAX32672/I2C_SCAN/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -46,7 +45,7 @@ #define I2C_FREQ 100000 // 100kHZ // ***************************************************************************** -int main() +int main(void) { uint8_t counter = 0; diff --git a/Examples/MAX32672/I2C_SCAN/project.mk b/Examples/MAX32672/I2C_SCAN/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/I2C_SCAN/project.mk +++ b/Examples/MAX32672/I2C_SCAN/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/I2C_Sensor/.vscode/README.md b/Examples/MAX32672/I2C_Sensor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/I2C_Sensor/.vscode/README.md +++ b/Examples/MAX32672/I2C_Sensor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/I2C_Sensor/.vscode/settings.json b/Examples/MAX32672/I2C_Sensor/.vscode/settings.json index 2d8de59c151..91239b69716 100755 --- a/Examples/MAX32672/I2C_Sensor/.vscode/settings.json +++ b/Examples/MAX32672/I2C_Sensor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/I2C_Sensor/Makefile b/Examples/MAX32672/I2C_Sensor/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/I2C_Sensor/Makefile +++ b/Examples/MAX32672/I2C_Sensor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/I2C_Sensor/main.c b/Examples/MAX32672/I2C_Sensor/main.c index 25fc023448b..927454f9a6d 100644 --- a/Examples/MAX32672/I2C_Sensor/main.c +++ b/Examples/MAX32672/I2C_Sensor/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/I2C_Sensor/project.mk b/Examples/MAX32672/I2C_Sensor/project.mk index 3c3d48bae58..10189356cf4 100644 --- a/Examples/MAX32672/I2C_Sensor/project.mk +++ b/Examples/MAX32672/I2C_Sensor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/I2S/.vscode/README.md b/Examples/MAX32672/I2S/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/I2S/.vscode/README.md +++ b/Examples/MAX32672/I2S/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/I2S/.vscode/settings.json b/Examples/MAX32672/I2S/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/I2S/.vscode/settings.json +++ b/Examples/MAX32672/I2S/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/I2S/Makefile b/Examples/MAX32672/I2S/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/I2S/Makefile +++ b/Examples/MAX32672/I2S/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/I2S/main.c b/Examples/MAX32672/I2S/main.c index 237e74cb295..853037f3946 100644 --- a/Examples/MAX32672/I2S/main.c +++ b/Examples/MAX32672/I2S/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -73,7 +72,7 @@ void i2s_dma_cb(int ch, int err) #endif /*****************************************************************/ -int main() +int main(void) { int err; mxc_i2s_req_t req; diff --git a/Examples/MAX32672/I2S/project.mk b/Examples/MAX32672/I2S/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/I2S/project.mk +++ b/Examples/MAX32672/I2S/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/ICC/.vscode/README.md b/Examples/MAX32672/ICC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/ICC/.vscode/README.md +++ b/Examples/MAX32672/ICC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/ICC/.vscode/settings.json b/Examples/MAX32672/ICC/.vscode/settings.json index 2d8de59c151..91239b69716 100755 --- a/Examples/MAX32672/ICC/.vscode/settings.json +++ b/Examples/MAX32672/ICC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/ICC/Makefile b/Examples/MAX32672/ICC/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/ICC/Makefile +++ b/Examples/MAX32672/ICC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/ICC/main.c b/Examples/MAX32672/ICC/main.c index 8d1f53a83c8..5e1f6f3d0a7 100644 --- a/Examples/MAX32672/ICC/main.c +++ b/Examples/MAX32672/ICC/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/ICC/project.mk b/Examples/MAX32672/ICC/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/ICC/project.mk +++ b/Examples/MAX32672/ICC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/LP/.vscode/README.md b/Examples/MAX32672/LP/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/LP/.vscode/README.md +++ b/Examples/MAX32672/LP/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/LP/.vscode/settings.json b/Examples/MAX32672/LP/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/LP/.vscode/settings.json +++ b/Examples/MAX32672/LP/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/LP/Makefile b/Examples/MAX32672/LP/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/LP/Makefile +++ b/Examples/MAX32672/LP/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/LP/lp-nonsecure.ld b/Examples/MAX32672/LP/lp-nonsecure.ld index 7c3e3186ce2..09be7c2fd5d 100644 --- a/Examples/MAX32672/LP/lp-nonsecure.ld +++ b/Examples/MAX32672/LP/lp-nonsecure.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/LP/lp-sla.ld b/Examples/MAX32672/LP/lp-sla.ld index 5b9de6ad401..b184f03cad3 100644 --- a/Examples/MAX32672/LP/lp-sla.ld +++ b/Examples/MAX32672/LP/lp-sla.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/LP/main.c b/Examples/MAX32672/LP/main.c index 8a4f00e22f4..102122e9417 100644 --- a/Examples/MAX32672/LP/main.c +++ b/Examples/MAX32672/LP/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/LP/project.mk b/Examples/MAX32672/LP/project.mk index 5ff4d85f78b..da7a1d81ec0 100644 --- a/Examples/MAX32672/LP/project.mk +++ b/Examples/MAX32672/LP/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/Library_Generate/.vscode/README.md b/Examples/MAX32672/Library_Generate/.vscode/README.md index e2e9a1a6522..a740741c3ab 100644 --- a/Examples/MAX32672/Library_Generate/.vscode/README.md +++ b/Examples/MAX32672/Library_Generate/.vscode/README.md @@ -7,11 +7,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) * If it's not in the README, check the UG. * If it's not in the UG, open a ticket! -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -38,7 +38,7 @@ The steps below are also available in video form in "Understanding Artificial In 2. Run the installer executable, and ensure that "Visual Studio Code Support" is enabled for your installation. - ![Selected Components](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/installer_components.JPG) + ![Selected Components](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/installer_components.JPG) 3. Finish the MSDK installation, taking note of where the MSDK was installed. @@ -54,7 +54,7 @@ The steps below are also available in video form in "Understanding Artificial In 9. Type "open settings json" and select the "Preferences: Open Settings (JSON)" option (_not_ the "Preferences: Open _Default_ Settings (JSON)"). This will open your user settings.json file in VS Code's editor. - ![Open Settings JSON Command](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/open_settings_json.jpg) + ![Open Settings JSON Command](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/open_settings_json.jpg) 10. Add the entries below into your user settings.json file. @@ -82,7 +82,7 @@ This section covers basic usage of the VSCode-Maxim project files. For document Visual Studio Code is built around a "working directory" paradigm. The editor is always rooted in a working directory, and the main mechanism for changing that directory is `File -> Open Folder...`. -![File -> Open Folder](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/file_openfolder.JPG) +![File -> Open Folder](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/file_openfolder.JPG) As a result, you'll notice that there is no "New Project" mechanism. A "project" in VS Code is simply a folder. It will look inside of the opened folder for a `.vscode` _sub_-folder to load project-specific settings from. @@ -90,11 +90,11 @@ A project that is configured for VS Code will have, at minimum, a .vscode sub-fo Ex: -![Example Directory Contents](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/opening_projects_2.jpg) +![Example Directory Contents](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/opening_projects_2.jpg) ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MSDK installation. @@ -102,7 +102,7 @@ Additionally, empty project templates and a drag-and-drop folder for "injecting" Once a project is opened 4 available build tasks will become available via `Terminal > Run Build task...` or the shortcut `Ctrl+Shift+B`. These tasks are configured by the `.vscode/task.json` file. -![Build Tasks Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/buildtasks.JPG) +![Build Tasks Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/buildtasks.JPG) #### Build @@ -138,7 +138,7 @@ Once a project is opened 4 available build tasks will become available via `Term ### Debugging -![Debug Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger.JPG) +![Debug Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger.JPG) Debugging is enabled by Visual Studio Code's integrated debugger. Launch configurations can be found in the `.vscode/launch.json` file. @@ -162,11 +162,11 @@ In general, the MAX-series microcontrollers have the following debugger limitati 3. Launch the debugger with `Run > Start Debugging`, with the shortcut `F5`, or via the `Run and Debug` window (Ctrl + Shift + D) and the green "launch" arrow. - ![Debug Tab](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_window.JPG) + ![Debug Tab](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_window.JPG) 4. The debugger will launch a GDB client & OpenOCD server, reset the microcontroller, and should break on entry into `main`. - ![Debugger Break on Main](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_breakmain.JPG) + ![Debugger Break on Main](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_breakmain.JPG) #### Using the Debugger @@ -174,13 +174,13 @@ In general, the MAX-series microcontrollers have the following debugger limitati The main interface for the debugger is the debugger control bar: -![Debugger Control Bar Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_bar.JPG) +![Debugger Control Bar Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_bar.JPG) `Continue | Step Over | Step Into | Step Out | Restart | Stop` Breakpoints can be set by clicking in the space next to the line number in a source code file. A red dot indicates a line to break on. Breakpoints can be removed by clicking on them again. Ex: -![Breakpoint](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/breakpoint.JPG) +![Breakpoint](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/breakpoint.JPG) ## Project Configuration @@ -190,7 +190,7 @@ Breakpoints can be set by clicking in the space next to the line number in a sou **When a change is made to this file, VS Code should be reloaded with CTRL+SHIFT+P -> Reload Window (or alternatively restarted completely) to force a re-parse.** -![Reload Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/reload_window.JPG) +![Reload Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/reload_window.JPG) The default project configuration should work for most use cases as long as `"target"` and `"board"` are set correctly. @@ -227,7 +227,7 @@ The following configuration options are available: * ... can be found in the `Libraries/Boards` folder of the MSDK * For example, the supported options for the MAX78000 are `"EvKit_V1"`, `"FTHR_RevA"`, and `"MAXREFDES178"`. - ![MAX78000 Boards](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/78000_boards.JPG) + ![MAX78000 Boards](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/78000_boards.JPG) ### Advanced Config Options @@ -353,7 +353,7 @@ A project's build system is managed by two files found in the project's root dir * `Makefile` * `project.mk` -![Files are located in the root directory](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) +![Files are located in the root directory](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) When the command... @@ -416,7 +416,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the @@ -540,7 +540,7 @@ If you want to start from scratch, take this option. ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/Library_Generate/Makefile b/Examples/MAX32672/Library_Generate/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/Library_Generate/Makefile +++ b/Examples/MAX32672/Library_Generate/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/Library_Generate/gpiolib.c b/Examples/MAX32672/Library_Generate/gpiolib.c index 5c8845edc78..252f6df4c44 100644 --- a/Examples/MAX32672/Library_Generate/gpiolib.c +++ b/Examples/MAX32672/Library_Generate/gpiolib.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Library_Generate/gpiolib.h b/Examples/MAX32672/Library_Generate/gpiolib.h index 2a055160039..78815f5d0f2 100644 --- a/Examples/MAX32672/Library_Generate/gpiolib.h +++ b/Examples/MAX32672/Library_Generate/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Library_Generate/project.mk b/Examples/MAX32672/Library_Generate/project.mk index 01dcd9fbb2a..b5729be6ef0 100644 --- a/Examples/MAX32672/Library_Generate/project.mk +++ b/Examples/MAX32672/Library_Generate/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/Library_Use/.vscode/README.md b/Examples/MAX32672/Library_Use/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/Library_Use/.vscode/README.md +++ b/Examples/MAX32672/Library_Use/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/Library_Use/.vscode/settings.json b/Examples/MAX32672/Library_Use/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/Library_Use/.vscode/settings.json +++ b/Examples/MAX32672/Library_Use/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/Library_Use/Makefile b/Examples/MAX32672/Library_Use/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/Library_Use/Makefile +++ b/Examples/MAX32672/Library_Use/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/Library_Use/lib/include/gpiolib.h b/Examples/MAX32672/Library_Use/lib/include/gpiolib.h index 973fae3c035..9cf37ed6e96 100644 --- a/Examples/MAX32672/Library_Use/lib/include/gpiolib.h +++ b/Examples/MAX32672/Library_Use/lib/include/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Library_Use/main.c b/Examples/MAX32672/Library_Use/main.c index a9c20ec444f..c686476d185 100644 --- a/Examples/MAX32672/Library_Use/main.c +++ b/Examples/MAX32672/Library_Use/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Library_Use/project.mk b/Examples/MAX32672/Library_Use/project.mk index f724d98b790..759fc12f1eb 100644 --- a/Examples/MAX32672/Library_Use/project.mk +++ b/Examples/MAX32672/Library_Use/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/OLED_Demo/.vscode/README.md b/Examples/MAX32672/OLED_Demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/OLED_Demo/.vscode/README.md +++ b/Examples/MAX32672/OLED_Demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/OLED_Demo/.vscode/settings.json b/Examples/MAX32672/OLED_Demo/.vscode/settings.json index 23f6a1c2b4b..0da42a5385a 100755 --- a/Examples/MAX32672/OLED_Demo/.vscode/settings.json +++ b/Examples/MAX32672/OLED_Demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/OLED_Demo/Makefile b/Examples/MAX32672/OLED_Demo/Makefile index 41c30d5dd1e..0bd8bc4ad5c 100644 --- a/Examples/MAX32672/OLED_Demo/Makefile +++ b/Examples/MAX32672/OLED_Demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/OLED_Demo/main.c b/Examples/MAX32672/OLED_Demo/main.c index c282e2606be..216608b294f 100644 --- a/Examples/MAX32672/OLED_Demo/main.c +++ b/Examples/MAX32672/OLED_Demo/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -79,7 +78,7 @@ static void rounder_cb(struct _lv_disp_drv_t *disp_drv, lv_area_t *area) area->y2 = (area->y2 & (~0x7)) + 7; } //============================================================================ -void lvgl_setup() +void lvgl_setup(void) { /* LittlevGL setup */ lv_init(); diff --git a/Examples/MAX32672/OLED_Demo/project.mk b/Examples/MAX32672/OLED_Demo/project.mk index ddaac4e6ee7..4e3648ad39e 100644 --- a/Examples/MAX32672/OLED_Demo/project.mk +++ b/Examples/MAX32672/OLED_Demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/OLED_Demo/resources/adi_logo_alpha1.c b/Examples/MAX32672/OLED_Demo/resources/adi_logo_alpha1.c index e2297ca5c46..61d0670aff8 100644 --- a/Examples/MAX32672/OLED_Demo/resources/adi_logo_alpha1.c +++ b/Examples/MAX32672/OLED_Demo/resources/adi_logo_alpha1.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/QDEC/.vscode/README.md b/Examples/MAX32672/QDEC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/QDEC/.vscode/README.md +++ b/Examples/MAX32672/QDEC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/QDEC/.vscode/settings.json b/Examples/MAX32672/QDEC/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/QDEC/.vscode/settings.json +++ b/Examples/MAX32672/QDEC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/QDEC/Makefile b/Examples/MAX32672/QDEC/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/QDEC/Makefile +++ b/Examples/MAX32672/QDEC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/QDEC/main.c b/Examples/MAX32672/QDEC/main.c index 5d4fa8f1d6f..4cdb06c6862 100644 --- a/Examples/MAX32672/QDEC/main.c +++ b/Examples/MAX32672/QDEC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/QDEC/project.mk b/Examples/MAX32672/QDEC/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/QDEC/project.mk +++ b/Examples/MAX32672/QDEC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/RTC/.vscode/README.md b/Examples/MAX32672/RTC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/RTC/.vscode/README.md +++ b/Examples/MAX32672/RTC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/RTC/.vscode/settings.json b/Examples/MAX32672/RTC/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/RTC/.vscode/settings.json +++ b/Examples/MAX32672/RTC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/RTC/Makefile b/Examples/MAX32672/RTC/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/RTC/Makefile +++ b/Examples/MAX32672/RTC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/RTC/main.c b/Examples/MAX32672/RTC/main.c index 0f2ec930888..4423f4e6ec5 100644 --- a/Examples/MAX32672/RTC/main.c +++ b/Examples/MAX32672/RTC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -109,12 +108,12 @@ void RTC_IRQHandler(void) } volatile int buttonPressed = 0; -void buttonHandler() +void buttonHandler(void) { buttonPressed = 1; } -void printTime() +void printTime(void) { int day, hr, min, err; uint32_t sec, rtc_readout; diff --git a/Examples/MAX32672/RTC/project.mk b/Examples/MAX32672/RTC/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/RTC/project.mk +++ b/Examples/MAX32672/RTC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/RTC_Backup/.vscode/README.md b/Examples/MAX32672/RTC_Backup/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/RTC_Backup/.vscode/README.md +++ b/Examples/MAX32672/RTC_Backup/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/RTC_Backup/.vscode/settings.json b/Examples/MAX32672/RTC_Backup/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/RTC_Backup/.vscode/settings.json +++ b/Examples/MAX32672/RTC_Backup/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/RTC_Backup/Makefile b/Examples/MAX32672/RTC_Backup/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/RTC_Backup/Makefile +++ b/Examples/MAX32672/RTC_Backup/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/RTC_Backup/main.c b/Examples/MAX32672/RTC_Backup/main.c index 769c8f86b7c..eaef7c056d5 100644 --- a/Examples/MAX32672/RTC_Backup/main.c +++ b/Examples/MAX32672/RTC_Backup/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -58,7 +57,7 @@ void RTC_IRQHandler(void) {} // ***************************************************************************** -void rescheduleAlarm() +void rescheduleAlarm(void) { uint32_t time; int flags = MXC_RTC_GetFlags(); @@ -86,7 +85,7 @@ void rescheduleAlarm() } // ***************************************************************************** -void printTime() +void printTime(void) { uint32_t day, hr, min, sec; @@ -106,7 +105,7 @@ void printTime() } // ***************************************************************************** -int configureRTC() +int configureRTC(void) { int rtcTrim; diff --git a/Examples/MAX32672/RTC_Backup/project.mk b/Examples/MAX32672/RTC_Backup/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/RTC_Backup/project.mk +++ b/Examples/MAX32672/RTC_Backup/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/SCPA_OTP_Dump/.vscode/README.md b/Examples/MAX32672/SCPA_OTP_Dump/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/SCPA_OTP_Dump/.vscode/README.md +++ b/Examples/MAX32672/SCPA_OTP_Dump/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/SCPA_OTP_Dump/.vscode/settings.json b/Examples/MAX32672/SCPA_OTP_Dump/.vscode/settings.json index 8bac05e1c5f..14ecc42ff32 100755 --- a/Examples/MAX32672/SCPA_OTP_Dump/.vscode/settings.json +++ b/Examples/MAX32672/SCPA_OTP_Dump/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/SCPA_OTP_Dump/Makefile b/Examples/MAX32672/SCPA_OTP_Dump/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/SCPA_OTP_Dump/Makefile +++ b/Examples/MAX32672/SCPA_OTP_Dump/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/SCPA_OTP_Dump/README.md b/Examples/MAX32672/SCPA_OTP_Dump/README.md index 07ff917c711..15becaaa9c0 100644 --- a/Examples/MAX32672/SCPA_OTP_Dump/README.md +++ b/Examples/MAX32672/SCPA_OTP_Dump/README.md @@ -18,11 +18,15 @@ PROJ_CFLAGS+=-DMAX32672_A1 ### Project Usage -Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. +Universal instructions on building this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +NOTE: This SCP Applet example project cannot be flashed and debugged like a regular example. It must be sent to the ROM bootloader using the SCP protocol. The MSDK offers Secure Bootloader Tools (SBT) in the `Tools/SBT` folder, and the `send_scp` utility is used to send the SCP packets to the device. + +See the [Secure Boot Tools User Guide](https://pdfserv.maximintegrated.com/en/an/ug7637-secure-boot-tools.pdf) for additional documentation. ### Project-Specific Build Notes -(None - this project builds as a standard example) +This project targets `scpa` builds by default (see [project.mk](project.mk)), which generates SCP packets for the application in the `build/scp_packets` folder. ## Required Connections @@ -30,9 +34,9 @@ Universal instructions on building, flashing, and debugging this project can be - Open a console (Powershell or bash) then send scp packages to device. ## Expected Output - ` - send_scp -c -i UART -s scp_packets\packet.list" - ` +``` +$ send_scp -c -i UART -s build/scp_packets/packet.list + [==================================================== ] 73% @@ -109,3 +113,4 @@ Please wait, reading data...
Disconnected !
SCP session OK
+``` \ No newline at end of file diff --git a/Examples/MAX32672/SCPA_OTP_Dump/main.c b/Examples/MAX32672/SCPA_OTP_Dump/main.c index e8afe8cff23..5f891efeb30 100644 --- a/Examples/MAX32672/SCPA_OTP_Dump/main.c +++ b/Examples/MAX32672/SCPA_OTP_Dump/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/SCPA_OTP_Dump/project.mk b/Examples/MAX32672/SCPA_OTP_Dump/project.mk index 6ca165a0710..054fd3449ad 100644 --- a/Examples/MAX32672/SCPA_OTP_Dump/project.mk +++ b/Examples/MAX32672/SCPA_OTP_Dump/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/SCPA_OTP_Dump/utils.c b/Examples/MAX32672/SCPA_OTP_Dump/utils.c index ae02a263b80..63e6ae19fbf 100644 --- a/Examples/MAX32672/SCPA_OTP_Dump/utils.c +++ b/Examples/MAX32672/SCPA_OTP_Dump/utils.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/SCPA_OTP_Dump/utils.h b/Examples/MAX32672/SCPA_OTP_Dump/utils.h index 211a4f5a7e7..81aa394a6c5 100644 --- a/Examples/MAX32672/SCPA_OTP_Dump/utils.h +++ b/Examples/MAX32672/SCPA_OTP_Dump/utils.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/SPI/.vscode/README.md b/Examples/MAX32672/SPI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/SPI/.vscode/README.md +++ b/Examples/MAX32672/SPI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/SPI/.vscode/settings.json b/Examples/MAX32672/SPI/.vscode/settings.json index 2d8de59c151..91239b69716 100755 --- a/Examples/MAX32672/SPI/.vscode/settings.json +++ b/Examples/MAX32672/SPI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/SPI/Makefile b/Examples/MAX32672/SPI/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/SPI/Makefile +++ b/Examples/MAX32672/SPI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/SPI/main.c b/Examples/MAX32672/SPI/main.c index 03fd687bcde..f9c744afe07 100644 --- a/Examples/MAX32672/SPI/main.c +++ b/Examples/MAX32672/SPI/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/SPI/project.mk b/Examples/MAX32672/SPI/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/SPI/project.mk +++ b/Examples/MAX32672/SPI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/SPI_MasterSlave/.vscode/README.md b/Examples/MAX32672/SPI_MasterSlave/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/SPI_MasterSlave/.vscode/README.md +++ b/Examples/MAX32672/SPI_MasterSlave/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/SPI_MasterSlave/.vscode/settings.json b/Examples/MAX32672/SPI_MasterSlave/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/SPI_MasterSlave/.vscode/settings.json +++ b/Examples/MAX32672/SPI_MasterSlave/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/SPI_MasterSlave/Makefile b/Examples/MAX32672/SPI_MasterSlave/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/SPI_MasterSlave/Makefile +++ b/Examples/MAX32672/SPI_MasterSlave/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/SPI_MasterSlave/main.c b/Examples/MAX32672/SPI_MasterSlave/main.c index c3b0593f7e7..e0aae733232 100644 --- a/Examples/MAX32672/SPI_MasterSlave/main.c +++ b/Examples/MAX32672/SPI_MasterSlave/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/SPI_MasterSlave/project.mk b/Examples/MAX32672/SPI_MasterSlave/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/SPI_MasterSlave/project.mk +++ b/Examples/MAX32672/SPI_MasterSlave/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/TMR/.vscode/README.md b/Examples/MAX32672/TMR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/TMR/.vscode/README.md +++ b/Examples/MAX32672/TMR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/TMR/.vscode/settings.json b/Examples/MAX32672/TMR/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/TMR/.vscode/settings.json +++ b/Examples/MAX32672/TMR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/TMR/Makefile b/Examples/MAX32672/TMR/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/TMR/Makefile +++ b/Examples/MAX32672/TMR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/TMR/main.c b/Examples/MAX32672/TMR/main.c index 9c0af084a02..0f86641b839 100644 --- a/Examples/MAX32672/TMR/main.c +++ b/Examples/MAX32672/TMR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -41,7 +40,7 @@ /***** Definitions *****/ // Parameters for PWM output -#define CLOCK_SOURCE MXC_TMR_8M_CLK // must be mxc_tmr_clock_t +#define CLOCK_SOURCE MXC_TMR_IBRO_CLK // must be mxc_tmr_clock_t // Parameters for Continuous timer #define OST_FREQ 1 // (Hz) @@ -71,7 +70,7 @@ /***** Functions *****/ -void PWMTimer() +void PWMTimer(void) { mxc_tmr_cfg_t tmr; unsigned int periodTicks; @@ -112,14 +111,14 @@ void PWMTimer() } // Toggles LED0 when continuous timer repeats -void ContinuousTimerHandler() +void ContinuousTimerHandler(void) { // Clear interrupt MXC_TMR_ClearFlags(CONT_TIMER); LED_Toggle(0); } -void ContinuousTimer() +void ContinuousTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; @@ -155,13 +154,13 @@ void ContinuousTimer() } // Turns on LED0 when Oneshot expires -void OneshotTimerHandler() +void OneshotTimerHandler(void) { MXC_TMR_ClearFlags(OST_TIMER); LED_Toggle(1); } -void OneshotTimer() +void OneshotTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; diff --git a/Examples/MAX32672/TMR/project.mk b/Examples/MAX32672/TMR/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/TMR/project.mk +++ b/Examples/MAX32672/TMR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/TRNG/.vscode/README.md b/Examples/MAX32672/TRNG/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/TRNG/.vscode/README.md +++ b/Examples/MAX32672/TRNG/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/TRNG/.vscode/settings.json b/Examples/MAX32672/TRNG/.vscode/settings.json index 2d8de59c151..91239b69716 100755 --- a/Examples/MAX32672/TRNG/.vscode/settings.json +++ b/Examples/MAX32672/TRNG/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/TRNG/Makefile b/Examples/MAX32672/TRNG/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/TRNG/Makefile +++ b/Examples/MAX32672/TRNG/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/TRNG/main.c b/Examples/MAX32672/TRNG/main.c index 5314e1c6857..d884cef8604 100644 --- a/Examples/MAX32672/TRNG/main.c +++ b/Examples/MAX32672/TRNG/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/TRNG/project.mk b/Examples/MAX32672/TRNG/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/TRNG/project.mk +++ b/Examples/MAX32672/TRNG/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/Temp_Monitor/.vscode/README.md b/Examples/MAX32672/Temp_Monitor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/Temp_Monitor/.vscode/README.md +++ b/Examples/MAX32672/Temp_Monitor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/Temp_Monitor/.vscode/settings.json b/Examples/MAX32672/Temp_Monitor/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/Temp_Monitor/.vscode/settings.json +++ b/Examples/MAX32672/Temp_Monitor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/Temp_Monitor/Makefile b/Examples/MAX32672/Temp_Monitor/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/Temp_Monitor/Makefile +++ b/Examples/MAX32672/Temp_Monitor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/Temp_Monitor/main.c b/Examples/MAX32672/Temp_Monitor/main.c index 002a9a4394f..02c5bb244db 100644 --- a/Examples/MAX32672/Temp_Monitor/main.c +++ b/Examples/MAX32672/Temp_Monitor/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Temp_Monitor/project.mk b/Examples/MAX32672/Temp_Monitor/project.mk index 8fdc33ccc4e..2a182e9f8e0 100644 --- a/Examples/MAX32672/Temp_Monitor/project.mk +++ b/Examples/MAX32672/Temp_Monitor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/Temp_Monitor/temp_monitor.c b/Examples/MAX32672/Temp_Monitor/temp_monitor.c index 030f4e59dbb..4fb59d6a2d0 100644 --- a/Examples/MAX32672/Temp_Monitor/temp_monitor.c +++ b/Examples/MAX32672/Temp_Monitor/temp_monitor.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/Temp_Monitor/temp_monitor.h b/Examples/MAX32672/Temp_Monitor/temp_monitor.h index 4dca1fe6190..413d101b33d 100644 --- a/Examples/MAX32672/Temp_Monitor/temp_monitor.h +++ b/Examples/MAX32672/Temp_Monitor/temp_monitor.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/UART/.vscode/README.md b/Examples/MAX32672/UART/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/UART/.vscode/README.md +++ b/Examples/MAX32672/UART/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/UART/.vscode/settings.json b/Examples/MAX32672/UART/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/UART/.vscode/settings.json +++ b/Examples/MAX32672/UART/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/UART/Makefile b/Examples/MAX32672/UART/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/UART/Makefile +++ b/Examples/MAX32672/UART/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/UART/main.c b/Examples/MAX32672/UART/main.c index 91ec97dc933..a56806f42a2 100644 --- a/Examples/MAX32672/UART/main.c +++ b/Examples/MAX32672/UART/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/UART/project.mk b/Examples/MAX32672/UART/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/UART/project.mk +++ b/Examples/MAX32672/UART/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/UART_DMA/.cproject b/Examples/MAX32672/UART_DMA/.cproject new file mode 100644 index 00000000000..bbbb2e72e57 --- /dev/null +++ b/Examples/MAX32672/UART_DMA/.cproject @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32672/UART_DMA/.project b/Examples/MAX32672/UART_DMA/.project new file mode 100644 index 00000000000..523d770068f --- /dev/null +++ b/Examples/MAX32672/UART_DMA/.project @@ -0,0 +1,26 @@ + + + UART_DMA + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32672/UART_DMA/.settings/language.settings.xml b/Examples/MAX32672/UART_DMA/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32672/UART_DMA/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32672/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32672/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32672/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32672/UART_DMA/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32672/UART_DMA/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..86095bdbccb --- /dev/null +++ b/Examples/MAX32672/UART_DMA/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=UART_DMA +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32672 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32672/UART_DMA/.settings/org.eclipse.core.resources.prefs b/Examples/MAX32672/UART_DMA/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 00000000000..99f26c0203a --- /dev/null +++ b/Examples/MAX32672/UART_DMA/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/Examples/MAX32672/UART_DMA/.vscode/README.md b/Examples/MAX32672/UART_DMA/.vscode/README.md new file mode 100755 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32672/UART_DMA/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32672/UART_DMA/.vscode/c_cpp_properties.json b/Examples/MAX32672/UART_DMA/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32672/UART_DMA/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32672/UART_DMA/.vscode/flash.gdb b/Examples/MAX32672/UART_DMA/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32672/UART_DMA/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32672/UART_DMA/.vscode/launch.json b/Examples/MAX32672/UART_DMA/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32672/UART_DMA/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32672/UART_DMA/.vscode/settings.json b/Examples/MAX32672/UART_DMA/.vscode/settings.json new file mode 100755 index 00000000000..948202f52a1 --- /dev/null +++ b/Examples/MAX32672/UART_DMA/.vscode/settings.json @@ -0,0 +1,84 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32672", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32672.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32672/UART_DMA/.vscode/tasks.json b/Examples/MAX32672/UART_DMA/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32672/UART_DMA/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32672/UART_DMA/Makefile b/Examples/MAX32672/UART_DMA/Makefile new file mode 100644 index 00000000000..bccb16e972e --- /dev/null +++ b/Examples/MAX32672/UART_DMA/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32672 +TARGET_UC := MAX32672 +TARGET_LC := max32672 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32672/UART_DMA/README.md b/Examples/MAX32672/UART_DMA/README.md new file mode 100644 index 00000000000..1dd3f3417a4 --- /dev/null +++ b/Examples/MAX32672/UART_DMA/README.md @@ -0,0 +1,71 @@ +## Description + +To demonstrate the use of the UART peripheral with DMA, data is sent between two UART ports on the MAX32672. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +(None - this project builds as a standard example) + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. +- Open an terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect P0.28 (RX of UART1) and P0.15 (TX of UART2). + +## Expected Output + +The Console UART of the device will output these messages: + +``` +**************** UART Example ****************** +This example sends data from one UART to another + +Connect RX(Px.xx) of UARTx and TX(Px.xx) of UARTx. + +To indicate a successful UART transfer, LED1 will illuminate. + +Push SW2 to continue + +UART Baud : 115200 Hz +Test Length : 512 bytes + +-->UART Initialized + +-->Data verified + +-->Example Succeeded + +``` + +or + +``` +**************** UART Example ****************** +This example sends data from one UART to another + +Connect RX(Px.xx) of UARTx and TX(Px.xx) of UARTx. + +To indicate a successful UART transfer, LED1 will illuminate. + +Push SW2 to continue + +UART Baud : 115200 Hz +Test Length : 512 bytes + +Acquired DMA channel 0 for RX transaction +Acquired DMA channel 1 for TX transaction + +-->UART Initialized + +-->Data verified + +-->Example Succeeded + +``` \ No newline at end of file diff --git a/Examples/MAX32672/UART_DMA/UART_DMA.launch b/Examples/MAX32672/UART_DMA/UART_DMA.launch new file mode 100644 index 00000000000..935fab67446 --- /dev/null +++ b/Examples/MAX32672/UART_DMA/UART_DMA.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32672/UART_DMA/main.c b/Examples/MAX32672/UART_DMA/main.c new file mode 100644 index 00000000000..493e37c6ba5 --- /dev/null +++ b/Examples/MAX32672/UART_DMA/main.c @@ -0,0 +1,274 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Main for UART with DMA example. + * @details This example demonstrates how to use DMA with UART for data transfer. + * The example sets up DMA channels to handle UART transmissions and receptions, + * looping back the TX of one UART to the RX of another UART. A jumper must be + * connected between P0.28 (RX of UART1) and P0.15 (TX of UART2). + * The example uses either automatic or manual DMA handler configuration + * depending on the AUTOHANDLERS macro definition. + */ + +/***** Includes *****/ +#include +#include +#include +#include "mxc_device.h" +#include "pb.h" +#include "board.h" +#include "mxc_delay.h" +#include "uart.h" +#include "dma.h" +#include "nvic_table.h" +#include "led.h" + +/***** Definitions *****/ +#define AUTOHANDLERS + +#define UART_BAUD 115200 +#define BUFF_SIZE 512 + +#define RX_UART MXC_UART1 +#define TX_UART MXC_UART2 + +/***** Globals *****/ +volatile int READ_FLAG; +volatile int WRITE_FLAG; +volatile int buttonPressed; +static mxc_uart_req_t read_req; +static mxc_uart_req_t write_req; + +/***** Functions *****/ +#ifndef AUTOHANDLERS +void DMA_RX_Handler(void) +{ + MXC_DMA_Handler(); +} + +void DMA_TX_Handler(void) +{ + MXC_DMA_Handler(); +} +#endif + +void readCallback(mxc_uart_req_t *req, int error) +{ + READ_FLAG = error; +} + +void writeCallback(mxc_uart_req_t *req, int error) +{ + WRITE_FLAG = error; +} + +void buttonHandler(void) +{ + buttonPressed = 1; +} + +#ifdef AUTOHANDLERS +int exampleDMAAutoHandlers(void) +{ + int error = 0; + + // Auto DMA handlers will automatically initialize DMA, acquire & assign channels, + // and guarantee that each transaction's callback function is executed when + // the transaction is complete. + MXC_UART_SetAutoDMAHandlers(RX_UART, true); + MXC_UART_SetAutoDMAHandlers(TX_UART, true); + + // "READ_FLAG" is set in the read transaction's callback. It will be set to 0 when + // the read request completes successfully. We use it to wait for the DMA transaction + // to complete, since the DMA APIs are asynchronous (non-blocking) + READ_FLAG = 1; + + error = MXC_UART_TransactionDMA(&read_req); + if (error) { + printf("-->Error starting DMA read: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + error = MXC_UART_TransactionDMA(&write_req); + if (error) { + printf("-->Error starting DMA write: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + while (READ_FLAG) {} + + printf("-->Transaction completed\n"); + return READ_FLAG; +} +#else +int exampleDMAManualHandlers(void) +{ + int error = 0; + + // Manally initialize DMA + MXC_DMA_Init(); + + // Manually acquire a channel for the read request and assign it to the drivers. + int rx_channel = MXC_DMA_AcquireChannel(); + if (rx_channel >= 0) { + printf("Acquired DMA channel %i for RX transaction\n", rx_channel); + } else { + printf("Failed to acquire RX DMA channel with error %i\n", rx_channel); + return rx_channel; + } + MXC_UART_SetRXDMAChannel(RX_UART, rx_channel); + + // Additionally, assign the NVIC IRQ to a function that calls "MXC_DMA_Handler()". + // This is required for any assigned callbacks to work. + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(rx_channel)); + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(rx_channel), DMA_RX_Handler); + + // Do the same for the write request. + int tx_channel = MXC_DMA_AcquireChannel(); + if (tx_channel >= 0) { + printf("Acquired DMA channel %i for RX transaction\n", tx_channel); + } else { + printf("Failed to acquire RX DMA channel with error %i\n", tx_channel); + return tx_channel; + } + MXC_UART_SetTXDMAChannel(TX_UART, tx_channel); + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(tx_channel)); + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(tx_channel), DMA_TX_Handler); + + // Initialize flags. We will use these to monitor when the read/write requests + // have completed, since the DMA APIs are asynchronous. + WRITE_FLAG = 1; + READ_FLAG = 1; + + error = MXC_UART_TransactionDMA(&read_req); + if (error) { + printf("-->Error starting DMA read: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + error = MXC_UART_TransactionDMA(&write_req); + if (error) { + printf("-->Error starting DMA write: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + while (WRITE_FLAG) {} + while (READ_FLAG) {} + + printf("-->Transaction completed\n"); + return WRITE_FLAG; +} +#endif // AUTOHANDLERS + +/******************************************************************************/ +int main(void) +{ + int error, i, fail = 0; + uint8_t TxData[BUFF_SIZE]; + uint8_t RxData[BUFF_SIZE]; + + printf("\n\n**************** UART Example ******************\n"); + printf("This example sends data from one UART to another\n"); + printf("\nConnect RX(P0.28) of UART1 and TX(P0.15) of UART2.\n\n"); + printf("To indicate a successful UART transfer, LED1 will illuminate.\n"); + printf("\nPush SW3 to continue\n"); + + buttonPressed = 0; + PB_RegisterCallback(0, (pb_callback)buttonHandler); + while (!buttonPressed) {} + + printf("\nUART Baud \t: %d Hz\n", UART_BAUD); + printf("Test Length \t: %d bytes\n\n", BUFF_SIZE); + + // Initialize the data buffers + for (i = 0; i < BUFF_SIZE; i++) { + TxData[i] = i; + } + memset(RxData, 0x0, BUFF_SIZE); + + // Initialize the UART + MXC_UART_SetPinMapping(TX_UART, MAP_B); + error = MXC_UART_Init(TX_UART, UART_BAUD, MXC_UART_IBRO_CLK); + if (error < E_NO_ERROR) { + printf("-->Error initializing UART: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + MXC_UART_SetPinMapping(RX_UART, MAP_A); + error = MXC_UART_Init(RX_UART, UART_BAUD, MXC_UART_IBRO_CLK); + if (error < E_NO_ERROR) { + printf("-->Error initializing UART: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + // Setup request structs describing the transactions. + // Request structs are placed in the global scope so they + // don't go out of context. This can happen when a req struct + // is declared inside a function and the function completes. + // The memory would be freed, invalidating the UART driver's + // pointers to it. + read_req.uart = RX_UART; + read_req.rxData = RxData; + read_req.rxLen = BUFF_SIZE; + read_req.txLen = 0; + read_req.callback = readCallback; + + write_req.uart = TX_UART; + write_req.txData = TxData; + write_req.txLen = BUFF_SIZE; + write_req.rxLen = 0; + write_req.callback = writeCallback; + + printf("-->UART Initialized\n\n"); + +#ifdef AUTOHANDLERS + error = exampleDMAAutoHandlers(); +#else + error = exampleDMAManualHandlers(); +#endif + + if (READ_FLAG != E_NO_ERROR) { + printf("-->Error with read callback; %d\n", READ_FLAG); + fail++; + } + + if ((error = memcmp(RxData, TxData, BUFF_SIZE)) != 0) { + printf("-->Error verifying Data: %d\n", error); + fail++; + } else { + printf("-->Data verified\n"); + } + + if (fail != 0) { + printf("\n-->Example Failed\n"); + LED_On(0); // indicates FAIL + return E_FAIL; + } + + LED_On(1); // indicates SUCCESS + printf("\n-->Example Succeeded\n"); + return E_NO_ERROR; +} diff --git a/Examples/MAX32672/UART_DMA/project.mk b/Examples/MAX32672/UART_DMA/project.mk new file mode 100644 index 00000000000..96eb02eae1d --- /dev/null +++ b/Examples/MAX32672/UART_DMA/project.mk @@ -0,0 +1,15 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Add your config here! + +# If you have secure version of MCU, set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 diff --git a/Examples/MAX32672/UCL/.vscode/README.md b/Examples/MAX32672/UCL/.vscode/README.md index f57d4364851..cc0783881d1 100644 --- a/Examples/MAX32672/UCL/.vscode/README.md +++ b/Examples/MAX32672/UCL/.vscode/README.md @@ -4,14 +4,14 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) -* [Wiki](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/wiki) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) +* [Wiki](https://github.com/analogdevicesinc/VSCode-Maxim/wiki) * If it's not in the readme, check the wiki. * If it's not in the wiki, open a ticket! ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. The following features are supported: @@ -91,7 +91,7 @@ Ex: ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MaximSDK installation. @@ -413,7 +413,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the diff --git a/Examples/MAX32672/UCL/Makefile b/Examples/MAX32672/UCL/Makefile index f26c2b63e5b..4baf6a14236 100644 --- a/Examples/MAX32672/UCL/Makefile +++ b/Examples/MAX32672/UCL/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -25,7 +24,7 @@ # in "project.mk", on the command-line, or with system environment # variables. -# See https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# See https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # for more detailed instructions on how to use this system. # The detailed instructions mentioned above are easier to read than @@ -375,7 +374,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/UCL/project.mk b/Examples/MAX32672/UCL/project.mk index 62c6aa45bf9..63192db80bd 100644 --- a/Examples/MAX32672/UCL/project.mk +++ b/Examples/MAX32672/UCL/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/Watchdog/.vscode/README.md b/Examples/MAX32672/Watchdog/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/Watchdog/.vscode/README.md +++ b/Examples/MAX32672/Watchdog/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/Watchdog/.vscode/settings.json b/Examples/MAX32672/Watchdog/.vscode/settings.json index f6f84d26037..948202f52a1 100755 --- a/Examples/MAX32672/Watchdog/.vscode/settings.json +++ b/Examples/MAX32672/Watchdog/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/Watchdog/Makefile b/Examples/MAX32672/Watchdog/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/Watchdog/Makefile +++ b/Examples/MAX32672/Watchdog/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/Watchdog/main.c b/Examples/MAX32672/Watchdog/main.c index 3f5920aea7b..13619cf8de2 100644 --- a/Examples/MAX32672/Watchdog/main.c +++ b/Examples/MAX32672/Watchdog/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -61,7 +60,7 @@ void WDT0_IRQHandler(void) printf("\nTIMEOUT!\n"); } -void wdt_setup() +void WDT_Setup(void) { MXC_WDT_Disable(MXC_WDT0); MXC_WDT_ResetTimer(MXC_WDT0); @@ -114,7 +113,7 @@ int main(void) blink_led(0, 3, 100); //Setup Watchdog - wdt_setup(); + WDT_Setup(); while (1) { //Push user push button to reset watchdog diff --git a/Examples/MAX32672/Watchdog/project.mk b/Examples/MAX32672/Watchdog/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32672/Watchdog/project.mk +++ b/Examples/MAX32672/Watchdog/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/WearLeveling/.vscode/README.md b/Examples/MAX32672/WearLeveling/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32672/WearLeveling/.vscode/README.md +++ b/Examples/MAX32672/WearLeveling/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32672/WearLeveling/.vscode/settings.json b/Examples/MAX32672/WearLeveling/.vscode/settings.json index f862c5f3829..6b1dddee0e1 100755 --- a/Examples/MAX32672/WearLeveling/.vscode/settings.json +++ b/Examples/MAX32672/WearLeveling/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32672/WearLeveling/Makefile b/Examples/MAX32672/WearLeveling/Makefile index b0b9c0a7ff2..bccb16e972e 100644 --- a/Examples/MAX32672/WearLeveling/Makefile +++ b/Examples/MAX32672/WearLeveling/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32672/WearLeveling/include/cli.h b/Examples/MAX32672/WearLeveling/include/cli.h index 875b20526f2..d5de6c519bc 100644 --- a/Examples/MAX32672/WearLeveling/include/cli.h +++ b/Examples/MAX32672/WearLeveling/include/cli.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/WearLeveling/include/file.h b/Examples/MAX32672/WearLeveling/include/file.h index ce64147c010..3db61129252 100644 --- a/Examples/MAX32672/WearLeveling/include/file.h +++ b/Examples/MAX32672/WearLeveling/include/file.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/WearLeveling/include/flash.h b/Examples/MAX32672/WearLeveling/include/flash.h index 95efe7742fe..9fc78bc2a64 100644 --- a/Examples/MAX32672/WearLeveling/include/flash.h +++ b/Examples/MAX32672/WearLeveling/include/flash.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/WearLeveling/include/main.h b/Examples/MAX32672/WearLeveling/include/main.h index c676c7d2bd2..c5478e19707 100644 --- a/Examples/MAX32672/WearLeveling/include/main.h +++ b/Examples/MAX32672/WearLeveling/include/main.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/WearLeveling/main.c b/Examples/MAX32672/WearLeveling/main.c index 8cee29e7e3c..25818605b59 100644 --- a/Examples/MAX32672/WearLeveling/main.c +++ b/Examples/MAX32672/WearLeveling/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/WearLeveling/project.mk b/Examples/MAX32672/WearLeveling/project.mk index 3137986a32e..cddf68e1a9d 100644 --- a/Examples/MAX32672/WearLeveling/project.mk +++ b/Examples/MAX32672/WearLeveling/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32672/WearLeveling/src/cli.c b/Examples/MAX32672/WearLeveling/src/cli.c index 488f3413dee..ea27a00faa5 100644 --- a/Examples/MAX32672/WearLeveling/src/cli.c +++ b/Examples/MAX32672/WearLeveling/src/cli.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/WearLeveling/src/file.c b/Examples/MAX32672/WearLeveling/src/file.c index dec9a57200f..ddb03186181 100644 --- a/Examples/MAX32672/WearLeveling/src/file.c +++ b/Examples/MAX32672/WearLeveling/src/file.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32672/WearLeveling/src/flash.c b/Examples/MAX32672/WearLeveling/src/flash.c index 8e7d7e392ab..ca7cfae803f 100644 --- a/Examples/MAX32672/WearLeveling/src/flash.c +++ b/Examples/MAX32672/WearLeveling/src/flash.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/ADC/.vscode/README.md b/Examples/MAX32675/ADC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/ADC/.vscode/README.md +++ b/Examples/MAX32675/ADC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/ADC/.vscode/settings.json b/Examples/MAX32675/ADC/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/ADC/.vscode/settings.json +++ b/Examples/MAX32675/ADC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/ADC/Makefile b/Examples/MAX32675/ADC/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/ADC/Makefile +++ b/Examples/MAX32675/ADC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/ADC/main.c b/Examples/MAX32675/ADC/main.c index b9d5ee7da44..5b4505cb48c 100644 --- a/Examples/MAX32675/ADC/main.c +++ b/Examples/MAX32675/ADC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/ADC/project.mk b/Examples/MAX32675/ADC/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/ADC/project.mk +++ b/Examples/MAX32675/ADC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/AES/.vscode/README.md b/Examples/MAX32675/AES/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/AES/.vscode/README.md +++ b/Examples/MAX32675/AES/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/AES/.vscode/settings.json b/Examples/MAX32675/AES/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/AES/.vscode/settings.json +++ b/Examples/MAX32675/AES/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/AES/Makefile b/Examples/MAX32675/AES/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/AES/Makefile +++ b/Examples/MAX32675/AES/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/AES/main.c b/Examples/MAX32675/AES/main.c index fac0a48cea2..8c84b2ea0ca 100644 --- a/Examples/MAX32675/AES/main.c +++ b/Examples/MAX32675/AES/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -52,7 +51,7 @@ mxc_aes_req_t req; volatile int dma_flag = 0; /***** Functions *****/ -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); dma_flag++; diff --git a/Examples/MAX32675/AES/project.mk b/Examples/MAX32675/AES/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/AES/project.mk +++ b/Examples/MAX32675/AES/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/AFE_DAC/.vscode/README.md b/Examples/MAX32675/AFE_DAC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/AFE_DAC/.vscode/README.md +++ b/Examples/MAX32675/AFE_DAC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/AFE_DAC/.vscode/settings.json b/Examples/MAX32675/AFE_DAC/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/AFE_DAC/.vscode/settings.json +++ b/Examples/MAX32675/AFE_DAC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/AFE_DAC/Makefile b/Examples/MAX32675/AFE_DAC/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/AFE_DAC/Makefile +++ b/Examples/MAX32675/AFE_DAC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/AFE_DAC/main.c b/Examples/MAX32675/AFE_DAC/main.c index da5b2bde1b1..2263be86a5c 100644 --- a/Examples/MAX32675/AFE_DAC/main.c +++ b/Examples/MAX32675/AFE_DAC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/AFE_DAC/project.mk b/Examples/MAX32675/AFE_DAC/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/AFE_DAC/project.mk +++ b/Examples/MAX32675/AFE_DAC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/ARM-DSP/README.md b/Examples/MAX32675/ARM-DSP/README.md index 9bb2d50bedc..5e1d116671b 100644 --- a/Examples/MAX32675/ARM-DSP/README.md +++ b/Examples/MAX32675/ARM-DSP/README.md @@ -8,7 +8,7 @@ The projects in this folder are ports of ARM's DSP example projects that can be Debug launch configurations are included in each project, and should appear in the "Favorites" menu in Eclipse. -Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop) +Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop) ## Software diff --git a/Examples/MAX32675/ARM-DSP/arm_bayes_example/.vscode/README.md b/Examples/MAX32675/ARM-DSP/arm_bayes_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/ARM-DSP/arm_bayes_example/.vscode/README.md +++ b/Examples/MAX32675/ARM-DSP/arm_bayes_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/ARM-DSP/arm_bayes_example/.vscode/settings.json b/Examples/MAX32675/ARM-DSP/arm_bayes_example/.vscode/settings.json index e9ca859920c..b9b62ca42e2 100755 --- a/Examples/MAX32675/ARM-DSP/arm_bayes_example/.vscode/settings.json +++ b/Examples/MAX32675/ARM-DSP/arm_bayes_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/ARM-DSP/arm_bayes_example/Makefile b/Examples/MAX32675/ARM-DSP/arm_bayes_example/Makefile index 4a00723f57c..104b36962b6 100644 --- a/Examples/MAX32675/ARM-DSP/arm_bayes_example/Makefile +++ b/Examples/MAX32675/ARM-DSP/arm_bayes_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/ARM-DSP/arm_bayes_example/project.mk b/Examples/MAX32675/ARM-DSP/arm_bayes_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32675/ARM-DSP/arm_bayes_example/project.mk +++ b/Examples/MAX32675/ARM-DSP/arm_bayes_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/ARM-DSP/arm_class_marks_example/.vscode/README.md b/Examples/MAX32675/ARM-DSP/arm_class_marks_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/ARM-DSP/arm_class_marks_example/.vscode/README.md +++ b/Examples/MAX32675/ARM-DSP/arm_class_marks_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/ARM-DSP/arm_class_marks_example/.vscode/settings.json b/Examples/MAX32675/ARM-DSP/arm_class_marks_example/.vscode/settings.json index e9ca859920c..b9b62ca42e2 100755 --- a/Examples/MAX32675/ARM-DSP/arm_class_marks_example/.vscode/settings.json +++ b/Examples/MAX32675/ARM-DSP/arm_class_marks_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/ARM-DSP/arm_class_marks_example/Makefile b/Examples/MAX32675/ARM-DSP/arm_class_marks_example/Makefile index 4a00723f57c..104b36962b6 100644 --- a/Examples/MAX32675/ARM-DSP/arm_class_marks_example/Makefile +++ b/Examples/MAX32675/ARM-DSP/arm_class_marks_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c b/Examples/MAX32675/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c index 30f548bc888..2ea5e90d59a 100644 --- a/Examples/MAX32675/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c +++ b/Examples/MAX32675/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c @@ -139,7 +139,7 @@ uint32_t student_num; * Main f32 test function. It returns maximum marks secured and student number * ------------------------------------------------------------------------------- */ -int main() +int main(void) { #ifndef USE_STATIC_INIT diff --git a/Examples/MAX32675/ARM-DSP/arm_class_marks_example/project.mk b/Examples/MAX32675/ARM-DSP/arm_class_marks_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32675/ARM-DSP/arm_class_marks_example/project.mk +++ b/Examples/MAX32675/ARM-DSP/arm_class_marks_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/ARM-DSP/arm_convolution_example/.vscode/README.md b/Examples/MAX32675/ARM-DSP/arm_convolution_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/ARM-DSP/arm_convolution_example/.vscode/README.md +++ b/Examples/MAX32675/ARM-DSP/arm_convolution_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/ARM-DSP/arm_convolution_example/.vscode/settings.json b/Examples/MAX32675/ARM-DSP/arm_convolution_example/.vscode/settings.json index e9ca859920c..b9b62ca42e2 100755 --- a/Examples/MAX32675/ARM-DSP/arm_convolution_example/.vscode/settings.json +++ b/Examples/MAX32675/ARM-DSP/arm_convolution_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/ARM-DSP/arm_convolution_example/Makefile b/Examples/MAX32675/ARM-DSP/arm_convolution_example/Makefile index 4a00723f57c..104b36962b6 100644 --- a/Examples/MAX32675/ARM-DSP/arm_convolution_example/Makefile +++ b/Examples/MAX32675/ARM-DSP/arm_convolution_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/ARM-DSP/arm_convolution_example/project.mk b/Examples/MAX32675/ARM-DSP/arm_convolution_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32675/ARM-DSP/arm_convolution_example/project.mk +++ b/Examples/MAX32675/ARM-DSP/arm_convolution_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md b/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md +++ b/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json b/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json index e9ca859920c..b9b62ca42e2 100755 --- a/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json +++ b/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/Makefile b/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/Makefile index 4a00723f57c..104b36962b6 100644 --- a/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/Makefile +++ b/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/project.mk b/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/project.mk +++ b/Examples/MAX32675/ARM-DSP/arm_dotproduct_example_f32/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/.vscode/README.md b/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/.vscode/README.md +++ b/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/.vscode/settings.json b/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/.vscode/settings.json index e9ca859920c..b9b62ca42e2 100755 --- a/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/.vscode/settings.json +++ b/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/Makefile b/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/Makefile index 4a00723f57c..104b36962b6 100644 --- a/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/Makefile +++ b/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/project.mk b/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/project.mk +++ b/Examples/MAX32675/ARM-DSP/arm_fft_bin_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/ARM-DSP/arm_fir_example/.vscode/README.md b/Examples/MAX32675/ARM-DSP/arm_fir_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/ARM-DSP/arm_fir_example/.vscode/README.md +++ b/Examples/MAX32675/ARM-DSP/arm_fir_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/ARM-DSP/arm_fir_example/.vscode/settings.json b/Examples/MAX32675/ARM-DSP/arm_fir_example/.vscode/settings.json index e9ca859920c..b9b62ca42e2 100755 --- a/Examples/MAX32675/ARM-DSP/arm_fir_example/.vscode/settings.json +++ b/Examples/MAX32675/ARM-DSP/arm_fir_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/ARM-DSP/arm_fir_example/Makefile b/Examples/MAX32675/ARM-DSP/arm_fir_example/Makefile index 4a00723f57c..104b36962b6 100644 --- a/Examples/MAX32675/ARM-DSP/arm_fir_example/Makefile +++ b/Examples/MAX32675/ARM-DSP/arm_fir_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/ARM-DSP/arm_fir_example/project.mk b/Examples/MAX32675/ARM-DSP/arm_fir_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32675/ARM-DSP/arm_fir_example/project.mk +++ b/Examples/MAX32675/ARM-DSP/arm_fir_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md b/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md +++ b/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json b/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json index e9ca859920c..b9b62ca42e2 100755 --- a/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json +++ b/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/Makefile b/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/Makefile index 4a00723f57c..104b36962b6 100644 --- a/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/Makefile +++ b/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/project.mk b/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/project.mk +++ b/Examples/MAX32675/ARM-DSP/arm_graphic_equalizer_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/.vscode/README.md b/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/.vscode/README.md +++ b/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/.vscode/settings.json b/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/.vscode/settings.json index e9ca859920c..b9b62ca42e2 100755 --- a/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/.vscode/settings.json +++ b/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/Makefile b/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/Makefile index 4a00723f57c..104b36962b6 100644 --- a/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/Makefile +++ b/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/project.mk b/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/project.mk +++ b/Examples/MAX32675/ARM-DSP/arm_linear_interp_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/ARM-DSP/arm_matrix_example/.vscode/README.md b/Examples/MAX32675/ARM-DSP/arm_matrix_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/ARM-DSP/arm_matrix_example/.vscode/README.md +++ b/Examples/MAX32675/ARM-DSP/arm_matrix_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/ARM-DSP/arm_matrix_example/.vscode/settings.json b/Examples/MAX32675/ARM-DSP/arm_matrix_example/.vscode/settings.json index e9ca859920c..b9b62ca42e2 100755 --- a/Examples/MAX32675/ARM-DSP/arm_matrix_example/.vscode/settings.json +++ b/Examples/MAX32675/ARM-DSP/arm_matrix_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/ARM-DSP/arm_matrix_example/Makefile b/Examples/MAX32675/ARM-DSP/arm_matrix_example/Makefile index 4a00723f57c..104b36962b6 100644 --- a/Examples/MAX32675/ARM-DSP/arm_matrix_example/Makefile +++ b/Examples/MAX32675/ARM-DSP/arm_matrix_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/ARM-DSP/arm_matrix_example/project.mk b/Examples/MAX32675/ARM-DSP/arm_matrix_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32675/ARM-DSP/arm_matrix_example/project.mk +++ b/Examples/MAX32675/ARM-DSP/arm_matrix_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/.vscode/README.md b/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/.vscode/README.md +++ b/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/.vscode/settings.json b/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/.vscode/settings.json index e9ca859920c..b9b62ca42e2 100755 --- a/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/.vscode/settings.json +++ b/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/Makefile b/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/Makefile index 4a00723f57c..104b36962b6 100644 --- a/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/Makefile +++ b/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/project.mk b/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/project.mk +++ b/Examples/MAX32675/ARM-DSP/arm_signal_converge_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/.vscode/README.md b/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/.vscode/README.md +++ b/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/.vscode/settings.json b/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/.vscode/settings.json index e9ca859920c..b9b62ca42e2 100755 --- a/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/.vscode/settings.json +++ b/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/Makefile b/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/Makefile index 4a00723f57c..104b36962b6 100644 --- a/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/Makefile +++ b/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/project.mk b/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/project.mk +++ b/Examples/MAX32675/ARM-DSP/arm_sin_cos_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/ARM-DSP/arm_svm_example/.vscode/README.md b/Examples/MAX32675/ARM-DSP/arm_svm_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/ARM-DSP/arm_svm_example/.vscode/README.md +++ b/Examples/MAX32675/ARM-DSP/arm_svm_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/ARM-DSP/arm_svm_example/.vscode/settings.json b/Examples/MAX32675/ARM-DSP/arm_svm_example/.vscode/settings.json index e9ca859920c..b9b62ca42e2 100755 --- a/Examples/MAX32675/ARM-DSP/arm_svm_example/.vscode/settings.json +++ b/Examples/MAX32675/ARM-DSP/arm_svm_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/ARM-DSP/arm_svm_example/Makefile b/Examples/MAX32675/ARM-DSP/arm_svm_example/Makefile index 4a00723f57c..104b36962b6 100644 --- a/Examples/MAX32675/ARM-DSP/arm_svm_example/Makefile +++ b/Examples/MAX32675/ARM-DSP/arm_svm_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/ARM-DSP/arm_svm_example/project.mk b/Examples/MAX32675/ARM-DSP/arm_svm_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32675/ARM-DSP/arm_svm_example/project.mk +++ b/Examples/MAX32675/ARM-DSP/arm_svm_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/ARM-DSP/arm_variance_example/.vscode/README.md b/Examples/MAX32675/ARM-DSP/arm_variance_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/ARM-DSP/arm_variance_example/.vscode/README.md +++ b/Examples/MAX32675/ARM-DSP/arm_variance_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/ARM-DSP/arm_variance_example/.vscode/settings.json b/Examples/MAX32675/ARM-DSP/arm_variance_example/.vscode/settings.json index e9ca859920c..b9b62ca42e2 100755 --- a/Examples/MAX32675/ARM-DSP/arm_variance_example/.vscode/settings.json +++ b/Examples/MAX32675/ARM-DSP/arm_variance_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/ARM-DSP/arm_variance_example/Makefile b/Examples/MAX32675/ARM-DSP/arm_variance_example/Makefile index 4a00723f57c..104b36962b6 100644 --- a/Examples/MAX32675/ARM-DSP/arm_variance_example/Makefile +++ b/Examples/MAX32675/ARM-DSP/arm_variance_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/ARM-DSP/arm_variance_example/project.mk b/Examples/MAX32675/ARM-DSP/arm_variance_example/project.mk index df10f24f3bd..2169891eee5 100644 --- a/Examples/MAX32675/ARM-DSP/arm_variance_example/project.mk +++ b/Examples/MAX32675/ARM-DSP/arm_variance_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/CRC/.vscode/README.md b/Examples/MAX32675/CRC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/CRC/.vscode/README.md +++ b/Examples/MAX32675/CRC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/CRC/.vscode/settings.json b/Examples/MAX32675/CRC/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/CRC/.vscode/settings.json +++ b/Examples/MAX32675/CRC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/CRC/Makefile b/Examples/MAX32675/CRC/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/CRC/Makefile +++ b/Examples/MAX32675/CRC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/CRC/main.c b/Examples/MAX32675/CRC/main.c index 36fc880426d..d0b9a44fe52 100644 --- a/Examples/MAX32675/CRC/main.c +++ b/Examples/MAX32675/CRC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/CRC/project.mk b/Examples/MAX32675/CRC/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/CRC/project.mk +++ b/Examples/MAX32675/CRC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/Coremark/.vscode/README.md b/Examples/MAX32675/Coremark/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/Coremark/.vscode/README.md +++ b/Examples/MAX32675/Coremark/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/Coremark/.vscode/settings.json b/Examples/MAX32675/Coremark/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/Coremark/.vscode/settings.json +++ b/Examples/MAX32675/Coremark/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/Coremark/Makefile b/Examples/MAX32675/Coremark/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/Coremark/Makefile +++ b/Examples/MAX32675/Coremark/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/Coremark/project.mk b/Examples/MAX32675/Coremark/project.mk index 9ded8091069..a6efc624169 100644 --- a/Examples/MAX32675/Coremark/project.mk +++ b/Examples/MAX32675/Coremark/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/DMA/.vscode/README.md b/Examples/MAX32675/DMA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/DMA/.vscode/README.md +++ b/Examples/MAX32675/DMA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/DMA/.vscode/settings.json b/Examples/MAX32675/DMA/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/DMA/.vscode/settings.json +++ b/Examples/MAX32675/DMA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/DMA/Makefile b/Examples/MAX32675/DMA/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/DMA/Makefile +++ b/Examples/MAX32675/DMA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/DMA/main.c b/Examples/MAX32675/DMA/main.c index fe8ceb1adaf..6c636b01720 100644 --- a/Examples/MAX32675/DMA/main.c +++ b/Examples/MAX32675/DMA/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -56,7 +55,7 @@ void memCpyComplete(void *dest) flag++; } -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); } diff --git a/Examples/MAX32675/DMA/project.mk b/Examples/MAX32675/DMA/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/DMA/project.mk +++ b/Examples/MAX32675/DMA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/EEPROM_Emulator/.vscode/README.md b/Examples/MAX32675/EEPROM_Emulator/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/EEPROM_Emulator/.vscode/README.md +++ b/Examples/MAX32675/EEPROM_Emulator/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/EEPROM_Emulator/.vscode/settings.json b/Examples/MAX32675/EEPROM_Emulator/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/EEPROM_Emulator/.vscode/settings.json +++ b/Examples/MAX32675/EEPROM_Emulator/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/EEPROM_Emulator/Makefile b/Examples/MAX32675/EEPROM_Emulator/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/EEPROM_Emulator/Makefile +++ b/Examples/MAX32675/EEPROM_Emulator/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/EEPROM_Emulator/include/cache.h b/Examples/MAX32675/EEPROM_Emulator/include/cache.h index b2452beb1e7..7dbd1562298 100644 --- a/Examples/MAX32675/EEPROM_Emulator/include/cache.h +++ b/Examples/MAX32675/EEPROM_Emulator/include/cache.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/EEPROM_Emulator/include/eeprom.h b/Examples/MAX32675/EEPROM_Emulator/include/eeprom.h index 0061e17cb59..b1f95075ca2 100644 --- a/Examples/MAX32675/EEPROM_Emulator/include/eeprom.h +++ b/Examples/MAX32675/EEPROM_Emulator/include/eeprom.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/EEPROM_Emulator/main.c b/Examples/MAX32675/EEPROM_Emulator/main.c index 5ec0aa2fda2..c999547b363 100644 --- a/Examples/MAX32675/EEPROM_Emulator/main.c +++ b/Examples/MAX32675/EEPROM_Emulator/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/EEPROM_Emulator/project.mk b/Examples/MAX32675/EEPROM_Emulator/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/EEPROM_Emulator/project.mk +++ b/Examples/MAX32675/EEPROM_Emulator/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/EEPROM_Emulator/src/cache.c b/Examples/MAX32675/EEPROM_Emulator/src/cache.c index 17bc7b57c13..adf98b89839 100644 --- a/Examples/MAX32675/EEPROM_Emulator/src/cache.c +++ b/Examples/MAX32675/EEPROM_Emulator/src/cache.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/EEPROM_Emulator/src/eeprom.c b/Examples/MAX32675/EEPROM_Emulator/src/eeprom.c index 22ede1df092..266766e2e42 100644 --- a/Examples/MAX32675/EEPROM_Emulator/src/eeprom.c +++ b/Examples/MAX32675/EEPROM_Emulator/src/eeprom.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/Flash/.vscode/README.md b/Examples/MAX32675/Flash/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/Flash/.vscode/README.md +++ b/Examples/MAX32675/Flash/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/Flash/.vscode/settings.json b/Examples/MAX32675/Flash/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/Flash/.vscode/settings.json +++ b/Examples/MAX32675/Flash/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/Flash/Makefile b/Examples/MAX32675/Flash/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/Flash/Makefile +++ b/Examples/MAX32675/Flash/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/Flash/main.c b/Examples/MAX32675/Flash/main.c index aedcd749802..d1ea9e47748 100644 --- a/Examples/MAX32675/Flash/main.c +++ b/Examples/MAX32675/Flash/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -40,6 +39,7 @@ #include "uart.h" #include "led.h" #include "pb.h" +#include "ecc_regs.h" /***** Definitions *****/ #define TEST_ADDRESS (MXC_FLASH_MEM_BASE + MXC_FLASH_MEM_SIZE) - (1 * MXC_FLASH_PAGE_SIZE) @@ -60,7 +60,7 @@ volatile uint32_t isr_flags; //****************************************************************************** int button_pressed = 0; -void button_handler() +void button_handler(void) { button_pressed = 1; } @@ -121,7 +121,7 @@ void setup_irqs(void) isr_cnt = 0; } -int write_test_pattern() +int write_test_pattern(void) { int err; // A flash address must be in the erased state before writing to it, because the @@ -163,7 +163,7 @@ int write_test_pattern() return err; } -int validate_test_pattern() +int validate_test_pattern(void) { int err = 0; @@ -183,7 +183,7 @@ int validate_test_pattern() return err; } -int erase_magic() +int erase_magic(void) { /* To modify a location in flash that has already been written to, @@ -229,8 +229,12 @@ int main(void) int err = 0; printf("\n\n***** Flash Control Example *****\n"); + printf("ECC is disabled for this example.\n"); printf("Press Push Button 1 (PB1/SW1) to continue...\n\n"); + // Disable ECC for this example. + MXC_ECC->en &= ~MXC_F_ECC_EN_FLASH; + PB_RegisterCallback(0, (pb_callback)button_handler); while (!button_pressed) { diff --git a/Examples/MAX32675/Flash/project.mk b/Examples/MAX32675/Flash/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/Flash/project.mk +++ b/Examples/MAX32675/Flash/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/Flash_CLI/.vscode/README.md b/Examples/MAX32675/Flash_CLI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/Flash_CLI/.vscode/README.md +++ b/Examples/MAX32675/Flash_CLI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/Flash_CLI/.vscode/settings.json b/Examples/MAX32675/Flash_CLI/.vscode/settings.json index 036ab7079c7..7dd56a63391 100755 --- a/Examples/MAX32675/Flash_CLI/.vscode/settings.json +++ b/Examples/MAX32675/Flash_CLI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/Flash_CLI/CLI-commands.c b/Examples/MAX32675/Flash_CLI/CLI-commands.c index 97a0494bdfa..ff1bff5026e 100644 --- a/Examples/MAX32675/Flash_CLI/CLI-commands.c +++ b/Examples/MAX32675/Flash_CLI/CLI-commands.c @@ -81,6 +81,7 @@ #include "definitions.h" #include "mxc_errors.h" +#include "ecc_regs.h" static char *getParamString(const char *commandString, size_t paramNo) { @@ -94,6 +95,20 @@ static char *getParamString(const char *commandString, size_t paramNo) return buff; } +static BaseType_t prvECCCommand(char *pcWriteBuffer, size_t xWriteBufferLen, + const char *pcCommandString); + +/* Structure that defines the "echo_parameters" command line command. This +takes a variable number of parameters that the command simply echos back one at +a time. */ +static const CLI_Command_Definition_t xECCCommand = { + "ecc", + "\r\necc <0/1>: \r\n Enables (1) or Disables (0) Flash ECC. You MUST disable ECC to use" + "the flash features\r\n", + prvECCCommand, /* The function to run. */ + 1 /* The user can enter any number of commands. */ +}; + static BaseType_t prvEraseCommand(char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString); @@ -158,6 +173,7 @@ static const CLI_Command_Definition_t xCRCCommand = { void vRegisterCLICommands(void) { /* Register all the command line commands defined immediately above. */ + FreeRTOS_CLIRegisterCommand(&xECCCommand); FreeRTOS_CLIRegisterCommand(&xEraseCommand); FreeRTOS_CLIRegisterCommand(&xWriteCommand); FreeRTOS_CLIRegisterCommand(&xReadCommand); @@ -165,6 +181,36 @@ void vRegisterCLICommands(void) } /*-----------------------------------------------------------*/ +static BaseType_t prvECCCommand(char *pcWriteBuffer, size_t xWriteBufferLen, + const char *pcCommandString) +{ + /* Remove compile time warnings about unused parameters, and check the + write buffer is not NULL. NOTE - for simplicity, this example assumes the + write buffer length is adequate, so does not check for buffer overflows. */ + (void)pcCommandString; + (void)xWriteBufferLen; + configASSERT(pcWriteBuffer); + + const char *pcParameterSetting; + + /* Obtain the parameter string. */ + pcParameterSetting = getParamString(pcCommandString, 1); + + int setting = atoi(pcParameterSetting); + + portENTER_CRITICAL(); + if (setting) { + MXC_ECC->en |= MXC_F_ECC_EN_FLASH; + } else { + MXC_ECC->en &= ~MXC_F_ECC_EN_FLASH; + } + portEXIT_CRITICAL(); + memset(pcWriteBuffer, 0x00, xWriteBufferLen); + snprintf(pcWriteBuffer, xWriteBufferLen, "ECC: %s\n", + (setting) ? "Enabled (1)" : "Disabled (0)"); + return pdFALSE; +} + static BaseType_t prvEraseCommand(char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString) { diff --git a/Examples/MAX32675/Flash_CLI/FreeRTOSConfig.h b/Examples/MAX32675/Flash_CLI/FreeRTOSConfig.h index 329c51a6e0c..c699144dbf8 100644 --- a/Examples/MAX32675/Flash_CLI/FreeRTOSConfig.h +++ b/Examples/MAX32675/Flash_CLI/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/Flash_CLI/Makefile b/Examples/MAX32675/Flash_CLI/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/Flash_CLI/Makefile +++ b/Examples/MAX32675/Flash_CLI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/Flash_CLI/definitions.h b/Examples/MAX32675/Flash_CLI/definitions.h index 9ea456b8470..bb3b9b2eb38 100644 --- a/Examples/MAX32675/Flash_CLI/definitions.h +++ b/Examples/MAX32675/Flash_CLI/definitions.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/Flash_CLI/main.c b/Examples/MAX32675/Flash_CLI/main.c index 448c3018548..afce15d97a0 100644 --- a/Examples/MAX32675/Flash_CLI/main.c +++ b/Examples/MAX32675/Flash_CLI/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/Flash_CLI/project.mk b/Examples/MAX32675/Flash_CLI/project.mk index 43672c17ae6..19260392bbc 100644 --- a/Examples/MAX32675/Flash_CLI/project.mk +++ b/Examples/MAX32675/Flash_CLI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/FreeRTOSDemo/.vscode/README.md b/Examples/MAX32675/FreeRTOSDemo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/FreeRTOSDemo/.vscode/README.md +++ b/Examples/MAX32675/FreeRTOSDemo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/FreeRTOSDemo/.vscode/settings.json b/Examples/MAX32675/FreeRTOSDemo/.vscode/settings.json index 036ab7079c7..7dd56a63391 100755 --- a/Examples/MAX32675/FreeRTOSDemo/.vscode/settings.json +++ b/Examples/MAX32675/FreeRTOSDemo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/FreeRTOSDemo/FreeRTOSConfig.h b/Examples/MAX32675/FreeRTOSDemo/FreeRTOSConfig.h index 5a358a981d2..ac6c0e70e5e 100644 --- a/Examples/MAX32675/FreeRTOSDemo/FreeRTOSConfig.h +++ b/Examples/MAX32675/FreeRTOSDemo/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/FreeRTOSDemo/Makefile b/Examples/MAX32675/FreeRTOSDemo/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/FreeRTOSDemo/Makefile +++ b/Examples/MAX32675/FreeRTOSDemo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/FreeRTOSDemo/freertos_tickless.c b/Examples/MAX32675/FreeRTOSDemo/freertos_tickless.c index 55039948e4e..9d298af043d 100644 --- a/Examples/MAX32675/FreeRTOSDemo/freertos_tickless.c +++ b/Examples/MAX32675/FreeRTOSDemo/freertos_tickless.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/FreeRTOSDemo/main.c b/Examples/MAX32675/FreeRTOSDemo/main.c index 31987244737..71440fb66d8 100644 --- a/Examples/MAX32675/FreeRTOSDemo/main.c +++ b/Examples/MAX32675/FreeRTOSDemo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/FreeRTOSDemo/project.mk b/Examples/MAX32675/FreeRTOSDemo/project.mk index 43672c17ae6..19260392bbc 100644 --- a/Examples/MAX32675/FreeRTOSDemo/project.mk +++ b/Examples/MAX32675/FreeRTOSDemo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/GPIO/.vscode/README.md b/Examples/MAX32675/GPIO/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/GPIO/.vscode/README.md +++ b/Examples/MAX32675/GPIO/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/GPIO/.vscode/settings.json b/Examples/MAX32675/GPIO/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/GPIO/.vscode/settings.json +++ b/Examples/MAX32675/GPIO/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/GPIO/Makefile b/Examples/MAX32675/GPIO/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/GPIO/Makefile +++ b/Examples/MAX32675/GPIO/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/GPIO/main.c b/Examples/MAX32675/GPIO/main.c index 7a7bece1cc0..023294037b0 100644 --- a/Examples/MAX32675/GPIO/main.c +++ b/Examples/MAX32675/GPIO/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/GPIO/project.mk b/Examples/MAX32675/GPIO/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/GPIO/project.mk +++ b/Examples/MAX32675/GPIO/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/HART_UART/.vscode/README.md b/Examples/MAX32675/HART_UART/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/HART_UART/.vscode/README.md +++ b/Examples/MAX32675/HART_UART/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/HART_UART/.vscode/settings.json b/Examples/MAX32675/HART_UART/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/HART_UART/.vscode/settings.json +++ b/Examples/MAX32675/HART_UART/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/HART_UART/Makefile b/Examples/MAX32675/HART_UART/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/HART_UART/Makefile +++ b/Examples/MAX32675/HART_UART/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/HART_UART/main.c b/Examples/MAX32675/HART_UART/main.c index ac36eb894bf..81e77cc175b 100644 --- a/Examples/MAX32675/HART_UART/main.c +++ b/Examples/MAX32675/HART_UART/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/HART_UART/project.mk b/Examples/MAX32675/HART_UART/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/HART_UART/project.mk +++ b/Examples/MAX32675/HART_UART/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/Hello_World/.vscode/README.md b/Examples/MAX32675/Hello_World/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/Hello_World/.vscode/README.md +++ b/Examples/MAX32675/Hello_World/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/Hello_World/.vscode/settings.json b/Examples/MAX32675/Hello_World/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/Hello_World/.vscode/settings.json +++ b/Examples/MAX32675/Hello_World/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/Hello_World/Makefile b/Examples/MAX32675/Hello_World/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/Hello_World/Makefile +++ b/Examples/MAX32675/Hello_World/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/Hello_World/main.c b/Examples/MAX32675/Hello_World/main.c index bea69a62300..ad20d280fff 100644 --- a/Examples/MAX32675/Hello_World/main.c +++ b/Examples/MAX32675/Hello_World/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/Hello_World/project.mk b/Examples/MAX32675/Hello_World/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/Hello_World/project.mk +++ b/Examples/MAX32675/Hello_World/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/Hello_World_Cpp/.vscode/README.md b/Examples/MAX32675/Hello_World_Cpp/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/Hello_World_Cpp/.vscode/README.md +++ b/Examples/MAX32675/Hello_World_Cpp/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/Hello_World_Cpp/.vscode/settings.json b/Examples/MAX32675/Hello_World_Cpp/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/Hello_World_Cpp/.vscode/settings.json +++ b/Examples/MAX32675/Hello_World_Cpp/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/Hello_World_Cpp/Makefile b/Examples/MAX32675/Hello_World_Cpp/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/Hello_World_Cpp/Makefile +++ b/Examples/MAX32675/Hello_World_Cpp/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/Hello_World_Cpp/main.cpp b/Examples/MAX32675/Hello_World_Cpp/main.cpp index daade0e995d..fdf8363cde1 100644 --- a/Examples/MAX32675/Hello_World_Cpp/main.cpp +++ b/Examples/MAX32675/Hello_World_Cpp/main.cpp @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -66,7 +65,7 @@ class LED { int blink_count; }; -int main() +int main(void) { LED led = LED(0); diff --git a/Examples/MAX32675/Hello_World_Cpp/project.mk b/Examples/MAX32675/Hello_World_Cpp/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX32675/Hello_World_Cpp/project.mk +++ b/Examples/MAX32675/Hello_World_Cpp/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/I2C/.vscode/README.md b/Examples/MAX32675/I2C/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/I2C/.vscode/README.md +++ b/Examples/MAX32675/I2C/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/I2C/.vscode/settings.json b/Examples/MAX32675/I2C/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/I2C/.vscode/settings.json +++ b/Examples/MAX32675/I2C/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/I2C/Makefile b/Examples/MAX32675/I2C/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/I2C/Makefile +++ b/Examples/MAX32675/I2C/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/I2C/README.md b/Examples/MAX32675/I2C/README.md index ad669c07f2f..b0fc3c79a6a 100644 --- a/Examples/MAX32675/I2C/README.md +++ b/Examples/MAX32675/I2C/README.md @@ -19,6 +19,9 @@ Universal instructions on building, flashing, and debugging this project can be - Open an terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - You must connect P0.18 to P0.6 (SCL) and P0.19 to P0.7 (SCL). +If using the MAX32675 RevB: +- Close I2C pull-up jumpers JP25 and JP26 + ## Expected Output ``` ******** I2C SLAVE ASYNC TRANSACTION TEST ********* diff --git a/Examples/MAX32675/I2C/main.c b/Examples/MAX32675/I2C/main.c index 5d8e11d8b9b..7661fca7a72 100644 --- a/Examples/MAX32675/I2C/main.c +++ b/Examples/MAX32675/I2C/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -190,7 +189,7 @@ int verifyData(void) } // ***************************************************************************** -int main() +int main(void) { printf("\n******** I2C Master-Slave Transaction Demo *********\n"); printf("\nThis example uses one I2C peripheral as a master to\n"); diff --git a/Examples/MAX32675/I2C/project.mk b/Examples/MAX32675/I2C/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/I2C/project.mk +++ b/Examples/MAX32675/I2C/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/I2C_MNGR/.vscode/README.md b/Examples/MAX32675/I2C_MNGR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/I2C_MNGR/.vscode/README.md +++ b/Examples/MAX32675/I2C_MNGR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/I2C_MNGR/.vscode/settings.json b/Examples/MAX32675/I2C_MNGR/.vscode/settings.json index b4182f55be3..7a15a2469f4 100755 --- a/Examples/MAX32675/I2C_MNGR/.vscode/settings.json +++ b/Examples/MAX32675/I2C_MNGR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/I2C_MNGR/FreeRTOSConfig.h b/Examples/MAX32675/I2C_MNGR/FreeRTOSConfig.h index 0cf8d7f2c48..c636cfaa67a 100644 --- a/Examples/MAX32675/I2C_MNGR/FreeRTOSConfig.h +++ b/Examples/MAX32675/I2C_MNGR/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/I2C_MNGR/Makefile b/Examples/MAX32675/I2C_MNGR/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/I2C_MNGR/Makefile +++ b/Examples/MAX32675/I2C_MNGR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/I2C_MNGR/README.md b/Examples/MAX32675/I2C_MNGR/README.md index 31dd62827ab..5ca3e0506e8 100644 --- a/Examples/MAX32675/I2C_MNGR/README.md +++ b/Examples/MAX32675/I2C_MNGR/README.md @@ -26,6 +26,9 @@ Universal instructions on building, flashing, and debugging this project can be - Connect P0.7 on header JH1 to the SDA line of the I2C Bus. - Connect two EEPROM IC's to the I2C Bus. +If using the MAX32675 RevB: +- Close I2C pull-up jumpers JP25 and JP26 + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32675/I2C_MNGR/i2c_mngr/i2c_mngr.c b/Examples/MAX32675/I2C_MNGR/i2c_mngr/i2c_mngr.c index 2677dfbbda2..d2c41b1d609 100644 --- a/Examples/MAX32675/I2C_MNGR/i2c_mngr/i2c_mngr.c +++ b/Examples/MAX32675/I2C_MNGR/i2c_mngr/i2c_mngr.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +38,7 @@ typedef struct { static i2c_txn_mngr_t s_mngr; /******************************************************************************/ -int I2C_MNGR_Init() +int I2C_MNGR_Init(void) { s_mngr.inst0 = MXC_I2C0; s_mngr.inst1 = MXC_I2C1; diff --git a/Examples/MAX32675/I2C_MNGR/i2c_mngr/i2c_mngr.h b/Examples/MAX32675/I2C_MNGR/i2c_mngr/i2c_mngr.h index b11cad84525..439527a7e50 100644 --- a/Examples/MAX32675/I2C_MNGR/i2c_mngr/i2c_mngr.h +++ b/Examples/MAX32675/I2C_MNGR/i2c_mngr/i2c_mngr.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +54,7 @@ typedef struct { * @brief Initializes I2C transaction manager * @return #E_NO_ERROR if succeeded, error code otherwise */ -int I2C_MNGR_Init(); +int I2C_MNGR_Init(void); /* * @brief Executes I2C transaction diff --git a/Examples/MAX32675/I2C_MNGR/main.c b/Examples/MAX32675/I2C_MNGR/main.c index efcd6c7498c..a5300127d10 100644 --- a/Examples/MAX32675/I2C_MNGR/main.c +++ b/Examples/MAX32675/I2C_MNGR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/I2C_MNGR/project.mk b/Examples/MAX32675/I2C_MNGR/project.mk index 90e76c6363a..da687b6e847 100644 --- a/Examples/MAX32675/I2C_MNGR/project.mk +++ b/Examples/MAX32675/I2C_MNGR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/I2C_SCAN/.vscode/README.md b/Examples/MAX32675/I2C_SCAN/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/I2C_SCAN/.vscode/README.md +++ b/Examples/MAX32675/I2C_SCAN/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/I2C_SCAN/.vscode/settings.json b/Examples/MAX32675/I2C_SCAN/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/I2C_SCAN/.vscode/settings.json +++ b/Examples/MAX32675/I2C_SCAN/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/I2C_SCAN/Makefile b/Examples/MAX32675/I2C_SCAN/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/I2C_SCAN/Makefile +++ b/Examples/MAX32675/I2C_SCAN/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/I2C_SCAN/README.md b/Examples/MAX32675/I2C_SCAN/README.md index b634b08fc55..b25254b0497 100644 --- a/Examples/MAX32675/I2C_SCAN/README.md +++ b/Examples/MAX32675/I2C_SCAN/README.md @@ -20,6 +20,9 @@ Universal instructions on building, flashing, and debugging this project can be - Connect jumpers JP3 and JP4 (I2C0 pullup resistor enables). - Connect I2C0 (SCL - P0.6, SDA - P0.7) to I2C bus. +If using the MAX32675 RevB: +- Close I2C pull-up jumpers JP25 and JP26 + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32675/I2C_SCAN/main.c b/Examples/MAX32675/I2C_SCAN/main.c index 9e2e1f3ae96..f276581aef2 100644 --- a/Examples/MAX32675/I2C_SCAN/main.c +++ b/Examples/MAX32675/I2C_SCAN/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +38,7 @@ #define I2C_FREQ 100000 // 100kHZ // ***************************************************************************** -int main() +int main(void) { int counter = 0; diff --git a/Examples/MAX32675/I2C_SCAN/project.mk b/Examples/MAX32675/I2C_SCAN/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/I2C_SCAN/project.mk +++ b/Examples/MAX32675/I2C_SCAN/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/I2C_Sensor/.vscode/README.md b/Examples/MAX32675/I2C_Sensor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/I2C_Sensor/.vscode/README.md +++ b/Examples/MAX32675/I2C_Sensor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/I2C_Sensor/.vscode/settings.json b/Examples/MAX32675/I2C_Sensor/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/I2C_Sensor/.vscode/settings.json +++ b/Examples/MAX32675/I2C_Sensor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/I2C_Sensor/Makefile b/Examples/MAX32675/I2C_Sensor/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/I2C_Sensor/Makefile +++ b/Examples/MAX32675/I2C_Sensor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/I2C_Sensor/README.md b/Examples/MAX32675/I2C_Sensor/README.md index 1006138f749..dd9155bf19b 100644 --- a/Examples/MAX32675/I2C_Sensor/README.md +++ b/Examples/MAX32675/I2C_Sensor/README.md @@ -23,6 +23,9 @@ Universal instructions on building, flashing, and debugging this project can be - Close jumper JP1 (LED0 EN). - You must connect P0.6 (SCL), P0.7 (SDA), VDD and GND to corresponding pins of MAX31889 EVKIT_A board (via J3 terminal) +If using the MAX32675 RevB: +- Close I2C pull-up jumpers JP25 and JP26 + ## Expected Output ``` diff --git a/Examples/MAX32675/I2C_Sensor/main.c b/Examples/MAX32675/I2C_Sensor/main.c index 3f1a15b31ec..644dc6ab609 100644 --- a/Examples/MAX32675/I2C_Sensor/main.c +++ b/Examples/MAX32675/I2C_Sensor/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/I2C_Sensor/project.mk b/Examples/MAX32675/I2C_Sensor/project.mk index 6a77af63372..fa0464ac6ba 100644 --- a/Examples/MAX32675/I2C_Sensor/project.mk +++ b/Examples/MAX32675/I2C_Sensor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/I2S/.vscode/README.md b/Examples/MAX32675/I2S/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/I2S/.vscode/README.md +++ b/Examples/MAX32675/I2S/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/I2S/.vscode/settings.json b/Examples/MAX32675/I2S/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/I2S/.vscode/settings.json +++ b/Examples/MAX32675/I2S/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/I2S/Makefile b/Examples/MAX32675/I2S/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/I2S/Makefile +++ b/Examples/MAX32675/I2S/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/I2S/README.md b/Examples/MAX32675/I2S/README.md index 559fb83ec93..8f9d1bbda61 100644 --- a/Examples/MAX32675/I2S/README.md +++ b/Examples/MAX32675/I2S/README.md @@ -11,7 +11,7 @@ Universal instructions on building, flashing, and debugging this project can be ### Project-Specific Build Notes -(None - this project builds as a standard example) +The MAX32675 Revision B does not support I2S. ## Required Connections @@ -23,7 +23,8 @@ Universal instructions on building, flashing, and debugging this project can be ``` I2S Transmission Example +I2S Signals may be viewed on pins P0.8-P0.11. +You may need to disconnect RX_SEL (JP5) and TX_SEL +(JP6) in case no data is moving in and out of SDO/SDI. -I2S Transaction Complete. Ignore any random characters previously -displayed. The I2S and UART are sharing the same pins. ``` diff --git a/Examples/MAX32675/I2S/main.c b/Examples/MAX32675/I2S/main.c index 7cae28d25ac..0857f2e3a2d 100644 --- a/Examples/MAX32675/I2S/main.c +++ b/Examples/MAX32675/I2S/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -37,6 +36,8 @@ #include "i2s.h" #include "tmr.h" #include "dma.h" +#include "gcr_regs.h" +#include "uart.h" #define DMA_CALLBACK 0 @@ -71,16 +72,28 @@ void i2s_dma_cb(int ch, int err) #endif /*****************************************************************/ -int main() +int main(void) { int err; mxc_i2s_req_t req; + printf("\nI2S Transmission Example\n"); printf("I2S Signals may be viewed on pins P0.8-P0.11.\n"); printf("You may need to disconnect RX_SEL (JP5) and TX_SEL\n"); printf("(JP6) in case no data is moving in and out of SDO/SDI.\n"); + printf("\nCurrent revision of board: %x\n", MXC_GCR->revision); + if ((MXC_GCR->revision & 0x00F0) == 0x00B0) { + printf("I2S is not supported on this MAX32675 revision.\n"); + printf("Ending Program."); + } printf("\n\n\n\n"); + // End program if I2S is not supported. + if ((MXC_GCR->revision & 0x00F0) == 0x00B0) { + // I2S not supported on MAX32675 Revision B. + return E_NOT_SUPPORTED; + } + req.wordSize = MXC_I2S_WSIZE_HALFWORD; req.sampleSize = MXC_I2S_SAMPLESIZE_SIXTEEN; req.bitsWord = 16; diff --git a/Examples/MAX32675/I2S/project.mk b/Examples/MAX32675/I2S/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/I2S/project.mk +++ b/Examples/MAX32675/I2S/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/ICC/.vscode/README.md b/Examples/MAX32675/ICC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/ICC/.vscode/README.md +++ b/Examples/MAX32675/ICC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/ICC/.vscode/settings.json b/Examples/MAX32675/ICC/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/ICC/.vscode/settings.json +++ b/Examples/MAX32675/ICC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/ICC/Makefile b/Examples/MAX32675/ICC/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/ICC/Makefile +++ b/Examples/MAX32675/ICC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/ICC/main.c b/Examples/MAX32675/ICC/main.c index 31a6d291f9d..8262fdf8c09 100644 --- a/Examples/MAX32675/ICC/main.c +++ b/Examples/MAX32675/ICC/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/ICC/project.mk b/Examples/MAX32675/ICC/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/ICC/project.mk +++ b/Examples/MAX32675/ICC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/LP/.vscode/README.md b/Examples/MAX32675/LP/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/LP/.vscode/README.md +++ b/Examples/MAX32675/LP/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/LP/.vscode/settings.json b/Examples/MAX32675/LP/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/LP/.vscode/settings.json +++ b/Examples/MAX32675/LP/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/LP/Makefile b/Examples/MAX32675/LP/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/LP/Makefile +++ b/Examples/MAX32675/LP/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/LP/lp.ld b/Examples/MAX32675/LP/lp.ld index 587cfbb66f3..ab7b6969d8d 100644 --- a/Examples/MAX32675/LP/lp.ld +++ b/Examples/MAX32675/LP/lp.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/LP/main.c b/Examples/MAX32675/LP/main.c index 686b08f5d35..806191909ae 100644 --- a/Examples/MAX32675/LP/main.c +++ b/Examples/MAX32675/LP/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/LP/project.mk b/Examples/MAX32675/LP/project.mk index 254d35d060d..0783e16dfad 100644 --- a/Examples/MAX32675/LP/project.mk +++ b/Examples/MAX32675/LP/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/Library_Generate/.vscode/README.md b/Examples/MAX32675/Library_Generate/.vscode/README.md index e2e9a1a6522..a740741c3ab 100644 --- a/Examples/MAX32675/Library_Generate/.vscode/README.md +++ b/Examples/MAX32675/Library_Generate/.vscode/README.md @@ -7,11 +7,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) * If it's not in the README, check the UG. * If it's not in the UG, open a ticket! -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -38,7 +38,7 @@ The steps below are also available in video form in "Understanding Artificial In 2. Run the installer executable, and ensure that "Visual Studio Code Support" is enabled for your installation. - ![Selected Components](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/installer_components.JPG) + ![Selected Components](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/installer_components.JPG) 3. Finish the MSDK installation, taking note of where the MSDK was installed. @@ -54,7 +54,7 @@ The steps below are also available in video form in "Understanding Artificial In 9. Type "open settings json" and select the "Preferences: Open Settings (JSON)" option (_not_ the "Preferences: Open _Default_ Settings (JSON)"). This will open your user settings.json file in VS Code's editor. - ![Open Settings JSON Command](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/open_settings_json.jpg) + ![Open Settings JSON Command](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/open_settings_json.jpg) 10. Add the entries below into your user settings.json file. @@ -82,7 +82,7 @@ This section covers basic usage of the VSCode-Maxim project files. For document Visual Studio Code is built around a "working directory" paradigm. The editor is always rooted in a working directory, and the main mechanism for changing that directory is `File -> Open Folder...`. -![File -> Open Folder](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/file_openfolder.JPG) +![File -> Open Folder](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/file_openfolder.JPG) As a result, you'll notice that there is no "New Project" mechanism. A "project" in VS Code is simply a folder. It will look inside of the opened folder for a `.vscode` _sub_-folder to load project-specific settings from. @@ -90,11 +90,11 @@ A project that is configured for VS Code will have, at minimum, a .vscode sub-fo Ex: -![Example Directory Contents](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/opening_projects_2.jpg) +![Example Directory Contents](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/opening_projects_2.jpg) ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MSDK installation. @@ -102,7 +102,7 @@ Additionally, empty project templates and a drag-and-drop folder for "injecting" Once a project is opened 4 available build tasks will become available via `Terminal > Run Build task...` or the shortcut `Ctrl+Shift+B`. These tasks are configured by the `.vscode/task.json` file. -![Build Tasks Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/buildtasks.JPG) +![Build Tasks Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/buildtasks.JPG) #### Build @@ -138,7 +138,7 @@ Once a project is opened 4 available build tasks will become available via `Term ### Debugging -![Debug Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger.JPG) +![Debug Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger.JPG) Debugging is enabled by Visual Studio Code's integrated debugger. Launch configurations can be found in the `.vscode/launch.json` file. @@ -162,11 +162,11 @@ In general, the MAX-series microcontrollers have the following debugger limitati 3. Launch the debugger with `Run > Start Debugging`, with the shortcut `F5`, or via the `Run and Debug` window (Ctrl + Shift + D) and the green "launch" arrow. - ![Debug Tab](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_window.JPG) + ![Debug Tab](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_window.JPG) 4. The debugger will launch a GDB client & OpenOCD server, reset the microcontroller, and should break on entry into `main`. - ![Debugger Break on Main](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_breakmain.JPG) + ![Debugger Break on Main](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_breakmain.JPG) #### Using the Debugger @@ -174,13 +174,13 @@ In general, the MAX-series microcontrollers have the following debugger limitati The main interface for the debugger is the debugger control bar: -![Debugger Control Bar Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_bar.JPG) +![Debugger Control Bar Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_bar.JPG) `Continue | Step Over | Step Into | Step Out | Restart | Stop` Breakpoints can be set by clicking in the space next to the line number in a source code file. A red dot indicates a line to break on. Breakpoints can be removed by clicking on them again. Ex: -![Breakpoint](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/breakpoint.JPG) +![Breakpoint](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/breakpoint.JPG) ## Project Configuration @@ -190,7 +190,7 @@ Breakpoints can be set by clicking in the space next to the line number in a sou **When a change is made to this file, VS Code should be reloaded with CTRL+SHIFT+P -> Reload Window (or alternatively restarted completely) to force a re-parse.** -![Reload Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/reload_window.JPG) +![Reload Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/reload_window.JPG) The default project configuration should work for most use cases as long as `"target"` and `"board"` are set correctly. @@ -227,7 +227,7 @@ The following configuration options are available: * ... can be found in the `Libraries/Boards` folder of the MSDK * For example, the supported options for the MAX78000 are `"EvKit_V1"`, `"FTHR_RevA"`, and `"MAXREFDES178"`. - ![MAX78000 Boards](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/78000_boards.JPG) + ![MAX78000 Boards](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/78000_boards.JPG) ### Advanced Config Options @@ -353,7 +353,7 @@ A project's build system is managed by two files found in the project's root dir * `Makefile` * `project.mk` -![Files are located in the root directory](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) +![Files are located in the root directory](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) When the command... @@ -416,7 +416,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the @@ -540,7 +540,7 @@ If you want to start from scratch, take this option. ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/Library_Generate/Makefile b/Examples/MAX32675/Library_Generate/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/Library_Generate/Makefile +++ b/Examples/MAX32675/Library_Generate/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/Library_Generate/gpiolib.c b/Examples/MAX32675/Library_Generate/gpiolib.c index 5c8845edc78..252f6df4c44 100644 --- a/Examples/MAX32675/Library_Generate/gpiolib.c +++ b/Examples/MAX32675/Library_Generate/gpiolib.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/Library_Generate/gpiolib.h b/Examples/MAX32675/Library_Generate/gpiolib.h index 5723a6f493e..aa545201387 100644 --- a/Examples/MAX32675/Library_Generate/gpiolib.h +++ b/Examples/MAX32675/Library_Generate/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/Library_Generate/project.mk b/Examples/MAX32675/Library_Generate/project.mk index 01dcd9fbb2a..b5729be6ef0 100644 --- a/Examples/MAX32675/Library_Generate/project.mk +++ b/Examples/MAX32675/Library_Generate/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/Library_Use/.vscode/README.md b/Examples/MAX32675/Library_Use/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/Library_Use/.vscode/README.md +++ b/Examples/MAX32675/Library_Use/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/Library_Use/.vscode/settings.json b/Examples/MAX32675/Library_Use/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/Library_Use/.vscode/settings.json +++ b/Examples/MAX32675/Library_Use/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/Library_Use/Makefile b/Examples/MAX32675/Library_Use/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/Library_Use/Makefile +++ b/Examples/MAX32675/Library_Use/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/Library_Use/lib/include/gpiolib.h b/Examples/MAX32675/Library_Use/lib/include/gpiolib.h index 26a57ec7cfd..0cdb196f828 100644 --- a/Examples/MAX32675/Library_Use/lib/include/gpiolib.h +++ b/Examples/MAX32675/Library_Use/lib/include/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/Library_Use/main.c b/Examples/MAX32675/Library_Use/main.c index a9c20ec444f..c686476d185 100644 --- a/Examples/MAX32675/Library_Use/main.c +++ b/Examples/MAX32675/Library_Use/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/Library_Use/project.mk b/Examples/MAX32675/Library_Use/project.mk index 697d6809f88..8639a5f2593 100644 --- a/Examples/MAX32675/Library_Use/project.mk +++ b/Examples/MAX32675/Library_Use/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/SPI/.vscode/README.md b/Examples/MAX32675/SPI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/SPI/.vscode/README.md +++ b/Examples/MAX32675/SPI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/SPI/.vscode/settings.json b/Examples/MAX32675/SPI/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/SPI/.vscode/settings.json +++ b/Examples/MAX32675/SPI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/SPI/Makefile b/Examples/MAX32675/SPI/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/SPI/Makefile +++ b/Examples/MAX32675/SPI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/SPI/README.md b/Examples/MAX32675/SPI/README.md index ea61d9b180f..9ff22f8a901 100644 --- a/Examples/MAX32675/SPI/README.md +++ b/Examples/MAX32675/SPI/README.md @@ -19,11 +19,20 @@ Universal instructions on building, flashing, and debugging this project can be ## Required Connections +If using the MAX32675 RevA: - Connect a USB cable between the PC and the CN1 (USB/PWR) connector. - Open an terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - Connect pins labeled P0.14 (MISO) and P0.15 (MOSI) together. - Close jumper JP2 (LED1 EN). +If using the MAX32675 RevB: +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. +- Open an terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect pins labeled P0.14 (MISO) and P0.15 (MOSI) together. +- Open jumper JP11_IN, JP11_OUT, and JP11_RTS. +- Close jumper JP1 (LED1 EN). +- Close jumper JP2 (LED1 EN). + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32675/SPI/main.c b/Examples/MAX32675/SPI/main.c index 29e6de7c5b0..77b0f90b7c7 100644 --- a/Examples/MAX32675/SPI/main.c +++ b/Examples/MAX32675/SPI/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/SPI/project.mk b/Examples/MAX32675/SPI/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/SPI/project.mk +++ b/Examples/MAX32675/SPI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/TMR/.vscode/README.md b/Examples/MAX32675/TMR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/TMR/.vscode/README.md +++ b/Examples/MAX32675/TMR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/TMR/.vscode/settings.json b/Examples/MAX32675/TMR/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/TMR/.vscode/settings.json +++ b/Examples/MAX32675/TMR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/TMR/Makefile b/Examples/MAX32675/TMR/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/TMR/Makefile +++ b/Examples/MAX32675/TMR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/TMR/README.md b/Examples/MAX32675/TMR/README.md index c022edb0a01..48562e29514 100644 --- a/Examples/MAX32675/TMR/README.md +++ b/Examples/MAX32675/TMR/README.md @@ -25,9 +25,8 @@ Universal instructions on building, flashing, and debugging this project can be - Connect a USB cable between the PC and the CN1 (USB/PWR) connector. - Open an terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. -- For EvKit - - Close jumper JP1 (LED0 EN). - - Close jumper JP2 (LED1 EN). +- Close jumper JP1 (LED0 EN). +- Close jumper JP2 (LED1 EN). ## Expected Output diff --git a/Examples/MAX32675/TMR/main.c b/Examples/MAX32675/TMR/main.c index c8673557b25..0471001de41 100644 --- a/Examples/MAX32675/TMR/main.c +++ b/Examples/MAX32675/TMR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -40,7 +39,7 @@ /***** Definitions *****/ // Parameters for PWM output -#define CLOCK_SOURCE MXC_TMR_8M_CLK // must be mxc_tmr_clock_t +#define CLOCK_SOURCE MXC_TMR_IBRO_CLK // must be mxc_tmr_clock_t // Parameters for Continuous timer #define OST_FREQ 1 // (Hz) diff --git a/Examples/MAX32675/TMR/project.mk b/Examples/MAX32675/TMR/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/TMR/project.mk +++ b/Examples/MAX32675/TMR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/TRNG/.vscode/README.md b/Examples/MAX32675/TRNG/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/TRNG/.vscode/README.md +++ b/Examples/MAX32675/TRNG/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/TRNG/.vscode/settings.json b/Examples/MAX32675/TRNG/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/TRNG/.vscode/settings.json +++ b/Examples/MAX32675/TRNG/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/TRNG/Makefile b/Examples/MAX32675/TRNG/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/TRNG/Makefile +++ b/Examples/MAX32675/TRNG/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/TRNG/README.md b/Examples/MAX32675/TRNG/README.md index ccd22c4b0b6..510ac4ae43b 100644 --- a/Examples/MAX32675/TRNG/README.md +++ b/Examples/MAX32675/TRNG/README.md @@ -11,7 +11,7 @@ Universal instructions on building, flashing, and debugging this project can be ### Project-Specific Build Notes -(None - this project builds as a standard example) +The TRNG is disabled for MAX32675 Revision B, so this example will fail to run for those parts. ## Required Connections diff --git a/Examples/MAX32675/TRNG/main.c b/Examples/MAX32675/TRNG/main.c index ba6489b9847..e5f1e55fbcd 100644 --- a/Examples/MAX32675/TRNG/main.c +++ b/Examples/MAX32675/TRNG/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,6 +30,7 @@ #include "mxc_device.h" #include "nvic_table.h" #include "trng.h" +#include "gcr_regs.h" volatile int wait; volatile int callback_result; @@ -91,6 +91,12 @@ void Test_TRNG(int asynchronous) int main(void) { + // TRNG is disabled for MAX32675 Revision B. + if ((MXC_GCR->revision & 0x00F0) == 0xB0) { + printf("The TRNG is disabled for the MAX32675 Rev B.\n"); + return E_NOT_SUPPORTED; + } + printf("\n\n********** TRNG Example **********\n"); Test_TRNG(0); diff --git a/Examples/MAX32675/TRNG/project.mk b/Examples/MAX32675/TRNG/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/TRNG/project.mk +++ b/Examples/MAX32675/TRNG/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/UART/.vscode/README.md b/Examples/MAX32675/UART/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/UART/.vscode/README.md +++ b/Examples/MAX32675/UART/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/UART/.vscode/settings.json b/Examples/MAX32675/UART/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/UART/.vscode/settings.json +++ b/Examples/MAX32675/UART/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/UART/Makefile b/Examples/MAX32675/UART/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/UART/Makefile +++ b/Examples/MAX32675/UART/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/UART/README.md b/Examples/MAX32675/UART/README.md index fca249fbf73..a31597a48ab 100644 --- a/Examples/MAX32675/UART/README.md +++ b/Examples/MAX32675/UART/README.md @@ -16,12 +16,17 @@ Universal instructions on building, flashing, and debugging this project can be ## Required Connections - Connect a USB cable between the PC and the CN1 (USB/PWR) connector. -- Select TX0 on Headers JP6. -- DE-select RX0 on Header JP5. - Open an terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - Connect P0.8 to P0.15. - Connect P0.9 to P0.14. +If using MAX32675 RevA: +- Select TX0 on Headers JP6. +- DE-select RX0 on Header JP5. +If using MAX32675 RevB +- Select TX0 on Headers JP3. +- DE-select RX0 on Header JP4. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32675/UART/main.c b/Examples/MAX32675/UART/main.c index a924d1a49fe..3ff6078fb3b 100644 --- a/Examples/MAX32675/UART/main.c +++ b/Examples/MAX32675/UART/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/UART/project.mk b/Examples/MAX32675/UART/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/UART/project.mk +++ b/Examples/MAX32675/UART/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/Watchdog/.vscode/README.md b/Examples/MAX32675/Watchdog/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/Watchdog/.vscode/README.md +++ b/Examples/MAX32675/Watchdog/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/Watchdog/.vscode/settings.json b/Examples/MAX32675/Watchdog/.vscode/settings.json index f51e43ba860..2858470d33d 100755 --- a/Examples/MAX32675/Watchdog/.vscode/settings.json +++ b/Examples/MAX32675/Watchdog/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/Watchdog/Makefile b/Examples/MAX32675/Watchdog/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/Watchdog/Makefile +++ b/Examples/MAX32675/Watchdog/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/Watchdog/main.c b/Examples/MAX32675/Watchdog/main.c index fb7cd130fd8..3f3c60767b6 100644 --- a/Examples/MAX32675/Watchdog/main.c +++ b/Examples/MAX32675/Watchdog/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/Watchdog/project.mk b/Examples/MAX32675/Watchdog/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32675/Watchdog/project.mk +++ b/Examples/MAX32675/Watchdog/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/WearLeveling/.vscode/README.md b/Examples/MAX32675/WearLeveling/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32675/WearLeveling/.vscode/README.md +++ b/Examples/MAX32675/WearLeveling/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32675/WearLeveling/.vscode/settings.json b/Examples/MAX32675/WearLeveling/.vscode/settings.json index 66a4817bea6..4184e1cc683 100755 --- a/Examples/MAX32675/WearLeveling/.vscode/settings.json +++ b/Examples/MAX32675/WearLeveling/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32675/WearLeveling/Makefile b/Examples/MAX32675/WearLeveling/Makefile index 1cd38ef0183..c4c6ec7ff4b 100644 --- a/Examples/MAX32675/WearLeveling/Makefile +++ b/Examples/MAX32675/WearLeveling/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32675/WearLeveling/include/cli.h b/Examples/MAX32675/WearLeveling/include/cli.h index 4ad655e3287..6ad9bc43489 100644 --- a/Examples/MAX32675/WearLeveling/include/cli.h +++ b/Examples/MAX32675/WearLeveling/include/cli.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/WearLeveling/include/file.h b/Examples/MAX32675/WearLeveling/include/file.h index 2c77a0edf42..8322431e9ef 100644 --- a/Examples/MAX32675/WearLeveling/include/file.h +++ b/Examples/MAX32675/WearLeveling/include/file.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/WearLeveling/include/flash.h b/Examples/MAX32675/WearLeveling/include/flash.h index ccce97bf1d7..5fb6f8ed2dd 100644 --- a/Examples/MAX32675/WearLeveling/include/flash.h +++ b/Examples/MAX32675/WearLeveling/include/flash.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/WearLeveling/include/main.h b/Examples/MAX32675/WearLeveling/include/main.h index 754f6187429..a44acecf716 100644 --- a/Examples/MAX32675/WearLeveling/include/main.h +++ b/Examples/MAX32675/WearLeveling/include/main.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/WearLeveling/main.c b/Examples/MAX32675/WearLeveling/main.c index e0fed8e6f2a..933e92ebe7b 100644 --- a/Examples/MAX32675/WearLeveling/main.c +++ b/Examples/MAX32675/WearLeveling/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -37,6 +36,7 @@ #include "lfs.h" #include "main.h" #include "mxc_device.h" +#include "ecc_regs.h" /***** Globals *****/ uint32_t start_block = LFS_START_PAGE; @@ -72,6 +72,9 @@ int main(void) printf("\n\n********** Wear Leveling Example **********\n"); + printf("Disable ECC.\n"); + MXC_ECC->en &= ~(MXC_F_ECC_EN_FLASH); + // mount the filesystem printf("Mounting the filesystem...\n"); err = lfs_mount(&lfs, &cfg); diff --git a/Examples/MAX32675/WearLeveling/project.mk b/Examples/MAX32675/WearLeveling/project.mk index 8b1313bcf11..cdd69f7768f 100644 --- a/Examples/MAX32675/WearLeveling/project.mk +++ b/Examples/MAX32675/WearLeveling/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32675/WearLeveling/src/cli.c b/Examples/MAX32675/WearLeveling/src/cli.c index 488f3413dee..ea27a00faa5 100644 --- a/Examples/MAX32675/WearLeveling/src/cli.c +++ b/Examples/MAX32675/WearLeveling/src/cli.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/WearLeveling/src/file.c b/Examples/MAX32675/WearLeveling/src/file.c index dec9a57200f..ddb03186181 100644 --- a/Examples/MAX32675/WearLeveling/src/file.c +++ b/Examples/MAX32675/WearLeveling/src/file.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32675/WearLeveling/src/flash.c b/Examples/MAX32675/WearLeveling/src/flash.c index 0a6dbb4a889..7f67c29690c 100644 --- a/Examples/MAX32675/WearLeveling/src/flash.c +++ b/Examples/MAX32675/WearLeveling/src/flash.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/ADC/.vscode/README.md b/Examples/MAX32680/ADC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/ADC/.vscode/README.md +++ b/Examples/MAX32680/ADC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/ADC/.vscode/settings.json b/Examples/MAX32680/ADC/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/ADC/.vscode/settings.json +++ b/Examples/MAX32680/ADC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/ADC/Makefile b/Examples/MAX32680/ADC/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/ADC/Makefile +++ b/Examples/MAX32680/ADC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/ADC/main.c b/Examples/MAX32680/ADC/main.c index c07b1f4ecfa..4f7409a22b3 100644 --- a/Examples/MAX32680/ADC/main.c +++ b/Examples/MAX32680/ADC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/ADC/project.mk b/Examples/MAX32680/ADC/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/ADC/project.mk +++ b/Examples/MAX32680/ADC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/AES/.vscode/README.md b/Examples/MAX32680/AES/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/AES/.vscode/README.md +++ b/Examples/MAX32680/AES/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/AES/.vscode/settings.json b/Examples/MAX32680/AES/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/AES/.vscode/settings.json +++ b/Examples/MAX32680/AES/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/AES/Makefile b/Examples/MAX32680/AES/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/AES/Makefile +++ b/Examples/MAX32680/AES/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/AES/main.c b/Examples/MAX32680/AES/main.c index fd527f1c2a2..70a15529b92 100644 --- a/Examples/MAX32680/AES/main.c +++ b/Examples/MAX32680/AES/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -52,7 +51,7 @@ mxc_aes_req_t req; volatile int dma_flag = 0; /***** Functions *****/ -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); dma_flag++; diff --git a/Examples/MAX32680/AES/project.mk b/Examples/MAX32680/AES/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/AES/project.mk +++ b/Examples/MAX32680/AES/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/AFE_ADC/.vscode/README.md b/Examples/MAX32680/AFE_ADC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/AFE_ADC/.vscode/README.md +++ b/Examples/MAX32680/AFE_ADC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/AFE_ADC/.vscode/settings.json b/Examples/MAX32680/AFE_ADC/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/AFE_ADC/.vscode/settings.json +++ b/Examples/MAX32680/AFE_ADC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/AFE_ADC/Makefile b/Examples/MAX32680/AFE_ADC/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/AFE_ADC/Makefile +++ b/Examples/MAX32680/AFE_ADC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/AFE_ADC/main.c b/Examples/MAX32680/AFE_ADC/main.c index 57dec4575bf..bfd3d21d4a3 100644 --- a/Examples/MAX32680/AFE_ADC/main.c +++ b/Examples/MAX32680/AFE_ADC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/AFE_ADC/project.mk b/Examples/MAX32680/AFE_ADC/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/AFE_ADC/project.mk +++ b/Examples/MAX32680/AFE_ADC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/ARM-DSP/README.md b/Examples/MAX32680/ARM-DSP/README.md index 9bb2d50bedc..5e1d116671b 100644 --- a/Examples/MAX32680/ARM-DSP/README.md +++ b/Examples/MAX32680/ARM-DSP/README.md @@ -8,7 +8,7 @@ The projects in this folder are ports of ARM's DSP example projects that can be Debug launch configurations are included in each project, and should appear in the "Favorites" menu in Eclipse. -Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop) +Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop) ## Software diff --git a/Examples/MAX32680/ARM-DSP/arm_bayes_example/.vscode/README.md b/Examples/MAX32680/ARM-DSP/arm_bayes_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/ARM-DSP/arm_bayes_example/.vscode/README.md +++ b/Examples/MAX32680/ARM-DSP/arm_bayes_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/ARM-DSP/arm_bayes_example/.vscode/settings.json b/Examples/MAX32680/ARM-DSP/arm_bayes_example/.vscode/settings.json index 56faa5a2afe..9b8e0ecb52c 100755 --- a/Examples/MAX32680/ARM-DSP/arm_bayes_example/.vscode/settings.json +++ b/Examples/MAX32680/ARM-DSP/arm_bayes_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/ARM-DSP/arm_bayes_example/Makefile b/Examples/MAX32680/ARM-DSP/arm_bayes_example/Makefile index eae8ffba1ce..d23ae5f8a40 100644 --- a/Examples/MAX32680/ARM-DSP/arm_bayes_example/Makefile +++ b/Examples/MAX32680/ARM-DSP/arm_bayes_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/ARM-DSP/arm_bayes_example/project.mk b/Examples/MAX32680/ARM-DSP/arm_bayes_example/project.mk index 012119464e4..6a8ff26046e 100644 --- a/Examples/MAX32680/ARM-DSP/arm_bayes_example/project.mk +++ b/Examples/MAX32680/ARM-DSP/arm_bayes_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used for project configuration. # It's a sibling to the core "Makefile", which offers # various configuration variables that you can set here diff --git a/Examples/MAX32680/ARM-DSP/arm_class_marks_example/.vscode/README.md b/Examples/MAX32680/ARM-DSP/arm_class_marks_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/ARM-DSP/arm_class_marks_example/.vscode/README.md +++ b/Examples/MAX32680/ARM-DSP/arm_class_marks_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/ARM-DSP/arm_class_marks_example/.vscode/settings.json b/Examples/MAX32680/ARM-DSP/arm_class_marks_example/.vscode/settings.json index 56faa5a2afe..9b8e0ecb52c 100755 --- a/Examples/MAX32680/ARM-DSP/arm_class_marks_example/.vscode/settings.json +++ b/Examples/MAX32680/ARM-DSP/arm_class_marks_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/ARM-DSP/arm_class_marks_example/Makefile b/Examples/MAX32680/ARM-DSP/arm_class_marks_example/Makefile index eae8ffba1ce..d23ae5f8a40 100644 --- a/Examples/MAX32680/ARM-DSP/arm_class_marks_example/Makefile +++ b/Examples/MAX32680/ARM-DSP/arm_class_marks_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c b/Examples/MAX32680/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c index 30f548bc888..2ea5e90d59a 100644 --- a/Examples/MAX32680/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c +++ b/Examples/MAX32680/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c @@ -139,7 +139,7 @@ uint32_t student_num; * Main f32 test function. It returns maximum marks secured and student number * ------------------------------------------------------------------------------- */ -int main() +int main(void) { #ifndef USE_STATIC_INIT diff --git a/Examples/MAX32680/ARM-DSP/arm_class_marks_example/project.mk b/Examples/MAX32680/ARM-DSP/arm_class_marks_example/project.mk index 012119464e4..6a8ff26046e 100644 --- a/Examples/MAX32680/ARM-DSP/arm_class_marks_example/project.mk +++ b/Examples/MAX32680/ARM-DSP/arm_class_marks_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used for project configuration. # It's a sibling to the core "Makefile", which offers # various configuration variables that you can set here diff --git a/Examples/MAX32680/ARM-DSP/arm_convolution_example/.vscode/README.md b/Examples/MAX32680/ARM-DSP/arm_convolution_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/ARM-DSP/arm_convolution_example/.vscode/README.md +++ b/Examples/MAX32680/ARM-DSP/arm_convolution_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/ARM-DSP/arm_convolution_example/.vscode/settings.json b/Examples/MAX32680/ARM-DSP/arm_convolution_example/.vscode/settings.json index 56faa5a2afe..9b8e0ecb52c 100755 --- a/Examples/MAX32680/ARM-DSP/arm_convolution_example/.vscode/settings.json +++ b/Examples/MAX32680/ARM-DSP/arm_convolution_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/ARM-DSP/arm_convolution_example/Makefile b/Examples/MAX32680/ARM-DSP/arm_convolution_example/Makefile index eae8ffba1ce..d23ae5f8a40 100644 --- a/Examples/MAX32680/ARM-DSP/arm_convolution_example/Makefile +++ b/Examples/MAX32680/ARM-DSP/arm_convolution_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/ARM-DSP/arm_convolution_example/project.mk b/Examples/MAX32680/ARM-DSP/arm_convolution_example/project.mk index 012119464e4..6a8ff26046e 100644 --- a/Examples/MAX32680/ARM-DSP/arm_convolution_example/project.mk +++ b/Examples/MAX32680/ARM-DSP/arm_convolution_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used for project configuration. # It's a sibling to the core "Makefile", which offers # various configuration variables that you can set here diff --git a/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md b/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md +++ b/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json b/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json index 56faa5a2afe..9b8e0ecb52c 100755 --- a/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json +++ b/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/Makefile b/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/Makefile index eae8ffba1ce..d23ae5f8a40 100644 --- a/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/Makefile +++ b/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/project.mk b/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/project.mk index 012119464e4..6a8ff26046e 100644 --- a/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/project.mk +++ b/Examples/MAX32680/ARM-DSP/arm_dotproduct_example_f32/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used for project configuration. # It's a sibling to the core "Makefile", which offers # various configuration variables that you can set here diff --git a/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/.vscode/README.md b/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/.vscode/README.md +++ b/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/.vscode/settings.json b/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/.vscode/settings.json index 56faa5a2afe..9b8e0ecb52c 100755 --- a/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/.vscode/settings.json +++ b/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/Makefile b/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/Makefile index eae8ffba1ce..d23ae5f8a40 100644 --- a/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/Makefile +++ b/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/project.mk b/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/project.mk index 012119464e4..6a8ff26046e 100644 --- a/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/project.mk +++ b/Examples/MAX32680/ARM-DSP/arm_fft_bin_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used for project configuration. # It's a sibling to the core "Makefile", which offers # various configuration variables that you can set here diff --git a/Examples/MAX32680/ARM-DSP/arm_fir_example/.vscode/README.md b/Examples/MAX32680/ARM-DSP/arm_fir_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/ARM-DSP/arm_fir_example/.vscode/README.md +++ b/Examples/MAX32680/ARM-DSP/arm_fir_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/ARM-DSP/arm_fir_example/.vscode/settings.json b/Examples/MAX32680/ARM-DSP/arm_fir_example/.vscode/settings.json index 56faa5a2afe..9b8e0ecb52c 100755 --- a/Examples/MAX32680/ARM-DSP/arm_fir_example/.vscode/settings.json +++ b/Examples/MAX32680/ARM-DSP/arm_fir_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/ARM-DSP/arm_fir_example/Makefile b/Examples/MAX32680/ARM-DSP/arm_fir_example/Makefile index eae8ffba1ce..d23ae5f8a40 100644 --- a/Examples/MAX32680/ARM-DSP/arm_fir_example/Makefile +++ b/Examples/MAX32680/ARM-DSP/arm_fir_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/ARM-DSP/arm_fir_example/project.mk b/Examples/MAX32680/ARM-DSP/arm_fir_example/project.mk index 012119464e4..6a8ff26046e 100644 --- a/Examples/MAX32680/ARM-DSP/arm_fir_example/project.mk +++ b/Examples/MAX32680/ARM-DSP/arm_fir_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used for project configuration. # It's a sibling to the core "Makefile", which offers # various configuration variables that you can set here diff --git a/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md b/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md +++ b/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json b/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json index 56faa5a2afe..9b8e0ecb52c 100755 --- a/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json +++ b/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/Makefile b/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/Makefile index eae8ffba1ce..d23ae5f8a40 100644 --- a/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/Makefile +++ b/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/project.mk b/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/project.mk index 012119464e4..6a8ff26046e 100644 --- a/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/project.mk +++ b/Examples/MAX32680/ARM-DSP/arm_graphic_equalizer_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used for project configuration. # It's a sibling to the core "Makefile", which offers # various configuration variables that you can set here diff --git a/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/.vscode/README.md b/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/.vscode/README.md +++ b/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/.vscode/settings.json b/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/.vscode/settings.json index 56faa5a2afe..9b8e0ecb52c 100755 --- a/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/.vscode/settings.json +++ b/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/Makefile b/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/Makefile index eae8ffba1ce..d23ae5f8a40 100644 --- a/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/Makefile +++ b/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/project.mk b/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/project.mk index 012119464e4..6a8ff26046e 100644 --- a/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/project.mk +++ b/Examples/MAX32680/ARM-DSP/arm_linear_interp_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used for project configuration. # It's a sibling to the core "Makefile", which offers # various configuration variables that you can set here diff --git a/Examples/MAX32680/ARM-DSP/arm_matrix_example/.vscode/README.md b/Examples/MAX32680/ARM-DSP/arm_matrix_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/ARM-DSP/arm_matrix_example/.vscode/README.md +++ b/Examples/MAX32680/ARM-DSP/arm_matrix_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/ARM-DSP/arm_matrix_example/.vscode/settings.json b/Examples/MAX32680/ARM-DSP/arm_matrix_example/.vscode/settings.json index 56faa5a2afe..9b8e0ecb52c 100755 --- a/Examples/MAX32680/ARM-DSP/arm_matrix_example/.vscode/settings.json +++ b/Examples/MAX32680/ARM-DSP/arm_matrix_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/ARM-DSP/arm_matrix_example/Makefile b/Examples/MAX32680/ARM-DSP/arm_matrix_example/Makefile index eae8ffba1ce..d23ae5f8a40 100644 --- a/Examples/MAX32680/ARM-DSP/arm_matrix_example/Makefile +++ b/Examples/MAX32680/ARM-DSP/arm_matrix_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/ARM-DSP/arm_matrix_example/project.mk b/Examples/MAX32680/ARM-DSP/arm_matrix_example/project.mk index 012119464e4..6a8ff26046e 100644 --- a/Examples/MAX32680/ARM-DSP/arm_matrix_example/project.mk +++ b/Examples/MAX32680/ARM-DSP/arm_matrix_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used for project configuration. # It's a sibling to the core "Makefile", which offers # various configuration variables that you can set here diff --git a/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/.vscode/README.md b/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/.vscode/README.md +++ b/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/.vscode/settings.json b/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/.vscode/settings.json index 56faa5a2afe..9b8e0ecb52c 100755 --- a/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/.vscode/settings.json +++ b/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/Makefile b/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/Makefile index eae8ffba1ce..d23ae5f8a40 100644 --- a/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/Makefile +++ b/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/project.mk b/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/project.mk index 012119464e4..6a8ff26046e 100644 --- a/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/project.mk +++ b/Examples/MAX32680/ARM-DSP/arm_signal_converge_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used for project configuration. # It's a sibling to the core "Makefile", which offers # various configuration variables that you can set here diff --git a/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/.vscode/README.md b/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/.vscode/README.md +++ b/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/.vscode/settings.json b/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/.vscode/settings.json index 56faa5a2afe..9b8e0ecb52c 100755 --- a/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/.vscode/settings.json +++ b/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/Makefile b/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/Makefile index eae8ffba1ce..d23ae5f8a40 100644 --- a/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/Makefile +++ b/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/project.mk b/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/project.mk index 012119464e4..6a8ff26046e 100644 --- a/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/project.mk +++ b/Examples/MAX32680/ARM-DSP/arm_sin_cos_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used for project configuration. # It's a sibling to the core "Makefile", which offers # various configuration variables that you can set here diff --git a/Examples/MAX32680/ARM-DSP/arm_svm_example/.vscode/README.md b/Examples/MAX32680/ARM-DSP/arm_svm_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/ARM-DSP/arm_svm_example/.vscode/README.md +++ b/Examples/MAX32680/ARM-DSP/arm_svm_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/ARM-DSP/arm_svm_example/.vscode/settings.json b/Examples/MAX32680/ARM-DSP/arm_svm_example/.vscode/settings.json index 56faa5a2afe..9b8e0ecb52c 100755 --- a/Examples/MAX32680/ARM-DSP/arm_svm_example/.vscode/settings.json +++ b/Examples/MAX32680/ARM-DSP/arm_svm_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/ARM-DSP/arm_svm_example/Makefile b/Examples/MAX32680/ARM-DSP/arm_svm_example/Makefile index eae8ffba1ce..d23ae5f8a40 100644 --- a/Examples/MAX32680/ARM-DSP/arm_svm_example/Makefile +++ b/Examples/MAX32680/ARM-DSP/arm_svm_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/ARM-DSP/arm_svm_example/project.mk b/Examples/MAX32680/ARM-DSP/arm_svm_example/project.mk index 012119464e4..6a8ff26046e 100644 --- a/Examples/MAX32680/ARM-DSP/arm_svm_example/project.mk +++ b/Examples/MAX32680/ARM-DSP/arm_svm_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used for project configuration. # It's a sibling to the core "Makefile", which offers # various configuration variables that you can set here diff --git a/Examples/MAX32680/ARM-DSP/arm_variance_example/.vscode/README.md b/Examples/MAX32680/ARM-DSP/arm_variance_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/ARM-DSP/arm_variance_example/.vscode/README.md +++ b/Examples/MAX32680/ARM-DSP/arm_variance_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/ARM-DSP/arm_variance_example/.vscode/settings.json b/Examples/MAX32680/ARM-DSP/arm_variance_example/.vscode/settings.json index 56faa5a2afe..9b8e0ecb52c 100755 --- a/Examples/MAX32680/ARM-DSP/arm_variance_example/.vscode/settings.json +++ b/Examples/MAX32680/ARM-DSP/arm_variance_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/ARM-DSP/arm_variance_example/Makefile b/Examples/MAX32680/ARM-DSP/arm_variance_example/Makefile index eae8ffba1ce..d23ae5f8a40 100644 --- a/Examples/MAX32680/ARM-DSP/arm_variance_example/Makefile +++ b/Examples/MAX32680/ARM-DSP/arm_variance_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/ARM-DSP/arm_variance_example/project.mk b/Examples/MAX32680/ARM-DSP/arm_variance_example/project.mk index 012119464e4..6a8ff26046e 100644 --- a/Examples/MAX32680/ARM-DSP/arm_variance_example/project.mk +++ b/Examples/MAX32680/ARM-DSP/arm_variance_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used for project configuration. # It's a sibling to the core "Makefile", which offers # various configuration variables that you can set here diff --git a/Examples/MAX32680/Bluetooth/BLE4_ctr/.vscode/README.md b/Examples/MAX32680/Bluetooth/BLE4_ctr/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/Bluetooth/BLE4_ctr/.vscode/README.md +++ b/Examples/MAX32680/Bluetooth/BLE4_ctr/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/Bluetooth/BLE4_ctr/.vscode/settings.json b/Examples/MAX32680/Bluetooth/BLE4_ctr/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/Bluetooth/BLE4_ctr/.vscode/settings.json +++ b/Examples/MAX32680/Bluetooth/BLE4_ctr/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/Bluetooth/BLE4_ctr/Makefile b/Examples/MAX32680/Bluetooth/BLE4_ctr/Makefile index eae8ffba1ce..d23ae5f8a40 100644 --- a/Examples/MAX32680/Bluetooth/BLE4_ctr/Makefile +++ b/Examples/MAX32680/Bluetooth/BLE4_ctr/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/Bluetooth/BLE4_ctr/project.mk b/Examples/MAX32680/Bluetooth/BLE4_ctr/project.mk index bb54c1ea7c7..8e085717289 100644 --- a/Examples/MAX32680/Bluetooth/BLE4_ctr/project.mk +++ b/Examples/MAX32680/Bluetooth/BLE4_ctr/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/Bluetooth/BLE_dats/.vscode/README.md b/Examples/MAX32680/Bluetooth/BLE_dats/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/Bluetooth/BLE_dats/.vscode/README.md +++ b/Examples/MAX32680/Bluetooth/BLE_dats/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/Bluetooth/BLE_dats/.vscode/settings.json b/Examples/MAX32680/Bluetooth/BLE_dats/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/Bluetooth/BLE_dats/.vscode/settings.json +++ b/Examples/MAX32680/Bluetooth/BLE_dats/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/Bluetooth/BLE_dats/Makefile b/Examples/MAX32680/Bluetooth/BLE_dats/Makefile index eae8ffba1ce..d23ae5f8a40 100644 --- a/Examples/MAX32680/Bluetooth/BLE_dats/Makefile +++ b/Examples/MAX32680/Bluetooth/BLE_dats/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/Bluetooth/BLE_dats/project.mk b/Examples/MAX32680/Bluetooth/BLE_dats/project.mk index bb54c1ea7c7..8e085717289 100644 --- a/Examples/MAX32680/Bluetooth/BLE_dats/project.mk +++ b/Examples/MAX32680/Bluetooth/BLE_dats/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/CRC/.vscode/README.md b/Examples/MAX32680/CRC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/CRC/.vscode/README.md +++ b/Examples/MAX32680/CRC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/CRC/.vscode/settings.json b/Examples/MAX32680/CRC/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/CRC/.vscode/settings.json +++ b/Examples/MAX32680/CRC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/CRC/Makefile b/Examples/MAX32680/CRC/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/CRC/Makefile +++ b/Examples/MAX32680/CRC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/CRC/main.c b/Examples/MAX32680/CRC/main.c index c5a8a797588..9e5943ec857 100644 --- a/Examples/MAX32680/CRC/main.c +++ b/Examples/MAX32680/CRC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/CRC/project.mk b/Examples/MAX32680/CRC/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/CRC/project.mk +++ b/Examples/MAX32680/CRC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/Coremark/.vscode/README.md b/Examples/MAX32680/Coremark/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/Coremark/.vscode/README.md +++ b/Examples/MAX32680/Coremark/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/Coremark/.vscode/settings.json b/Examples/MAX32680/Coremark/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/Coremark/.vscode/settings.json +++ b/Examples/MAX32680/Coremark/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/Coremark/Makefile b/Examples/MAX32680/Coremark/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/Coremark/Makefile +++ b/Examples/MAX32680/Coremark/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/Coremark/project.mk b/Examples/MAX32680/Coremark/project.mk index 9ded8091069..a6efc624169 100644 --- a/Examples/MAX32680/Coremark/project.mk +++ b/Examples/MAX32680/Coremark/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/DMA/.vscode/README.md b/Examples/MAX32680/DMA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/DMA/.vscode/README.md +++ b/Examples/MAX32680/DMA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/DMA/.vscode/settings.json b/Examples/MAX32680/DMA/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/DMA/.vscode/settings.json +++ b/Examples/MAX32680/DMA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/DMA/Makefile b/Examples/MAX32680/DMA/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/DMA/Makefile +++ b/Examples/MAX32680/DMA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/DMA/main.c b/Examples/MAX32680/DMA/main.c index bc7965fb2d2..92ac146f44d 100644 --- a/Examples/MAX32680/DMA/main.c +++ b/Examples/MAX32680/DMA/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -56,7 +55,7 @@ void memCpyComplete(void *dest) flag++; } -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); } diff --git a/Examples/MAX32680/DMA/project.mk b/Examples/MAX32680/DMA/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/DMA/project.mk +++ b/Examples/MAX32680/DMA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/EEPROM_Emulator/.vscode/README.md b/Examples/MAX32680/EEPROM_Emulator/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/EEPROM_Emulator/.vscode/README.md +++ b/Examples/MAX32680/EEPROM_Emulator/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/EEPROM_Emulator/.vscode/settings.json b/Examples/MAX32680/EEPROM_Emulator/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/EEPROM_Emulator/.vscode/settings.json +++ b/Examples/MAX32680/EEPROM_Emulator/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/EEPROM_Emulator/Makefile b/Examples/MAX32680/EEPROM_Emulator/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/EEPROM_Emulator/Makefile +++ b/Examples/MAX32680/EEPROM_Emulator/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/EEPROM_Emulator/include/cache.h b/Examples/MAX32680/EEPROM_Emulator/include/cache.h index 8eedccd6bd1..8837f2e2e86 100644 --- a/Examples/MAX32680/EEPROM_Emulator/include/cache.h +++ b/Examples/MAX32680/EEPROM_Emulator/include/cache.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/EEPROM_Emulator/include/eeprom.h b/Examples/MAX32680/EEPROM_Emulator/include/eeprom.h index 2212c46ecb4..64a5b91f6b4 100644 --- a/Examples/MAX32680/EEPROM_Emulator/include/eeprom.h +++ b/Examples/MAX32680/EEPROM_Emulator/include/eeprom.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/EEPROM_Emulator/main.c b/Examples/MAX32680/EEPROM_Emulator/main.c index 3705d752ff4..f0a59464cbe 100644 --- a/Examples/MAX32680/EEPROM_Emulator/main.c +++ b/Examples/MAX32680/EEPROM_Emulator/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/EEPROM_Emulator/project.mk b/Examples/MAX32680/EEPROM_Emulator/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32680/EEPROM_Emulator/project.mk +++ b/Examples/MAX32680/EEPROM_Emulator/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/EEPROM_Emulator/src/cache.c b/Examples/MAX32680/EEPROM_Emulator/src/cache.c index 17bc7b57c13..adf98b89839 100644 --- a/Examples/MAX32680/EEPROM_Emulator/src/cache.c +++ b/Examples/MAX32680/EEPROM_Emulator/src/cache.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/EEPROM_Emulator/src/eeprom.c b/Examples/MAX32680/EEPROM_Emulator/src/eeprom.c index 22ede1df092..266766e2e42 100644 --- a/Examples/MAX32680/EEPROM_Emulator/src/eeprom.c +++ b/Examples/MAX32680/EEPROM_Emulator/src/eeprom.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Flash/.vscode/README.md b/Examples/MAX32680/Flash/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/Flash/.vscode/README.md +++ b/Examples/MAX32680/Flash/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/Flash/.vscode/settings.json b/Examples/MAX32680/Flash/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/Flash/.vscode/settings.json +++ b/Examples/MAX32680/Flash/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/Flash/Makefile b/Examples/MAX32680/Flash/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/Flash/Makefile +++ b/Examples/MAX32680/Flash/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/Flash/main.c b/Examples/MAX32680/Flash/main.c index 93be6afc680..820c77fb5e3 100644 --- a/Examples/MAX32680/Flash/main.c +++ b/Examples/MAX32680/Flash/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -60,7 +59,7 @@ volatile uint32_t isr_flags; //****************************************************************************** int button_pressed = 0; -void button_handler() +void button_handler(void) { button_pressed = 1; } @@ -121,7 +120,7 @@ void setup_irqs(void) isr_cnt = 0; } -int write_test_pattern() +int write_test_pattern(void) { int err; // A flash address must be in the erased state before writing to it, because the @@ -163,7 +162,7 @@ int write_test_pattern() return err; } -int validate_test_pattern() +int validate_test_pattern(void) { int err = 0; @@ -183,7 +182,7 @@ int validate_test_pattern() return err; } -int erase_magic() +int erase_magic(void) { /* To modify a location in flash that has already been written to, diff --git a/Examples/MAX32680/Flash/project.mk b/Examples/MAX32680/Flash/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32680/Flash/project.mk +++ b/Examples/MAX32680/Flash/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/Flash_CLI/.vscode/README.md b/Examples/MAX32680/Flash_CLI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/Flash_CLI/.vscode/README.md +++ b/Examples/MAX32680/Flash_CLI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/Flash_CLI/.vscode/settings.json b/Examples/MAX32680/Flash_CLI/.vscode/settings.json index ce4d58253a4..74e9cb4f67f 100755 --- a/Examples/MAX32680/Flash_CLI/.vscode/settings.json +++ b/Examples/MAX32680/Flash_CLI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/Flash_CLI/FreeRTOSConfig.h b/Examples/MAX32680/Flash_CLI/FreeRTOSConfig.h index b81dc039568..b70a01bc282 100644 --- a/Examples/MAX32680/Flash_CLI/FreeRTOSConfig.h +++ b/Examples/MAX32680/Flash_CLI/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Flash_CLI/Makefile b/Examples/MAX32680/Flash_CLI/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/Flash_CLI/Makefile +++ b/Examples/MAX32680/Flash_CLI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/Flash_CLI/definitions.h b/Examples/MAX32680/Flash_CLI/definitions.h index 227eb5768c6..5a9cb3dc558 100644 --- a/Examples/MAX32680/Flash_CLI/definitions.h +++ b/Examples/MAX32680/Flash_CLI/definitions.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Flash_CLI/main.c b/Examples/MAX32680/Flash_CLI/main.c index c959227202e..55594b432e9 100644 --- a/Examples/MAX32680/Flash_CLI/main.c +++ b/Examples/MAX32680/Flash_CLI/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Flash_CLI/project.mk b/Examples/MAX32680/Flash_CLI/project.mk index 6cad518659c..ce063c4ceb6 100644 --- a/Examples/MAX32680/Flash_CLI/project.mk +++ b/Examples/MAX32680/Flash_CLI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/FreeRTOSDemo/.vscode/README.md b/Examples/MAX32680/FreeRTOSDemo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/FreeRTOSDemo/.vscode/README.md +++ b/Examples/MAX32680/FreeRTOSDemo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/FreeRTOSDemo/.vscode/settings.json b/Examples/MAX32680/FreeRTOSDemo/.vscode/settings.json index ce4d58253a4..74e9cb4f67f 100755 --- a/Examples/MAX32680/FreeRTOSDemo/.vscode/settings.json +++ b/Examples/MAX32680/FreeRTOSDemo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/FreeRTOSDemo/FreeRTOSConfig.h b/Examples/MAX32680/FreeRTOSDemo/FreeRTOSConfig.h index 9c48dff0dfa..cc24930da5d 100644 --- a/Examples/MAX32680/FreeRTOSDemo/FreeRTOSConfig.h +++ b/Examples/MAX32680/FreeRTOSDemo/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/FreeRTOSDemo/Makefile b/Examples/MAX32680/FreeRTOSDemo/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/FreeRTOSDemo/Makefile +++ b/Examples/MAX32680/FreeRTOSDemo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/FreeRTOSDemo/freertos_tickless.c b/Examples/MAX32680/FreeRTOSDemo/freertos_tickless.c index 133678ce798..b0b67a415d3 100644 --- a/Examples/MAX32680/FreeRTOSDemo/freertos_tickless.c +++ b/Examples/MAX32680/FreeRTOSDemo/freertos_tickless.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/FreeRTOSDemo/main.c b/Examples/MAX32680/FreeRTOSDemo/main.c index fdf659791f4..c16f27ccc1f 100644 --- a/Examples/MAX32680/FreeRTOSDemo/main.c +++ b/Examples/MAX32680/FreeRTOSDemo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/FreeRTOSDemo/project.mk b/Examples/MAX32680/FreeRTOSDemo/project.mk index 6cad518659c..ce063c4ceb6 100644 --- a/Examples/MAX32680/FreeRTOSDemo/project.mk +++ b/Examples/MAX32680/FreeRTOSDemo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/GPIO/.vscode/README.md b/Examples/MAX32680/GPIO/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/GPIO/.vscode/README.md +++ b/Examples/MAX32680/GPIO/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/GPIO/.vscode/settings.json b/Examples/MAX32680/GPIO/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/GPIO/.vscode/settings.json +++ b/Examples/MAX32680/GPIO/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/GPIO/Makefile b/Examples/MAX32680/GPIO/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/GPIO/Makefile +++ b/Examples/MAX32680/GPIO/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/GPIO/main.c b/Examples/MAX32680/GPIO/main.c index eb8036b2e1d..39f919a5733 100644 --- a/Examples/MAX32680/GPIO/main.c +++ b/Examples/MAX32680/GPIO/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/GPIO/project.mk b/Examples/MAX32680/GPIO/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/GPIO/project.mk +++ b/Examples/MAX32680/GPIO/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/HART_UART/.vscode/README.md b/Examples/MAX32680/HART_UART/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/HART_UART/.vscode/README.md +++ b/Examples/MAX32680/HART_UART/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/HART_UART/.vscode/settings.json b/Examples/MAX32680/HART_UART/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/HART_UART/.vscode/settings.json +++ b/Examples/MAX32680/HART_UART/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/HART_UART/Makefile b/Examples/MAX32680/HART_UART/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/HART_UART/Makefile +++ b/Examples/MAX32680/HART_UART/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/HART_UART/main.c b/Examples/MAX32680/HART_UART/main.c index ac36eb894bf..81e77cc175b 100644 --- a/Examples/MAX32680/HART_UART/main.c +++ b/Examples/MAX32680/HART_UART/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/HART_UART/project.mk b/Examples/MAX32680/HART_UART/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/HART_UART/project.mk +++ b/Examples/MAX32680/HART_UART/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/Hello_World-riscv/.vscode/README.md b/Examples/MAX32680/Hello_World-riscv/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/Hello_World-riscv/.vscode/README.md +++ b/Examples/MAX32680/Hello_World-riscv/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/Hello_World-riscv/.vscode/settings.json b/Examples/MAX32680/Hello_World-riscv/.vscode/settings.json index f7326604eb9..990bf6f21be 100755 --- a/Examples/MAX32680/Hello_World-riscv/.vscode/settings.json +++ b/Examples/MAX32680/Hello_World-riscv/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/Hello_World-riscv/Makefile b/Examples/MAX32680/Hello_World-riscv/Makefile index 6822fe361eb..9d752796b24 100644 --- a/Examples/MAX32680/Hello_World-riscv/Makefile +++ b/Examples/MAX32680/Hello_World-riscv/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Hello_World-riscv/Makefile.ARM b/Examples/MAX32680/Hello_World-riscv/Makefile.ARM index cde545207d5..c8d02951bd9 100644 --- a/Examples/MAX32680/Hello_World-riscv/Makefile.ARM +++ b/Examples/MAX32680/Hello_World-riscv/Makefile.ARM @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Hello_World-riscv/Makefile.RISCV b/Examples/MAX32680/Hello_World-riscv/Makefile.RISCV index a78a14abdf1..dc88d74161b 100644 --- a/Examples/MAX32680/Hello_World-riscv/Makefile.RISCV +++ b/Examples/MAX32680/Hello_World-riscv/Makefile.RISCV @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Hello_World-riscv/main.c b/Examples/MAX32680/Hello_World-riscv/main.c index 75ab7da3b60..6f96aae1efb 100644 --- a/Examples/MAX32680/Hello_World-riscv/main.c +++ b/Examples/MAX32680/Hello_World-riscv/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Hello_World-riscv/main_riscv.c b/Examples/MAX32680/Hello_World-riscv/main_riscv.c index 637d42ca653..9e8b0197bcf 100644 --- a/Examples/MAX32680/Hello_World-riscv/main_riscv.c +++ b/Examples/MAX32680/Hello_World-riscv/main_riscv.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Hello_World/.vscode/README.md b/Examples/MAX32680/Hello_World/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/Hello_World/.vscode/README.md +++ b/Examples/MAX32680/Hello_World/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/Hello_World/.vscode/settings.json b/Examples/MAX32680/Hello_World/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/Hello_World/.vscode/settings.json +++ b/Examples/MAX32680/Hello_World/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/Hello_World/Makefile b/Examples/MAX32680/Hello_World/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/Hello_World/Makefile +++ b/Examples/MAX32680/Hello_World/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/Hello_World/main.c b/Examples/MAX32680/Hello_World/main.c index b96987cdbed..5a4ce99ba9d 100644 --- a/Examples/MAX32680/Hello_World/main.c +++ b/Examples/MAX32680/Hello_World/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Hello_World/project.mk b/Examples/MAX32680/Hello_World/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/Hello_World/project.mk +++ b/Examples/MAX32680/Hello_World/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/Hello_World_Cpp/.vscode/README.md b/Examples/MAX32680/Hello_World_Cpp/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/Hello_World_Cpp/.vscode/README.md +++ b/Examples/MAX32680/Hello_World_Cpp/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/Hello_World_Cpp/.vscode/settings.json b/Examples/MAX32680/Hello_World_Cpp/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/Hello_World_Cpp/.vscode/settings.json +++ b/Examples/MAX32680/Hello_World_Cpp/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/Hello_World_Cpp/Makefile b/Examples/MAX32680/Hello_World_Cpp/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/Hello_World_Cpp/Makefile +++ b/Examples/MAX32680/Hello_World_Cpp/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/Hello_World_Cpp/main.cpp b/Examples/MAX32680/Hello_World_Cpp/main.cpp index daade0e995d..fdf8363cde1 100644 --- a/Examples/MAX32680/Hello_World_Cpp/main.cpp +++ b/Examples/MAX32680/Hello_World_Cpp/main.cpp @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -66,7 +65,7 @@ class LED { int blink_count; }; -int main() +int main(void) { LED led = LED(0); diff --git a/Examples/MAX32680/Hello_World_Cpp/project.mk b/Examples/MAX32680/Hello_World_Cpp/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX32680/Hello_World_Cpp/project.mk +++ b/Examples/MAX32680/Hello_World_Cpp/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/I2C/.vscode/README.md b/Examples/MAX32680/I2C/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/I2C/.vscode/README.md +++ b/Examples/MAX32680/I2C/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/I2C/.vscode/settings.json b/Examples/MAX32680/I2C/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/I2C/.vscode/settings.json +++ b/Examples/MAX32680/I2C/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/I2C/Makefile b/Examples/MAX32680/I2C/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/I2C/Makefile +++ b/Examples/MAX32680/I2C/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/I2C/main.c b/Examples/MAX32680/I2C/main.c index 37808064296..460e4448ff8 100644 --- a/Examples/MAX32680/I2C/main.c +++ b/Examples/MAX32680/I2C/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -183,7 +182,7 @@ int verifyData(void) } // ***************************************************************************** -int main() +int main(void) { printf("\n******** I2C Master-Slave Transaction Demo *********\n"); printf("\nThis example uses one I2C peripheral as a master to\n"); diff --git a/Examples/MAX32680/I2C/project.mk b/Examples/MAX32680/I2C/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/I2C/project.mk +++ b/Examples/MAX32680/I2C/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/I2C_MNGR/.vscode/README.md b/Examples/MAX32680/I2C_MNGR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/I2C_MNGR/.vscode/README.md +++ b/Examples/MAX32680/I2C_MNGR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/I2C_MNGR/.vscode/settings.json b/Examples/MAX32680/I2C_MNGR/.vscode/settings.json index 91336cd5b6d..35e207dcbb3 100755 --- a/Examples/MAX32680/I2C_MNGR/.vscode/settings.json +++ b/Examples/MAX32680/I2C_MNGR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/I2C_MNGR/FreeRTOSConfig.h b/Examples/MAX32680/I2C_MNGR/FreeRTOSConfig.h index ab105b50321..fb0e98cf742 100644 --- a/Examples/MAX32680/I2C_MNGR/FreeRTOSConfig.h +++ b/Examples/MAX32680/I2C_MNGR/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/I2C_MNGR/Makefile b/Examples/MAX32680/I2C_MNGR/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/I2C_MNGR/Makefile +++ b/Examples/MAX32680/I2C_MNGR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/I2C_MNGR/i2c_mngr/i2c_mngr.c b/Examples/MAX32680/I2C_MNGR/i2c_mngr/i2c_mngr.c index 2677dfbbda2..d2c41b1d609 100644 --- a/Examples/MAX32680/I2C_MNGR/i2c_mngr/i2c_mngr.c +++ b/Examples/MAX32680/I2C_MNGR/i2c_mngr/i2c_mngr.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +38,7 @@ typedef struct { static i2c_txn_mngr_t s_mngr; /******************************************************************************/ -int I2C_MNGR_Init() +int I2C_MNGR_Init(void) { s_mngr.inst0 = MXC_I2C0; s_mngr.inst1 = MXC_I2C1; diff --git a/Examples/MAX32680/I2C_MNGR/i2c_mngr/i2c_mngr.h b/Examples/MAX32680/I2C_MNGR/i2c_mngr/i2c_mngr.h index 2e744bf98a2..4dea0ad4fa7 100644 --- a/Examples/MAX32680/I2C_MNGR/i2c_mngr/i2c_mngr.h +++ b/Examples/MAX32680/I2C_MNGR/i2c_mngr/i2c_mngr.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +54,7 @@ typedef struct { * @brief Initializes I2C transaction manager * @return #E_NO_ERROR if succeeded, error code otherwise */ -int I2C_MNGR_Init(); +int I2C_MNGR_Init(void); /* * @brief Executes I2C transaction diff --git a/Examples/MAX32680/I2C_MNGR/main.c b/Examples/MAX32680/I2C_MNGR/main.c index 9bfec933774..cb6b2c8f884 100644 --- a/Examples/MAX32680/I2C_MNGR/main.c +++ b/Examples/MAX32680/I2C_MNGR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/I2C_MNGR/project.mk b/Examples/MAX32680/I2C_MNGR/project.mk index 90e76c6363a..da687b6e847 100644 --- a/Examples/MAX32680/I2C_MNGR/project.mk +++ b/Examples/MAX32680/I2C_MNGR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/I2C_SCAN/.vscode/README.md b/Examples/MAX32680/I2C_SCAN/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/I2C_SCAN/.vscode/README.md +++ b/Examples/MAX32680/I2C_SCAN/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/I2C_SCAN/.vscode/settings.json b/Examples/MAX32680/I2C_SCAN/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/I2C_SCAN/.vscode/settings.json +++ b/Examples/MAX32680/I2C_SCAN/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/I2C_SCAN/Makefile b/Examples/MAX32680/I2C_SCAN/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/I2C_SCAN/Makefile +++ b/Examples/MAX32680/I2C_SCAN/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/I2C_SCAN/main.c b/Examples/MAX32680/I2C_SCAN/main.c index b6175c0e953..d9fc3f46d9b 100644 --- a/Examples/MAX32680/I2C_SCAN/main.c +++ b/Examples/MAX32680/I2C_SCAN/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -43,7 +42,7 @@ /***** Globals *****/ // ***************************************************************************** -int main() +int main(void) { uint8_t counter = 0; int error; diff --git a/Examples/MAX32680/I2C_SCAN/project.mk b/Examples/MAX32680/I2C_SCAN/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/I2C_SCAN/project.mk +++ b/Examples/MAX32680/I2C_SCAN/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/I2C_Sensor/.vscode/README.md b/Examples/MAX32680/I2C_Sensor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/I2C_Sensor/.vscode/README.md +++ b/Examples/MAX32680/I2C_Sensor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/I2C_Sensor/.vscode/settings.json b/Examples/MAX32680/I2C_Sensor/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/I2C_Sensor/.vscode/settings.json +++ b/Examples/MAX32680/I2C_Sensor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/I2C_Sensor/Makefile b/Examples/MAX32680/I2C_Sensor/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/I2C_Sensor/Makefile +++ b/Examples/MAX32680/I2C_Sensor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/I2C_Sensor/main.c b/Examples/MAX32680/I2C_Sensor/main.c index 59cef950d03..51131833f6a 100644 --- a/Examples/MAX32680/I2C_Sensor/main.c +++ b/Examples/MAX32680/I2C_Sensor/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/I2C_Sensor/project.mk b/Examples/MAX32680/I2C_Sensor/project.mk index 6a77af63372..fa0464ac6ba 100644 --- a/Examples/MAX32680/I2C_Sensor/project.mk +++ b/Examples/MAX32680/I2C_Sensor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/I2S/.vscode/README.md b/Examples/MAX32680/I2S/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/I2S/.vscode/README.md +++ b/Examples/MAX32680/I2S/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/I2S/.vscode/settings.json b/Examples/MAX32680/I2S/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/I2S/.vscode/settings.json +++ b/Examples/MAX32680/I2S/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/I2S/Makefile b/Examples/MAX32680/I2S/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/I2S/Makefile +++ b/Examples/MAX32680/I2S/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/I2S/main.c b/Examples/MAX32680/I2S/main.c index b9ae03fbf54..db7e8b1c32b 100644 --- a/Examples/MAX32680/I2S/main.c +++ b/Examples/MAX32680/I2S/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -72,7 +71,7 @@ void i2s_dma_cb(int ch, int err) #endif /*****************************************************************/ -int main() +int main(void) { int err; mxc_i2s_req_t req; diff --git a/Examples/MAX32680/I2S/project.mk b/Examples/MAX32680/I2S/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/I2S/project.mk +++ b/Examples/MAX32680/I2S/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/ICC/.vscode/README.md b/Examples/MAX32680/ICC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/ICC/.vscode/README.md +++ b/Examples/MAX32680/ICC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/ICC/.vscode/settings.json b/Examples/MAX32680/ICC/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/ICC/.vscode/settings.json +++ b/Examples/MAX32680/ICC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/ICC/Makefile b/Examples/MAX32680/ICC/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/ICC/Makefile +++ b/Examples/MAX32680/ICC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/ICC/main.c b/Examples/MAX32680/ICC/main.c index 6d26a056e55..3c440870999 100644 --- a/Examples/MAX32680/ICC/main.c +++ b/Examples/MAX32680/ICC/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/ICC/project.mk b/Examples/MAX32680/ICC/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/ICC/project.mk +++ b/Examples/MAX32680/ICC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/LP/.vscode/README.md b/Examples/MAX32680/LP/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/LP/.vscode/README.md +++ b/Examples/MAX32680/LP/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/LP/.vscode/settings.json b/Examples/MAX32680/LP/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/LP/.vscode/settings.json +++ b/Examples/MAX32680/LP/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/LP/Makefile b/Examples/MAX32680/LP/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/LP/Makefile +++ b/Examples/MAX32680/LP/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/LP/main.c b/Examples/MAX32680/LP/main.c index f3648bb00c8..5a8e41b48e2 100644 --- a/Examples/MAX32680/LP/main.c +++ b/Examples/MAX32680/LP/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/LP/project.mk b/Examples/MAX32680/LP/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32680/LP/project.mk +++ b/Examples/MAX32680/LP/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/Library_Generate/.vscode/README.md b/Examples/MAX32680/Library_Generate/.vscode/README.md index e2e9a1a6522..a740741c3ab 100644 --- a/Examples/MAX32680/Library_Generate/.vscode/README.md +++ b/Examples/MAX32680/Library_Generate/.vscode/README.md @@ -7,11 +7,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) * If it's not in the README, check the UG. * If it's not in the UG, open a ticket! -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -38,7 +38,7 @@ The steps below are also available in video form in "Understanding Artificial In 2. Run the installer executable, and ensure that "Visual Studio Code Support" is enabled for your installation. - ![Selected Components](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/installer_components.JPG) + ![Selected Components](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/installer_components.JPG) 3. Finish the MSDK installation, taking note of where the MSDK was installed. @@ -54,7 +54,7 @@ The steps below are also available in video form in "Understanding Artificial In 9. Type "open settings json" and select the "Preferences: Open Settings (JSON)" option (_not_ the "Preferences: Open _Default_ Settings (JSON)"). This will open your user settings.json file in VS Code's editor. - ![Open Settings JSON Command](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/open_settings_json.jpg) + ![Open Settings JSON Command](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/open_settings_json.jpg) 10. Add the entries below into your user settings.json file. @@ -82,7 +82,7 @@ This section covers basic usage of the VSCode-Maxim project files. For document Visual Studio Code is built around a "working directory" paradigm. The editor is always rooted in a working directory, and the main mechanism for changing that directory is `File -> Open Folder...`. -![File -> Open Folder](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/file_openfolder.JPG) +![File -> Open Folder](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/file_openfolder.JPG) As a result, you'll notice that there is no "New Project" mechanism. A "project" in VS Code is simply a folder. It will look inside of the opened folder for a `.vscode` _sub_-folder to load project-specific settings from. @@ -90,11 +90,11 @@ A project that is configured for VS Code will have, at minimum, a .vscode sub-fo Ex: -![Example Directory Contents](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/opening_projects_2.jpg) +![Example Directory Contents](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/opening_projects_2.jpg) ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MSDK installation. @@ -102,7 +102,7 @@ Additionally, empty project templates and a drag-and-drop folder for "injecting" Once a project is opened 4 available build tasks will become available via `Terminal > Run Build task...` or the shortcut `Ctrl+Shift+B`. These tasks are configured by the `.vscode/task.json` file. -![Build Tasks Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/buildtasks.JPG) +![Build Tasks Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/buildtasks.JPG) #### Build @@ -138,7 +138,7 @@ Once a project is opened 4 available build tasks will become available via `Term ### Debugging -![Debug Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger.JPG) +![Debug Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger.JPG) Debugging is enabled by Visual Studio Code's integrated debugger. Launch configurations can be found in the `.vscode/launch.json` file. @@ -162,11 +162,11 @@ In general, the MAX-series microcontrollers have the following debugger limitati 3. Launch the debugger with `Run > Start Debugging`, with the shortcut `F5`, or via the `Run and Debug` window (Ctrl + Shift + D) and the green "launch" arrow. - ![Debug Tab](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_window.JPG) + ![Debug Tab](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_window.JPG) 4. The debugger will launch a GDB client & OpenOCD server, reset the microcontroller, and should break on entry into `main`. - ![Debugger Break on Main](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_breakmain.JPG) + ![Debugger Break on Main](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_breakmain.JPG) #### Using the Debugger @@ -174,13 +174,13 @@ In general, the MAX-series microcontrollers have the following debugger limitati The main interface for the debugger is the debugger control bar: -![Debugger Control Bar Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_bar.JPG) +![Debugger Control Bar Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_bar.JPG) `Continue | Step Over | Step Into | Step Out | Restart | Stop` Breakpoints can be set by clicking in the space next to the line number in a source code file. A red dot indicates a line to break on. Breakpoints can be removed by clicking on them again. Ex: -![Breakpoint](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/breakpoint.JPG) +![Breakpoint](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/breakpoint.JPG) ## Project Configuration @@ -190,7 +190,7 @@ Breakpoints can be set by clicking in the space next to the line number in a sou **When a change is made to this file, VS Code should be reloaded with CTRL+SHIFT+P -> Reload Window (or alternatively restarted completely) to force a re-parse.** -![Reload Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/reload_window.JPG) +![Reload Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/reload_window.JPG) The default project configuration should work for most use cases as long as `"target"` and `"board"` are set correctly. @@ -227,7 +227,7 @@ The following configuration options are available: * ... can be found in the `Libraries/Boards` folder of the MSDK * For example, the supported options for the MAX78000 are `"EvKit_V1"`, `"FTHR_RevA"`, and `"MAXREFDES178"`. - ![MAX78000 Boards](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/78000_boards.JPG) + ![MAX78000 Boards](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/78000_boards.JPG) ### Advanced Config Options @@ -353,7 +353,7 @@ A project's build system is managed by two files found in the project's root dir * `Makefile` * `project.mk` -![Files are located in the root directory](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) +![Files are located in the root directory](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) When the command... @@ -416,7 +416,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the @@ -540,7 +540,7 @@ If you want to start from scratch, take this option. ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/Library_Generate/Makefile b/Examples/MAX32680/Library_Generate/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/Library_Generate/Makefile +++ b/Examples/MAX32680/Library_Generate/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/Library_Generate/gpiolib.c b/Examples/MAX32680/Library_Generate/gpiolib.c index 5c8845edc78..252f6df4c44 100644 --- a/Examples/MAX32680/Library_Generate/gpiolib.c +++ b/Examples/MAX32680/Library_Generate/gpiolib.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Library_Generate/gpiolib.h b/Examples/MAX32680/Library_Generate/gpiolib.h index 214c147c96f..b667f08da8d 100644 --- a/Examples/MAX32680/Library_Generate/gpiolib.h +++ b/Examples/MAX32680/Library_Generate/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Library_Generate/project.mk b/Examples/MAX32680/Library_Generate/project.mk index 01dcd9fbb2a..b5729be6ef0 100644 --- a/Examples/MAX32680/Library_Generate/project.mk +++ b/Examples/MAX32680/Library_Generate/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/Library_Use/.vscode/README.md b/Examples/MAX32680/Library_Use/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/Library_Use/.vscode/README.md +++ b/Examples/MAX32680/Library_Use/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/Library_Use/.vscode/settings.json b/Examples/MAX32680/Library_Use/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/Library_Use/.vscode/settings.json +++ b/Examples/MAX32680/Library_Use/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/Library_Use/Makefile b/Examples/MAX32680/Library_Use/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/Library_Use/Makefile +++ b/Examples/MAX32680/Library_Use/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/Library_Use/lib/include/gpiolib.h b/Examples/MAX32680/Library_Use/lib/include/gpiolib.h index f2cb72259b3..a13a413989e 100644 --- a/Examples/MAX32680/Library_Use/lib/include/gpiolib.h +++ b/Examples/MAX32680/Library_Use/lib/include/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Library_Use/main.c b/Examples/MAX32680/Library_Use/main.c index a9c20ec444f..c686476d185 100644 --- a/Examples/MAX32680/Library_Use/main.c +++ b/Examples/MAX32680/Library_Use/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Library_Use/project.mk b/Examples/MAX32680/Library_Use/project.mk index 697d6809f88..8639a5f2593 100644 --- a/Examples/MAX32680/Library_Use/project.mk +++ b/Examples/MAX32680/Library_Use/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/Pulse_Train/.vscode/README.md b/Examples/MAX32680/Pulse_Train/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/Pulse_Train/.vscode/README.md +++ b/Examples/MAX32680/Pulse_Train/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/Pulse_Train/.vscode/settings.json b/Examples/MAX32680/Pulse_Train/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/Pulse_Train/.vscode/settings.json +++ b/Examples/MAX32680/Pulse_Train/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/Pulse_Train/Makefile b/Examples/MAX32680/Pulse_Train/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/Pulse_Train/Makefile +++ b/Examples/MAX32680/Pulse_Train/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/Pulse_Train/main.c b/Examples/MAX32680/Pulse_Train/main.c index 8c2a3fa4809..bc9e3be8726 100644 --- a/Examples/MAX32680/Pulse_Train/main.c +++ b/Examples/MAX32680/Pulse_Train/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Pulse_Train/project.mk b/Examples/MAX32680/Pulse_Train/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/Pulse_Train/project.mk +++ b/Examples/MAX32680/Pulse_Train/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/RV_ARM_Loader/.vscode/README.md b/Examples/MAX32680/RV_ARM_Loader/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/RV_ARM_Loader/.vscode/README.md +++ b/Examples/MAX32680/RV_ARM_Loader/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/RV_ARM_Loader/.vscode/settings.json b/Examples/MAX32680/RV_ARM_Loader/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/RV_ARM_Loader/.vscode/settings.json +++ b/Examples/MAX32680/RV_ARM_Loader/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/RV_ARM_Loader/Makefile b/Examples/MAX32680/RV_ARM_Loader/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/RV_ARM_Loader/Makefile +++ b/Examples/MAX32680/RV_ARM_Loader/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/RV_ARM_Loader/main.c b/Examples/MAX32680/RV_ARM_Loader/main.c index 08e6efeaba7..6e32da25e40 100644 --- a/Examples/MAX32680/RV_ARM_Loader/main.c +++ b/Examples/MAX32680/RV_ARM_Loader/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/RV_ARM_Loader/project.mk b/Examples/MAX32680/RV_ARM_Loader/project.mk index 08efab2773d..f1c6ee092c5 100644 --- a/Examples/MAX32680/RV_ARM_Loader/project.mk +++ b/Examples/MAX32680/RV_ARM_Loader/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/SPI/.vscode/README.md b/Examples/MAX32680/SPI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/SPI/.vscode/README.md +++ b/Examples/MAX32680/SPI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/SPI/.vscode/settings.json b/Examples/MAX32680/SPI/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/SPI/.vscode/settings.json +++ b/Examples/MAX32680/SPI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/SPI/Makefile b/Examples/MAX32680/SPI/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/SPI/Makefile +++ b/Examples/MAX32680/SPI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/SPI/main.c b/Examples/MAX32680/SPI/main.c index 6923ca754fb..e3fa59795a5 100644 --- a/Examples/MAX32680/SPI/main.c +++ b/Examples/MAX32680/SPI/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/SPI/project.mk b/Examples/MAX32680/SPI/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/SPI/project.mk +++ b/Examples/MAX32680/SPI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/TMR/.vscode/README.md b/Examples/MAX32680/TMR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/TMR/.vscode/README.md +++ b/Examples/MAX32680/TMR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/TMR/.vscode/settings.json b/Examples/MAX32680/TMR/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/TMR/.vscode/settings.json +++ b/Examples/MAX32680/TMR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/TMR/Makefile b/Examples/MAX32680/TMR/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/TMR/Makefile +++ b/Examples/MAX32680/TMR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/TMR/main.c b/Examples/MAX32680/TMR/main.c index ec113839ea3..efa87ca2e1e 100644 --- a/Examples/MAX32680/TMR/main.c +++ b/Examples/MAX32680/TMR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -48,9 +47,9 @@ #define PB2 1 // Parameters for PWM output -#define OST_CLOCK_SOURCE MXC_TMR_32K_CLK // \ref mxc_tmr_clock_t +#define OST_CLOCK_SOURCE MXC_TMR_ISO_CLK // \ref mxc_tmr_clock_t #define PWM_CLOCK_SOURCE MXC_TMR_APB_CLK // \ref mxc_tmr_clock_t -#define CONT_CLOCK_SOURCE MXC_TMR_8M_CLK // \ref mxc_tmr_clock_t +#define CONT_CLOCK_SOURCE MXC_TMR_IBRO_CLK // \ref mxc_tmr_clock_t // Parameters for Continuous timer #define OST_FREQ 1 // (Hz) @@ -87,7 +86,7 @@ #endif /***** Functions *****/ -void PWMTimer() +void PWMTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; // to configure timer diff --git a/Examples/MAX32680/TMR/project.mk b/Examples/MAX32680/TMR/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/TMR/project.mk +++ b/Examples/MAX32680/TMR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/TRNG/.vscode/README.md b/Examples/MAX32680/TRNG/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/TRNG/.vscode/README.md +++ b/Examples/MAX32680/TRNG/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/TRNG/.vscode/settings.json b/Examples/MAX32680/TRNG/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/TRNG/.vscode/settings.json +++ b/Examples/MAX32680/TRNG/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/TRNG/Makefile b/Examples/MAX32680/TRNG/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/TRNG/Makefile +++ b/Examples/MAX32680/TRNG/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/TRNG/main.c b/Examples/MAX32680/TRNG/main.c index ba6489b9847..595adaabb3f 100644 --- a/Examples/MAX32680/TRNG/main.c +++ b/Examples/MAX32680/TRNG/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/TRNG/project.mk b/Examples/MAX32680/TRNG/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/TRNG/project.mk +++ b/Examples/MAX32680/TRNG/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/Temp_Monitor/.vscode/README.md b/Examples/MAX32680/Temp_Monitor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/Temp_Monitor/.vscode/README.md +++ b/Examples/MAX32680/Temp_Monitor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/Temp_Monitor/.vscode/settings.json b/Examples/MAX32680/Temp_Monitor/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/Temp_Monitor/.vscode/settings.json +++ b/Examples/MAX32680/Temp_Monitor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/Temp_Monitor/Makefile b/Examples/MAX32680/Temp_Monitor/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/Temp_Monitor/Makefile +++ b/Examples/MAX32680/Temp_Monitor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/Temp_Monitor/main.c b/Examples/MAX32680/Temp_Monitor/main.c index a46c28f0e48..0f6edeaf3c5 100644 --- a/Examples/MAX32680/Temp_Monitor/main.c +++ b/Examples/MAX32680/Temp_Monitor/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Temp_Monitor/project.mk b/Examples/MAX32680/Temp_Monitor/project.mk index aebbcc92b49..ff8bd9d0f82 100644 --- a/Examples/MAX32680/Temp_Monitor/project.mk +++ b/Examples/MAX32680/Temp_Monitor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/Temp_Monitor/temp_monitor.c b/Examples/MAX32680/Temp_Monitor/temp_monitor.c index 9f41b456475..0129ff2e2ff 100644 --- a/Examples/MAX32680/Temp_Monitor/temp_monitor.c +++ b/Examples/MAX32680/Temp_Monitor/temp_monitor.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/Temp_Monitor/temp_monitor.h b/Examples/MAX32680/Temp_Monitor/temp_monitor.h index 3241e3a465e..ea41cbc08b5 100644 --- a/Examples/MAX32680/Temp_Monitor/temp_monitor.h +++ b/Examples/MAX32680/Temp_Monitor/temp_monitor.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/UART/.vscode/README.md b/Examples/MAX32680/UART/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/UART/.vscode/README.md +++ b/Examples/MAX32680/UART/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/UART/.vscode/settings.json b/Examples/MAX32680/UART/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/UART/.vscode/settings.json +++ b/Examples/MAX32680/UART/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/UART/Makefile b/Examples/MAX32680/UART/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/UART/Makefile +++ b/Examples/MAX32680/UART/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/UART/main.c b/Examples/MAX32680/UART/main.c index 6cb53ba9b75..ef018815481 100644 --- a/Examples/MAX32680/UART/main.c +++ b/Examples/MAX32680/UART/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/UART/project.mk b/Examples/MAX32680/UART/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/UART/project.mk +++ b/Examples/MAX32680/UART/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/WUT/.vscode/README.md b/Examples/MAX32680/WUT/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/WUT/.vscode/README.md +++ b/Examples/MAX32680/WUT/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/WUT/.vscode/settings.json b/Examples/MAX32680/WUT/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/WUT/.vscode/settings.json +++ b/Examples/MAX32680/WUT/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/WUT/Makefile b/Examples/MAX32680/WUT/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/WUT/Makefile +++ b/Examples/MAX32680/WUT/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/WUT/main.c b/Examples/MAX32680/WUT/main.c index 0f48c63ea74..8e254c8988d 100644 --- a/Examples/MAX32680/WUT/main.c +++ b/Examples/MAX32680/WUT/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -64,7 +63,7 @@ void setTrigger(int waitForTrigger) while (MXC_UART_ReadyForSleep(MXC_UART_GET_UART(CONSOLE_UART)) != E_NO_ERROR) {} } -void WUT_IRQHandler() +void WUT_IRQHandler(void) { MXC_WUT_IntClear(MXC_WUT); } diff --git a/Examples/MAX32680/WUT/project.mk b/Examples/MAX32680/WUT/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/WUT/project.mk +++ b/Examples/MAX32680/WUT/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/Watchdog/.vscode/README.md b/Examples/MAX32680/Watchdog/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/Watchdog/.vscode/README.md +++ b/Examples/MAX32680/Watchdog/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/Watchdog/.vscode/settings.json b/Examples/MAX32680/Watchdog/.vscode/settings.json index 92695710eca..e0fa9351e7a 100755 --- a/Examples/MAX32680/Watchdog/.vscode/settings.json +++ b/Examples/MAX32680/Watchdog/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/Watchdog/Makefile b/Examples/MAX32680/Watchdog/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/Watchdog/Makefile +++ b/Examples/MAX32680/Watchdog/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/Watchdog/main.c b/Examples/MAX32680/Watchdog/main.c index f69faf9e16e..52b10ca2820 100644 --- a/Examples/MAX32680/Watchdog/main.c +++ b/Examples/MAX32680/Watchdog/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -57,7 +56,7 @@ static mxc_wdt_cfg_t cfg; /***** Functions *****/ // ***************************************************************************** -void watchdogHandler() +void watchdogHandler(void) { MXC_WDT_ClearIntFlag(MXC_WDT0); printf("\nTIMEOUT! \n"); diff --git a/Examples/MAX32680/Watchdog/project.mk b/Examples/MAX32680/Watchdog/project.mk index 1773541b7d1..37ac00f660d 100644 --- a/Examples/MAX32680/Watchdog/project.mk +++ b/Examples/MAX32680/Watchdog/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/WearLeveling/.vscode/README.md b/Examples/MAX32680/WearLeveling/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32680/WearLeveling/.vscode/README.md +++ b/Examples/MAX32680/WearLeveling/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32680/WearLeveling/.vscode/settings.json b/Examples/MAX32680/WearLeveling/.vscode/settings.json index 48b3540daaa..a209c29eed1 100755 --- a/Examples/MAX32680/WearLeveling/.vscode/settings.json +++ b/Examples/MAX32680/WearLeveling/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32680/WearLeveling/Makefile b/Examples/MAX32680/WearLeveling/Makefile index 83f061eecbe..d764f7c509c 100644 --- a/Examples/MAX32680/WearLeveling/Makefile +++ b/Examples/MAX32680/WearLeveling/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32680/WearLeveling/include/cli.h b/Examples/MAX32680/WearLeveling/include/cli.h index d70d2ad22d6..52d9beb4af0 100644 --- a/Examples/MAX32680/WearLeveling/include/cli.h +++ b/Examples/MAX32680/WearLeveling/include/cli.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/WearLeveling/include/file.h b/Examples/MAX32680/WearLeveling/include/file.h index db2ce6e8cd9..75f1af378ff 100644 --- a/Examples/MAX32680/WearLeveling/include/file.h +++ b/Examples/MAX32680/WearLeveling/include/file.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/WearLeveling/include/flash.h b/Examples/MAX32680/WearLeveling/include/flash.h index b034d612875..fb68815574e 100644 --- a/Examples/MAX32680/WearLeveling/include/flash.h +++ b/Examples/MAX32680/WearLeveling/include/flash.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/WearLeveling/include/main.h b/Examples/MAX32680/WearLeveling/include/main.h index db1e75961d3..0dab6aa9baa 100644 --- a/Examples/MAX32680/WearLeveling/include/main.h +++ b/Examples/MAX32680/WearLeveling/include/main.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/WearLeveling/main.c b/Examples/MAX32680/WearLeveling/main.c index e0fed8e6f2a..4a4ef4a2705 100644 --- a/Examples/MAX32680/WearLeveling/main.c +++ b/Examples/MAX32680/WearLeveling/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/WearLeveling/project.mk b/Examples/MAX32680/WearLeveling/project.mk index 8b1313bcf11..cdd69f7768f 100644 --- a/Examples/MAX32680/WearLeveling/project.mk +++ b/Examples/MAX32680/WearLeveling/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32680/WearLeveling/src/cli.c b/Examples/MAX32680/WearLeveling/src/cli.c index 488f3413dee..ea27a00faa5 100644 --- a/Examples/MAX32680/WearLeveling/src/cli.c +++ b/Examples/MAX32680/WearLeveling/src/cli.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/WearLeveling/src/file.c b/Examples/MAX32680/WearLeveling/src/file.c index dec9a57200f..ddb03186181 100644 --- a/Examples/MAX32680/WearLeveling/src/file.c +++ b/Examples/MAX32680/WearLeveling/src/file.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32680/WearLeveling/src/flash.c b/Examples/MAX32680/WearLeveling/src/flash.c index b778eb62f55..160cf912742 100644 --- a/Examples/MAX32680/WearLeveling/src/flash.c +++ b/Examples/MAX32680/WearLeveling/src/flash.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/ADC/.vscode/README.md b/Examples/MAX32690/ADC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/ADC/.vscode/README.md +++ b/Examples/MAX32690/ADC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/ADC/.vscode/settings.json b/Examples/MAX32690/ADC/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/ADC/.vscode/settings.json +++ b/Examples/MAX32690/ADC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/ADC/Makefile b/Examples/MAX32690/ADC/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/ADC/Makefile +++ b/Examples/MAX32690/ADC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/ADC/README.md b/Examples/MAX32690/ADC/README.md index 8c9524990bf..728f63ff267 100644 --- a/Examples/MAX32690/ADC/README.md +++ b/Examples/MAX32690/ADC/README.md @@ -29,6 +29,12 @@ If using the MAX32690FTHR: - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - Apply an input voltage between 0 and 1.25V to pin labeled AIN0 of the J2 header. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. +- Apply an input voltage between 0 and 1.25V to AIN0, P3 Pin 1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/ADC/main.c b/Examples/MAX32690/ADC/main.c index 80f2854b161..47a0a4ad966 100644 --- a/Examples/MAX32690/ADC/main.c +++ b/Examples/MAX32690/ADC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -36,10 +35,10 @@ #include "fcr_regs.h" #include "led.h" #include "tmr.h" - +#include "nvic_table.h" /***** Definitions *****/ -#define POLLING // Uncomment to perform ADC conversions using blocking/polling method +//#define POLLING // Uncomment to perform ADC conversions using blocking/polling method // #define INTERRUPT // Uncomment to perform ADC conversions using interrupt driven method // #define DMA // Uncomment to perform ADC conversions using DMA driven method. @@ -182,7 +181,7 @@ void StartHWTriggerTimer(void) /* Performs the 1.25V Internal Reference Trim * Derived from UG7618 Section 11.6.3 - 1.25V Internal Reference Trim */ -void adc_internal_1v25_ref_trim() +void adc_internal_1v25_ref_trim(void) { uint32_t tempData; @@ -249,7 +248,7 @@ void adc_internal_1v25_ref_trim() /* Performs the 2.048V Internal Reference Trim * Derived from UG7618 Section 11.6.4 - 2.048V Internal Reference Trim */ -void adc_internal_2v048_ref_trim() +void adc_internal_2v048_ref_trim(void) { uint32_t tempData; @@ -316,7 +315,7 @@ void adc_internal_2v048_ref_trim() /* Performs the External Reference Trim * Derived from UG7618 Section 11.6.5 - External Reference Trim */ -void adc_external_ref_trim() +void adc_external_ref_trim(void) { uint32_t tempData; diff --git a/Examples/MAX32690/ADC/project.mk b/Examples/MAX32690/ADC/project.mk index 96eb02eae1d..b691f9ab3f8 100644 --- a/Examples/MAX32690/ADC/project.mk +++ b/Examples/MAX32690/ADC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -13,3 +30,6 @@ # For more information on how sing process works, see # https://www.analog.com/en/education/education-library/videos/6313214207112.html SBT=0 + +METHOD ?= POLLING +PROJ_CFLAGS += -D$(METHOD) \ No newline at end of file diff --git a/Examples/MAX32690/ARM-DSP/README.md b/Examples/MAX32690/ARM-DSP/README.md index 9bb2d50bedc..5e1d116671b 100644 --- a/Examples/MAX32690/ARM-DSP/README.md +++ b/Examples/MAX32690/ARM-DSP/README.md @@ -8,7 +8,7 @@ The projects in this folder are ports of ARM's DSP example projects that can be Debug launch configurations are included in each project, and should appear in the "Favorites" menu in Eclipse. -Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop) +Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop) ## Software diff --git a/Examples/MAX32690/ARM-DSP/arm_bayes_example/.vscode/README.md b/Examples/MAX32690/ARM-DSP/arm_bayes_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/ARM-DSP/arm_bayes_example/.vscode/README.md +++ b/Examples/MAX32690/ARM-DSP/arm_bayes_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/ARM-DSP/arm_bayes_example/.vscode/settings.json b/Examples/MAX32690/ARM-DSP/arm_bayes_example/.vscode/settings.json index 71c1cea53df..75348022103 100755 --- a/Examples/MAX32690/ARM-DSP/arm_bayes_example/.vscode/settings.json +++ b/Examples/MAX32690/ARM-DSP/arm_bayes_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/ARM-DSP/arm_bayes_example/Makefile b/Examples/MAX32690/ARM-DSP/arm_bayes_example/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/ARM-DSP/arm_bayes_example/Makefile +++ b/Examples/MAX32690/ARM-DSP/arm_bayes_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/ARM-DSP/arm_bayes_example/project.mk b/Examples/MAX32690/ARM-DSP/arm_bayes_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32690/ARM-DSP/arm_bayes_example/project.mk +++ b/Examples/MAX32690/ARM-DSP/arm_bayes_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/ARM-DSP/arm_class_marks_example/.vscode/README.md b/Examples/MAX32690/ARM-DSP/arm_class_marks_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/ARM-DSP/arm_class_marks_example/.vscode/README.md +++ b/Examples/MAX32690/ARM-DSP/arm_class_marks_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/ARM-DSP/arm_class_marks_example/.vscode/settings.json b/Examples/MAX32690/ARM-DSP/arm_class_marks_example/.vscode/settings.json index 71c1cea53df..75348022103 100755 --- a/Examples/MAX32690/ARM-DSP/arm_class_marks_example/.vscode/settings.json +++ b/Examples/MAX32690/ARM-DSP/arm_class_marks_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/ARM-DSP/arm_class_marks_example/Makefile b/Examples/MAX32690/ARM-DSP/arm_class_marks_example/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/ARM-DSP/arm_class_marks_example/Makefile +++ b/Examples/MAX32690/ARM-DSP/arm_class_marks_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c b/Examples/MAX32690/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c index 30f548bc888..2ea5e90d59a 100644 --- a/Examples/MAX32690/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c +++ b/Examples/MAX32690/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c @@ -139,7 +139,7 @@ uint32_t student_num; * Main f32 test function. It returns maximum marks secured and student number * ------------------------------------------------------------------------------- */ -int main() +int main(void) { #ifndef USE_STATIC_INIT diff --git a/Examples/MAX32690/ARM-DSP/arm_class_marks_example/project.mk b/Examples/MAX32690/ARM-DSP/arm_class_marks_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32690/ARM-DSP/arm_class_marks_example/project.mk +++ b/Examples/MAX32690/ARM-DSP/arm_class_marks_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/ARM-DSP/arm_convolution_example/.vscode/README.md b/Examples/MAX32690/ARM-DSP/arm_convolution_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/ARM-DSP/arm_convolution_example/.vscode/README.md +++ b/Examples/MAX32690/ARM-DSP/arm_convolution_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/ARM-DSP/arm_convolution_example/.vscode/settings.json b/Examples/MAX32690/ARM-DSP/arm_convolution_example/.vscode/settings.json index 71c1cea53df..75348022103 100755 --- a/Examples/MAX32690/ARM-DSP/arm_convolution_example/.vscode/settings.json +++ b/Examples/MAX32690/ARM-DSP/arm_convolution_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/ARM-DSP/arm_convolution_example/Makefile b/Examples/MAX32690/ARM-DSP/arm_convolution_example/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/ARM-DSP/arm_convolution_example/Makefile +++ b/Examples/MAX32690/ARM-DSP/arm_convolution_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/ARM-DSP/arm_convolution_example/project.mk b/Examples/MAX32690/ARM-DSP/arm_convolution_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32690/ARM-DSP/arm_convolution_example/project.mk +++ b/Examples/MAX32690/ARM-DSP/arm_convolution_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md b/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md +++ b/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json b/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json index 71c1cea53df..75348022103 100755 --- a/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json +++ b/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/Makefile b/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/Makefile +++ b/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/project.mk b/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/project.mk +++ b/Examples/MAX32690/ARM-DSP/arm_dotproduct_example_f32/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/.vscode/README.md b/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/.vscode/README.md +++ b/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/.vscode/settings.json b/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/.vscode/settings.json index 71c1cea53df..75348022103 100755 --- a/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/.vscode/settings.json +++ b/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/Makefile b/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/Makefile +++ b/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/project.mk b/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/project.mk +++ b/Examples/MAX32690/ARM-DSP/arm_fft_bin_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/ARM-DSP/arm_fir_example/.vscode/README.md b/Examples/MAX32690/ARM-DSP/arm_fir_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/ARM-DSP/arm_fir_example/.vscode/README.md +++ b/Examples/MAX32690/ARM-DSP/arm_fir_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/ARM-DSP/arm_fir_example/.vscode/settings.json b/Examples/MAX32690/ARM-DSP/arm_fir_example/.vscode/settings.json index 71c1cea53df..75348022103 100755 --- a/Examples/MAX32690/ARM-DSP/arm_fir_example/.vscode/settings.json +++ b/Examples/MAX32690/ARM-DSP/arm_fir_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/ARM-DSP/arm_fir_example/Makefile b/Examples/MAX32690/ARM-DSP/arm_fir_example/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/ARM-DSP/arm_fir_example/Makefile +++ b/Examples/MAX32690/ARM-DSP/arm_fir_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/ARM-DSP/arm_fir_example/project.mk b/Examples/MAX32690/ARM-DSP/arm_fir_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32690/ARM-DSP/arm_fir_example/project.mk +++ b/Examples/MAX32690/ARM-DSP/arm_fir_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md b/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md +++ b/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json b/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json index 71c1cea53df..75348022103 100755 --- a/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json +++ b/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/Makefile b/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/Makefile +++ b/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/project.mk b/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/project.mk +++ b/Examples/MAX32690/ARM-DSP/arm_graphic_equalizer_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/.vscode/README.md b/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/.vscode/README.md +++ b/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/.vscode/settings.json b/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/.vscode/settings.json index 71c1cea53df..75348022103 100755 --- a/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/.vscode/settings.json +++ b/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/Makefile b/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/Makefile +++ b/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/project.mk b/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/project.mk +++ b/Examples/MAX32690/ARM-DSP/arm_linear_interp_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/ARM-DSP/arm_matrix_example/.vscode/README.md b/Examples/MAX32690/ARM-DSP/arm_matrix_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/ARM-DSP/arm_matrix_example/.vscode/README.md +++ b/Examples/MAX32690/ARM-DSP/arm_matrix_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/ARM-DSP/arm_matrix_example/.vscode/settings.json b/Examples/MAX32690/ARM-DSP/arm_matrix_example/.vscode/settings.json index 71c1cea53df..75348022103 100755 --- a/Examples/MAX32690/ARM-DSP/arm_matrix_example/.vscode/settings.json +++ b/Examples/MAX32690/ARM-DSP/arm_matrix_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/ARM-DSP/arm_matrix_example/Makefile b/Examples/MAX32690/ARM-DSP/arm_matrix_example/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/ARM-DSP/arm_matrix_example/Makefile +++ b/Examples/MAX32690/ARM-DSP/arm_matrix_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/ARM-DSP/arm_matrix_example/project.mk b/Examples/MAX32690/ARM-DSP/arm_matrix_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32690/ARM-DSP/arm_matrix_example/project.mk +++ b/Examples/MAX32690/ARM-DSP/arm_matrix_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/.vscode/README.md b/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/.vscode/README.md +++ b/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/.vscode/settings.json b/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/.vscode/settings.json index 71c1cea53df..75348022103 100755 --- a/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/.vscode/settings.json +++ b/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/Makefile b/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/Makefile +++ b/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/project.mk b/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/project.mk +++ b/Examples/MAX32690/ARM-DSP/arm_signal_converge_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/.vscode/README.md b/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/.vscode/README.md +++ b/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/.vscode/settings.json b/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/.vscode/settings.json index 71c1cea53df..75348022103 100755 --- a/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/.vscode/settings.json +++ b/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/Makefile b/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/Makefile +++ b/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/project.mk b/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/project.mk +++ b/Examples/MAX32690/ARM-DSP/arm_sin_cos_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/ARM-DSP/arm_svm_example/.vscode/README.md b/Examples/MAX32690/ARM-DSP/arm_svm_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/ARM-DSP/arm_svm_example/.vscode/README.md +++ b/Examples/MAX32690/ARM-DSP/arm_svm_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/ARM-DSP/arm_svm_example/.vscode/settings.json b/Examples/MAX32690/ARM-DSP/arm_svm_example/.vscode/settings.json index 71c1cea53df..75348022103 100755 --- a/Examples/MAX32690/ARM-DSP/arm_svm_example/.vscode/settings.json +++ b/Examples/MAX32690/ARM-DSP/arm_svm_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/ARM-DSP/arm_svm_example/Makefile b/Examples/MAX32690/ARM-DSP/arm_svm_example/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/ARM-DSP/arm_svm_example/Makefile +++ b/Examples/MAX32690/ARM-DSP/arm_svm_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/ARM-DSP/arm_svm_example/project.mk b/Examples/MAX32690/ARM-DSP/arm_svm_example/project.mk index 2babb607849..49750fd6a18 100644 --- a/Examples/MAX32690/ARM-DSP/arm_svm_example/project.mk +++ b/Examples/MAX32690/ARM-DSP/arm_svm_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/ARM-DSP/arm_variance_example/.vscode/README.md b/Examples/MAX32690/ARM-DSP/arm_variance_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/ARM-DSP/arm_variance_example/.vscode/README.md +++ b/Examples/MAX32690/ARM-DSP/arm_variance_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/ARM-DSP/arm_variance_example/.vscode/settings.json b/Examples/MAX32690/ARM-DSP/arm_variance_example/.vscode/settings.json index 71c1cea53df..75348022103 100755 --- a/Examples/MAX32690/ARM-DSP/arm_variance_example/.vscode/settings.json +++ b/Examples/MAX32690/ARM-DSP/arm_variance_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/ARM-DSP/arm_variance_example/Makefile b/Examples/MAX32690/ARM-DSP/arm_variance_example/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/ARM-DSP/arm_variance_example/Makefile +++ b/Examples/MAX32690/ARM-DSP/arm_variance_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/ARM-DSP/arm_variance_example/project.mk b/Examples/MAX32690/ARM-DSP/arm_variance_example/project.mk index 4104aa327d2..9e1788cca93 100644 --- a/Examples/MAX32690/ARM-DSP/arm_variance_example/project.mk +++ b/Examples/MAX32690/ARM-DSP/arm_variance_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Bluetooth/BLE4_ctr/.vscode/README.md b/Examples/MAX32690/Bluetooth/BLE4_ctr/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Bluetooth/BLE4_ctr/.vscode/README.md +++ b/Examples/MAX32690/Bluetooth/BLE4_ctr/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Bluetooth/BLE4_ctr/.vscode/settings.json b/Examples/MAX32690/Bluetooth/BLE4_ctr/.vscode/settings.json index fc28e292388..c21b9c37ea4 100755 --- a/Examples/MAX32690/Bluetooth/BLE4_ctr/.vscode/settings.json +++ b/Examples/MAX32690/Bluetooth/BLE4_ctr/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Bluetooth/BLE4_ctr/Makefile b/Examples/MAX32690/Bluetooth/BLE4_ctr/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/Bluetooth/BLE4_ctr/Makefile +++ b/Examples/MAX32690/Bluetooth/BLE4_ctr/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Bluetooth/BLE4_ctr/README.md b/Examples/MAX32690/Bluetooth/BLE4_ctr/README.md index 2e180560c4e..4397808cdcf 100644 --- a/Examples/MAX32690/Bluetooth/BLE4_ctr/README.md +++ b/Examples/MAX32690/Bluetooth/BLE4_ctr/README.md @@ -2,7 +2,7 @@ Bluetooth version 4.2 controller, accepts HCI commands via Serial Port. -Refer to the [BLE4_ctr](../../../Libraries/Cordio/docs/Applications/BLE4_ctr.md) documentation in the Cordio Library. +Refer to the [BLE4_ctr](../../../../Libraries/Cordio/docs/Applications/BLE4_ctr.md) documentation in the Cordio Library. ## Software @@ -18,7 +18,7 @@ If using the MAX32690EVKIT: - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - Use an external USB-to-UART adapter to access HCI UART. Connect a USB cable between the PC or BLE Tester and USB side of the adapter. Connect UART side of the adapter to board TX,RX and GND header pins. -- Optionally you can reconfigure the UART definitions in board.h to use the on-board USB to UART +- Optionally you can reconfigure the UART definitions in board.h to use the on-board USB to UART adapter for the HCI UART. If using the MAX32690FTHR: @@ -26,24 +26,32 @@ If using the MAX32690FTHR: - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - Use an external USB-to-UART adapter to access HCI UART. Connect a USB cable between the PC or BLE Tester and USB side of the adapter. Connect UART side of the adapter to board TX,RX and GND header pins. -- Optionally you can reconfigure the UART definitions in board.h to use the on-board USB to UART +- Optionally you can reconfigure the UART definitions in board.h to use the on-board USB to UART adapter for the HCI UART. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. +- Use an external USB-to-UART adapter to access HCI UART. Connect a USB cable between the PC or BLE Tester + and USB side of the adapter. Connect UART side of the adapter to board TX,RX and GND header pins. P3 Pin 1 and 2. + + ### Project-Specific Build Notes * Setting `TRACE=1` in [**project.mk**](project.mk) initializes the on-board USB-to-UART adapter for viewing the trace messages and interacting with the application. Port uses settings: - - Baud : 115200 - - Char size : 8 - - Parity : None - - Stop bits : 1 - - HW Flow Control : No - - SW Flow Control : No + - Baud : 115200 + - Char size : 8 + - Parity : None + - Stop bits : 1 + - HW Flow Control : No + - SW Flow Control : No * Setting `SBT=1` in [**project.mk**](project.mk) enables Secure Boot Tools for the project * The HCI serial port is used for HCI communication with BLE controller. Require external USB-to-UART adapter configured to the following settings: - - Baud : 115200 - - Char size : 8 - - Parity : None + - Baud : 115200 + - Char size : 8 + - Parity : None - Stop bits : 1 - HW Flow Control : No - SW Flow Control : No diff --git a/Examples/MAX32690/Bluetooth/BLE4_ctr/main.c b/Examples/MAX32690/Bluetooth/BLE4_ctr/main.c index cdcd9b61eeb..d477d982d98 100644 --- a/Examples/MAX32690/Bluetooth/BLE4_ctr/main.c +++ b/Examples/MAX32690/Bluetooth/BLE4_ctr/main.c @@ -33,6 +33,8 @@ #include "wsf_timer.h" #include "wsf_trace.h" #include "wsf_bufio.h" +#include "wsf_types.h" +#include "wsf_os.h" #include "bb_ble_sniffer_api.h" #include "pal_bb.h" #include "pal_cfg.h" @@ -130,7 +132,7 @@ static void mainWsfInit(void) * \return TRUE if there is token pending. */ /*************************************************************************************************/ -static bool_t mainCheckServiceTokens(void) +static bool mainCheckServiceTokens(void) { bool_t eventPending = FALSE; diff --git a/Examples/MAX32690/Bluetooth/BLE4_ctr/project.mk b/Examples/MAX32690/Bluetooth/BLE4_ctr/project.mk index c5dd1e5a5e1..fd92355104b 100644 --- a/Examples/MAX32690/Bluetooth/BLE4_ctr/project.mk +++ b/Examples/MAX32690/Bluetooth/BLE4_ctr/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Bluetooth/BLE5_ctr/.vscode/README.md b/Examples/MAX32690/Bluetooth/BLE5_ctr/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Bluetooth/BLE5_ctr/.vscode/README.md +++ b/Examples/MAX32690/Bluetooth/BLE5_ctr/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Bluetooth/BLE5_ctr/.vscode/settings.json b/Examples/MAX32690/Bluetooth/BLE5_ctr/.vscode/settings.json index fc28e292388..c21b9c37ea4 100755 --- a/Examples/MAX32690/Bluetooth/BLE5_ctr/.vscode/settings.json +++ b/Examples/MAX32690/Bluetooth/BLE5_ctr/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Bluetooth/BLE5_ctr/Makefile b/Examples/MAX32690/Bluetooth/BLE5_ctr/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/Bluetooth/BLE5_ctr/Makefile +++ b/Examples/MAX32690/Bluetooth/BLE5_ctr/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Bluetooth/BLE5_ctr/README.md b/Examples/MAX32690/Bluetooth/BLE5_ctr/README.md index 115e9740b10..a27ed5565e2 100644 --- a/Examples/MAX32690/Bluetooth/BLE5_ctr/README.md +++ b/Examples/MAX32690/Bluetooth/BLE5_ctr/README.md @@ -2,7 +2,7 @@ Bluetooth version 5.2 controller, accepts HCI commands via Serial Port. -Refer to the [BLE5_ctr](../../../Libraries/Cordio/docs/Applications/BLE5_ctr.md) documentation in the Cordio Library. +Refer to the [BLE5_ctr](../../../../Libraries/Cordio/docs/Applications/BLE5_ctr.md) documentation in the Cordio Library. ## Software @@ -15,10 +15,9 @@ Universal instructions on building, flashing, and debugging this project can be If using the MAX32690EVKIT: - Connect a USB cable between the PC and the CN2 (USB/PWR) connector. - Install headers JP7(RX\_EN) and JP8(TX\_EN). -- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. -- Use an external USB-to-UART adapter to access HCI UART. Connect a USB cable between the PC or BLE Tester - and USB side of the adapter. Connect UART side of the adapter to board TX,RX and GND header pins. -- Optionally you can reconfigure the UART definitions in board.h to use the on-board USB to UART +- Open a terminal app on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- If using the EvKit, the HCI UART is configured as LPUART and is accessible via the CMSIS-DAP. No external serial converter is needed. +- Optionally you can reconfigure the UART definitions in board.h to use the on-board USB to UART adapter for the HCI UART. If using the MAX32690FTHR: @@ -26,24 +25,31 @@ If using the MAX32690FTHR: - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - Use an external USB-to-UART adapter to access HCI UART. Connect a USB cable between the PC or BLE Tester and USB side of the adapter. Connect UART side of the adapter to board TX,RX and GND header pins. -- Optionally you can reconfigure the UART definitions in board.h to use the on-board USB to UART +- Optionally you can reconfigure the UART definitions in board.h to use the on-board USB to UART adapter for the HCI UART. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. +- Use an external USB-to-UART adapter to access HCI UART. Connect a USB cable between the PC or BLE Tester + and USB side of the adapter. Connect UART side of the adapter to board TX,RX and GND header pins. P3 Pin 1 and 2. + ### Project-Specific Build Notes * Setting `TRACE=1` in [**project.mk**](project.mk) initializes the on-board USB-to-UART adapter for viewing the trace messages and interacting with the application. Port uses settings: - - Baud : 115200 - - Char size : 8 - - Parity : None - - Stop bits : 1 - - HW Flow Control : No - - SW Flow Control : No + - Baud : 115200 + - Char size : 8 + - Parity : None + - Stop bits : 1 + - HW Flow Control : No + - SW Flow Control : No * Setting `SBT=1` in [**project.mk**](project.mk) enables Secure Boot Tools for the project * The HCI serial port is used for HCI communication with BLE controller. Require external USB-to-UART adapter configured to the following settings: - - Baud : 115200 - - Char size : 8 - - Parity : None + - Baud : 115200 + - Char size : 8 + - Parity : None - Stop bits : 1 - HW Flow Control : No - SW Flow Control : No diff --git a/Examples/MAX32690/Bluetooth/BLE5_ctr/main.c b/Examples/MAX32690/Bluetooth/BLE5_ctr/main.c index 7bb51c18a2b..f4b076f5f24 100644 --- a/Examples/MAX32690/Bluetooth/BLE5_ctr/main.c +++ b/Examples/MAX32690/Bluetooth/BLE5_ctr/main.c @@ -33,6 +33,8 @@ #include "wsf_timer.h" #include "wsf_trace.h" #include "wsf_bufio.h" +#include "wsf_types.h" +#include "wsf_os.h" #include "wsf_cs.h" #include "bb_ble_sniffer_api.h" #include "pal_bb.h" @@ -162,7 +164,7 @@ static void mainWsfInit(void) * \return TRUE if there is token pending. */ /*************************************************************************************************/ -static bool_t mainCheckServiceTokens(void) +static bool mainCheckServiceTokens(void) { bool_t eventPending = FALSE; diff --git a/Examples/MAX32690/Bluetooth/BLE5_ctr/project.mk b/Examples/MAX32690/Bluetooth/BLE5_ctr/project.mk index 6dde0241e19..96b16f43101 100644 --- a/Examples/MAX32690/Bluetooth/BLE5_ctr/project.mk +++ b/Examples/MAX32690/Bluetooth/BLE5_ctr/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -14,6 +31,7 @@ SBT=0 # Enable Cordio library LIB_CORDIO = 1 +#CHIP_REVISION = a # Cordio library options BLE_HOST = 0 diff --git a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/.vscode/README.md b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/.vscode/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/.vscode/settings.json b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/.vscode/settings.json index 852694149fb..194a6955fbc 100755 --- a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/.vscode/settings.json +++ b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/FreeRTOSConfig.h b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/FreeRTOSConfig.h index 99a4e019cfa..c3d45d13d09 100644 --- a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/FreeRTOSConfig.h +++ b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/Makefile b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/Makefile +++ b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/README.md b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/README.md index 2a82aadb8b6..f6c0d96850c 100644 --- a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/README.md @@ -1,7 +1,7 @@ # BLE_FreeRTOS A basic getting started application for BLE and FreeRTOS. -Refer to the [BLE_FreeRTOS](../../../Libraries/Cordio/docs/Applications/BLE_FreeRTOS.md) documentation in the Cordio Library. +Refer to the [BLE_FreeRTOS](../../../../Libraries/Cordio/docs/Applications/BLE_FreeRTOS.md) documentation in the Cordio Library. ## Software @@ -21,14 +21,19 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ### Project-Specific Build Notes * Setting `TRACE=1` in [**project.mk**](project.mk) initializes the on-board USB-to-UART adapter for viewing the trace messages and interacting with the application. Port uses settings: - - Baud : 115200 - - Char size : 8 - - Parity : None - - Stop bits : 1 - - HW Flow Control : No - - SW Flow Control : No + - Baud : 115200 + - Char size : 8 + - Parity : None + - Stop bits : 1 + - HW Flow Control : No + - SW Flow Control : No * Setting `SBT=1` in [**project.mk**](project.mk) enables Secure Boot Tools for the project * Enabling tickless mode in **FreeRTOSConfig.h** allows the device to enter deep sleep/stanby when idle diff --git a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/freertos_tickless.c b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/freertos_tickless.c index 61660ca9389..7f8b864d752 100644 --- a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/freertos_tickless.c +++ b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/freertos_tickless.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -203,11 +202,11 @@ void vPortSuppressTicksAndSleep(TickType_t xExpectedIdleTime) if (schTimerActive) { /* Stop the BLE scheduler timer */ PalTimerStop(); - - /* Shutdown BB hardware */ - PalBbDisable(); } + /* Shutdown BB hardware */ + PalBbDisable(); + LED_Off(SLEEP_LED); LED_Off(DEEPSLEEP_LED); @@ -216,12 +215,11 @@ void vPortSuppressTicksAndSleep(TickType_t xExpectedIdleTime) LED_On(DEEPSLEEP_LED); LED_On(SLEEP_LED); - if (schTimerActive) { - /* Enable and restore the BB hardware */ - PalBbEnable(); - - PalBbRestore(); + /* Enable and restore the BB hardware */ + PalBbEnable(); + PalBbRestore(); + if (schTimerActive) { /* Restore the BB counter */ MXC_WUT_RestoreBBClock(BB_CLK_RATE_HZ); diff --git a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/main.c b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/main.c index d2a4cf3788f..8f69b223dc5 100644 --- a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/main.c +++ b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/project.mk b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/project.mk index 8ae3e4ae286..06a24a89264 100644 --- a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/project.mk +++ b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/stack_dats.c b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/stack_dats.c index 80a5feec02f..9ff548426e2 100644 --- a/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/stack_dats.c +++ b/Examples/MAX32690/Bluetooth/BLE_FreeRTOS/stack_dats.c @@ -187,22 +187,6 @@ static void mainWsfInit(void) #endif } -/*************************************************************************************************/ -/*! -* \fn WUT_IRQHandler -* -* \brief WUY interrupt handler. -* -* \return None. -*/ -/*************************************************************************************************/ -void WUT0_IRQHandler(void) -{ - MXC_WUT_IntClear(); - NVIC_ClearPendingIRQ(WUT0_IRQn); - MXC_WUT_Handler(); -} - /*************************************************************************************************/ /*! * \fn wutTrimCb diff --git a/Examples/MAX32690/Bluetooth/BLE_datc/.vscode/README.md b/Examples/MAX32690/Bluetooth/BLE_datc/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Bluetooth/BLE_datc/.vscode/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_datc/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Bluetooth/BLE_datc/.vscode/settings.json b/Examples/MAX32690/Bluetooth/BLE_datc/.vscode/settings.json index fc28e292388..c21b9c37ea4 100755 --- a/Examples/MAX32690/Bluetooth/BLE_datc/.vscode/settings.json +++ b/Examples/MAX32690/Bluetooth/BLE_datc/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Bluetooth/BLE_datc/Makefile b/Examples/MAX32690/Bluetooth/BLE_datc/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/Bluetooth/BLE_datc/Makefile +++ b/Examples/MAX32690/Bluetooth/BLE_datc/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Bluetooth/BLE_datc/README.md b/Examples/MAX32690/Bluetooth/BLE_datc/README.md index 63b6c4dee07..c15b725a770 100644 --- a/Examples/MAX32690/Bluetooth/BLE_datc/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_datc/README.md @@ -1,6 +1,6 @@ # BLE_datc -Refer to the [BLE_datc_dats](../../../Libraries/Cordio/docs/Applications/BLE_datc_dats.md) documentation in the Cordio Library. +Refer to the [BLE_datc_dats](../../../../Libraries/Cordio/docs/Applications/BLE_datc_dats.md) documentation in the Cordio Library. ## Software @@ -19,18 +19,23 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ### Project-Specific Build Notes * Setting `TRACE=1` in [**project.mk**](project.mk) initializes the on-board USB-to-UART adapter for viewing the trace messages and interacting with the application. Port uses settings: - - Baud : 115200 - - Char size : 8 - - Parity : None - - Stop bits : 1 - - HW Flow Control : No - - SW Flow Control : No + - Baud : 115200 + - Char size : 8 + - Parity : None + - Stop bits : 1 + - HW Flow Control : No + - SW Flow Control : No * Setting `SBT=1` in [**project.mk**](project.mk) enables Secure Boot Tools for the project * Upon server discovery the user will be prompted to enter a passkey. -An arbitrary pin can be entered in the format `pin (connId) passkey` +An arbitrary pin can be entered in the format `pin (connId) passkey` * Example: `pin 1 123456` * The server is expected to enter the same connId and passkey to establish a secure connection and share bonding information diff --git a/Examples/MAX32690/Bluetooth/BLE_datc/datc_main.c b/Examples/MAX32690/Bluetooth/BLE_datc/datc_main.c index 2432020f45c..9702c94baeb 100644 --- a/Examples/MAX32690/Bluetooth/BLE_datc/datc_main.c +++ b/Examples/MAX32690/Bluetooth/BLE_datc/datc_main.c @@ -148,7 +148,7 @@ static const appSecCfg_t datcSecCfg = { DM_KEY_DIST_IRK, /*! Initiator key distribution flags */ DM_KEY_DIST_LTK | DM_KEY_DIST_IRK, /*! Responder key distribution flags */ FALSE, /*! TRUE if Out-of-band pairing data is present */ - TRUE /*! TRUE to initiate security upon connection */ + INIT_SECURITY /*! TRUE to initiate security upon connection */ }; /* OOB UART parameters */ @@ -570,9 +570,9 @@ static void datcScanReport(dmEvt_t *pMsg) if (!connect && ((pData = DmFindAdType(DM_ADV_TYPE_LOCAL_NAME, pMsg->scanReport.len, pMsg->scanReport.pData)) != NULL)) { /* check length and device name */ - if (pData[DM_AD_LEN_IDX] >= 4 && (pData[DM_AD_DATA_IDX] == 'D') && - (pData[DM_AD_DATA_IDX + 1] == 'A') && (pData[DM_AD_DATA_IDX + 2] == 'T') && - (pData[DM_AD_DATA_IDX + 3] == 'S')) { + char advName[] = ADV_NAME; + if (pData[DM_AD_LEN_IDX] == sizeof(advName) && + !strncmp(advName, (char *)&(pData[DM_AD_DATA_IDX]), sizeof(advName))) { connect = TRUE; } } @@ -1251,7 +1251,19 @@ void DatcHandlerInit(wsfHandlerId_t handlerId) datcCb.scanTimer.handlerId = handlerId; datcCb.scanTimer.msg.event = SCAN_START_EVT; } - +/*************************************************************************************************/ +/*! + * \brief Check to see if btn timer is enabled. + * + * \param[in] tmr btn timer. + * + * \return TRUE if enabled, FALSE otherwise. + */ +/*************************************************************************************************/ +static bool_t btnTmrIsEnabled(mxc_tmr_regs_t *tmr) +{ + return (bool_t)(BTN_1_TMR->ctrl0 & (MXC_F_TMR_CTRL0_EN_A | MXC_F_TMR_CTRL0_EN_B)); +} /*************************************************************************************************/ /*! * \brief Platform button press handler. @@ -1265,6 +1277,11 @@ void DatcHandlerInit(wsfHandlerId_t handlerId) static void btnPressHandler(uint8_t btnId, PalBtnPos_t state) { if (btnId == 1) { + if (!btnTmrIsEnabled(BTN_1_TMR)) { + APP_TRACE_INFO0("Software timer is not enabled!"); + return; + } + /* Start/stop button timer */ if (state == PAL_BTN_POS_UP) { /* Button Up, stop the timer, call the action function */ @@ -1283,6 +1300,11 @@ static void btnPressHandler(uint8_t btnId, PalBtnPos_t state) MXC_TMR_SW_Start(BTN_1_TMR); } } else if (btnId == 2) { + if (!btnTmrIsEnabled(BTN_2_TMR)) { + APP_TRACE_INFO0("Software timer is not enabled!"); + return; + } + /* Start/stop button timer */ if (state == PAL_BTN_POS_UP) { /* Button Up, stop the timer, call the action function */ @@ -1351,7 +1373,7 @@ void DatcHandler(wsfEventMask_t event, wsfMsgHdr_t *pMsg) * \return None. */ /*************************************************************************************************/ -static void datcInitSvcHdlList() +static void datcInitSvcHdlList(void) { uint8_t i; diff --git a/Examples/MAX32690/Bluetooth/BLE_datc/main.c b/Examples/MAX32690/Bluetooth/BLE_datc/main.c index 66f40bd1507..060c2a2a01e 100644 --- a/Examples/MAX32690/Bluetooth/BLE_datc/main.c +++ b/Examples/MAX32690/Bluetooth/BLE_datc/main.c @@ -128,20 +128,6 @@ static void mainWsfInit(void) #endif } -/*************************************************************************************************/ -/*! -* \fn WUT_IRQHandler -* -* \brief WUY interrupt handler. -* -* \return None. -*/ -/*************************************************************************************************/ -void WUT0_IRQHandler(void) -{ - MXC_WUT_Handler(); -} - /*************************************************************************************************/ /*! * \fn wutTrimCb diff --git a/Examples/MAX32690/Bluetooth/BLE_datc/project.mk b/Examples/MAX32690/Bluetooth/BLE_datc/project.mk index f22549e03a8..46083c93449 100644 --- a/Examples/MAX32690/Bluetooth/BLE_datc/project.mk +++ b/Examples/MAX32690/Bluetooth/BLE_datc/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -24,3 +41,14 @@ INIT_CENTRAL = 1 # Set to 1 to enable serial port trace messages # Set to 2 to enable verbose messages TRACE = 1 + +# set ADVTISEMENT name you want to connect +ADV_NAME?=DATS +PROJ_CFLAGS += -DADV_NAME=\"$(ADV_NAME)\" + +### CONFIGURE security +# /*! TRUE to initiate security upon connection*/ +PROJ_CFLAGS += -DINIT_SECURITY=TRUE + + + diff --git a/Examples/MAX32690/Bluetooth/BLE_datc/sdsc_api.h b/Examples/MAX32690/Bluetooth/BLE_datc/sdsc_api.h index 85d5862f53b..76b053b0d0c 100644 --- a/Examples/MAX32690/Bluetooth/BLE_datc/sdsc_api.h +++ b/Examples/MAX32690/Bluetooth/BLE_datc/sdsc_api.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Bluetooth/BLE_datc/sdsc_main.c b/Examples/MAX32690/Bluetooth/BLE_datc/sdsc_main.c index 3995fd80ecb..f91ae944de8 100644 --- a/Examples/MAX32690/Bluetooth/BLE_datc/sdsc_main.c +++ b/Examples/MAX32690/Bluetooth/BLE_datc/sdsc_main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Bluetooth/BLE_dats/.vscode/README.md b/Examples/MAX32690/Bluetooth/BLE_dats/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Bluetooth/BLE_dats/.vscode/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_dats/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Bluetooth/BLE_dats/.vscode/settings.json b/Examples/MAX32690/Bluetooth/BLE_dats/.vscode/settings.json index fc28e292388..c21b9c37ea4 100755 --- a/Examples/MAX32690/Bluetooth/BLE_dats/.vscode/settings.json +++ b/Examples/MAX32690/Bluetooth/BLE_dats/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Bluetooth/BLE_dats/Makefile b/Examples/MAX32690/Bluetooth/BLE_dats/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/Bluetooth/BLE_dats/Makefile +++ b/Examples/MAX32690/Bluetooth/BLE_dats/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Bluetooth/BLE_dats/README.md b/Examples/MAX32690/Bluetooth/BLE_dats/README.md index a1bf9635a0c..76037961dc7 100644 --- a/Examples/MAX32690/Bluetooth/BLE_dats/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_dats/README.md @@ -1,6 +1,6 @@ # BLE_dats -Refer to the [BLE_datc_dats](../../../Libraries/Cordio/docs/Applications/BLE_datc_dats.md) documentation in the Cordio Library. +Refer to the [BLE_datc_dats](../../../../Libraries/Cordio/docs/Applications/BLE_datc_dats.md) documentation in the Cordio Library. ## Software @@ -19,13 +19,18 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-ARPARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ### Project-Specific Build Notes * Setting `TRACE=1` in [**project.mk**](project.mk) initializes the on-board USB-to-UART adapter for viewing the trace messages and interacting with the application. Port uses settings: - - Baud : 115200 - - Char size : 8 - - Parity : None - - Stop bits : 1 - - HW Flow Control : No - - SW Flow Control : No + - Baud : 115200 + - Char size : 8 + - Parity : None + - Stop bits : 1 + - HW Flow Control : No + - SW Flow Control : No * Setting `SBT=1` in [**project.mk**](project.mk) enables Secure Boot Tools for the project diff --git a/Examples/MAX32690/Bluetooth/BLE_dats/dats_main.c b/Examples/MAX32690/Bluetooth/BLE_dats/dats_main.c index dd076d2cf50..385b79dc7ae 100644 --- a/Examples/MAX32690/Bluetooth/BLE_dats/dats_main.c +++ b/Examples/MAX32690/Bluetooth/BLE_dats/dats_main.c @@ -116,12 +116,13 @@ static const appSlaveCfg_t datsSlaveCfg = { * -DM_KEY_DIST_IRK : Distribute IRK used for privacy * -DM_KEY_DIST_CSRK : Distribute CSRK used for signed data */ + static const appSecCfg_t datsSecCfg = { DM_AUTH_BOND_FLAG | DM_AUTH_SC_FLAG | DM_AUTH_MITM_FLAG, /*! Authentication and bonding flags */ DM_KEY_DIST_IRK, /*! Initiator key distribution flags */ DM_KEY_DIST_LTK | DM_KEY_DIST_IRK, /*! Responder key distribution flags */ FALSE, /*! TRUE if Out-of-band pairing data is present */ - TRUE /*! TRUE to initiate security upon connection */ + INIT_SECURITY /*! TRUE to initiate security upon connection */ }; /* OOB UART parameters */ @@ -214,15 +215,8 @@ static const uint8_t datsAdvDataDisc[] = { }; /*! scan data, discoverable mode */ -static const uint8_t datsScanDataDisc[] = { - /*! device name */ - 5, /*! length */ - DM_ADV_TYPE_LOCAL_NAME, /*! AD type */ - 'D', - 'A', - 'T', - 'S' -}; +static const uint8_t deviceName[] = ADV_NAME; +static uint8_t datsScanDataDisc[sizeof(deviceName) + 2]; /************************************************************************************************** Client Characteristic Configuration Descriptors @@ -538,7 +532,9 @@ static void datsSetup(dmEvt_t *pMsg) { /* Initialize control information */ datsCb.restoringResList = FALSE; - + memcpy(&datsScanDataDisc[2], deviceName, sizeof(deviceName)); + datsScanDataDisc[0] = sizeof(deviceName); + datsScanDataDisc[1] = DM_ADV_TYPE_LOCAL_NAME; /* set advertising and scan response data for discoverable mode */ AppAdvSetData(APP_ADV_DATA_DISCOVERABLE, sizeof(datsAdvDataDisc), (uint8_t *)datsAdvDataDisc); AppAdvSetData(APP_SCAN_DATA_DISCOVERABLE, sizeof(datsScanDataDisc), @@ -760,7 +756,7 @@ void DatsHandlerInit(wsfHandlerId_t handlerId) AppGetBdAddr(addr); APP_TRACE_INFO6("MAC Addr: %02x:%02x:%02x:%02x:%02x:%02x", addr[5], addr[4], addr[3], addr[2], addr[1], addr[0]); - APP_TRACE_INFO1("Adv local name: %s", &datsScanDataDisc[2]); + APP_TRACE_INFO1("Adv local name: %s", deviceName); /* store handler ID */ datsCb.handlerId = handlerId; @@ -895,7 +891,19 @@ static void datsWsfBufDiagnostics(WsfBufDiag_t *pInfo) pInfo->param.alloc.taskId, pInfo->param.alloc.len); } } - +/*************************************************************************************************/ +/*! + * \brief Check to see if btn timer is enabled. + * + * \param[in] tmr btn timer. + * + * \return TRUE if enabled, FALSE otherwise. + */ +/*************************************************************************************************/ +static bool_t btnTmrIsEnabled(mxc_tmr_regs_t *tmr) +{ + return (bool_t)(BTN_1_TMR->ctrl0 & (MXC_F_TMR_CTRL0_EN_A | MXC_F_TMR_CTRL0_EN_B)); +} /*************************************************************************************************/ /*! * \brief Platform button press handler. @@ -909,6 +917,10 @@ static void datsWsfBufDiagnostics(WsfBufDiag_t *pInfo) static void btnPressHandler(uint8_t btnId, PalBtnPos_t state) { if (btnId == 1) { + if (!btnTmrIsEnabled(BTN_1_TMR)) { + APP_TRACE_INFO0("Software timer is not enabled!"); + return; + } /* Start/stop button timer */ if (state == PAL_BTN_POS_UP) { /* Button Up, stop the timer, call the action function */ @@ -927,6 +939,11 @@ static void btnPressHandler(uint8_t btnId, PalBtnPos_t state) MXC_TMR_SW_Start(BTN_1_TMR); } } else if (btnId == 2) { + if (!btnTmrIsEnabled(BTN_2_TMR)) { + APP_TRACE_INFO0("Software timer is not enabled!"); + return; + } + /* Start/stop button timer */ if (state == PAL_BTN_POS_UP) { /* Button Up, stop the timer, call the action function */ diff --git a/Examples/MAX32690/Bluetooth/BLE_dats/main.c b/Examples/MAX32690/Bluetooth/BLE_dats/main.c index 68fa3280960..f9d854e8c15 100644 --- a/Examples/MAX32690/Bluetooth/BLE_dats/main.c +++ b/Examples/MAX32690/Bluetooth/BLE_dats/main.c @@ -128,20 +128,6 @@ static void mainWsfInit(void) #endif } -/*************************************************************************************************/ -/*! -* \fn WUT_IRQHandler -* -* \brief WUY interrupt handler. -* -* \return None. -*/ -/*************************************************************************************************/ -void WUT0_IRQHandler(void) -{ - MXC_WUT_Handler(); -} - /*************************************************************************************************/ /*! * \fn wutTrimCb diff --git a/Examples/MAX32690/Bluetooth/BLE_dats/project.mk b/Examples/MAX32690/Bluetooth/BLE_dats/project.mk index fbf455e2956..e368ed3abfa 100644 --- a/Examples/MAX32690/Bluetooth/BLE_dats/project.mk +++ b/Examples/MAX32690/Bluetooth/BLE_dats/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -29,3 +46,16 @@ TRACE = 1 # Add services directory to build IPATH += services VPATH += services + +# SET advertising name +ADV_NAME?=DATS +PROJ_CFLAGS += -DADV_NAME=\"$(ADV_NAME)\" + + +### CONFIGURE security +# /*! TRUE to initiate security upon connection*/ +PROJ_CFLAGS += -DINIT_SECURITY=TRUE + + + + diff --git a/Examples/MAX32690/Bluetooth/BLE_dats/services/svc_sds.c b/Examples/MAX32690/Bluetooth/BLE_dats/services/svc_sds.c index 5d90f9e2d3b..9206e12b4b8 100644 --- a/Examples/MAX32690/Bluetooth/BLE_dats/services/svc_sds.c +++ b/Examples/MAX32690/Bluetooth/BLE_dats/services/svc_sds.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Bluetooth/BLE_dats/services/svc_sds.h b/Examples/MAX32690/Bluetooth/BLE_dats/services/svc_sds.h index 87ae6f2a046..733b2e44616 100644 --- a/Examples/MAX32690/Bluetooth/BLE_dats/services/svc_sds.h +++ b/Examples/MAX32690/Bluetooth/BLE_dats/services/svc_sds.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/.cproject b/Examples/MAX32690/Bluetooth/BLE_fcc/.cproject deleted file mode 100644 index c648cc4106c..00000000000 --- a/Examples/MAX32690/Bluetooth/BLE_fcc/.cproject +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/.project b/Examples/MAX32690/Bluetooth/BLE_fcc/.project deleted file mode 100644 index 2f22644c90e..00000000000 --- a/Examples/MAX32690/Bluetooth/BLE_fcc/.project +++ /dev/null @@ -1,26 +0,0 @@ - - - BLE_fcc - - - - - - org.eclipse.cdt.managedbuilder.core.genmakebuilder - clean,full,incremental, - - - - - org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder - full,incremental, - - - - - - org.eclipse.cdt.core.cnature - org.eclipse.cdt.managedbuilder.core.managedBuildNature - org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - - diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32690/Bluetooth/BLE_fcc/.settings/org.eclipse.cdt.core.prefs deleted file mode 100644 index bf22e374367..00000000000 --- a/Examples/MAX32690/Bluetooth/BLE_fcc/.settings/org.eclipse.cdt.core.prefs +++ /dev/null @@ -1,15 +0,0 @@ -eclipse.preferences.version=1 -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=BLE_fcc -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32690 -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true -environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/.vscode/README.md b/Examples/MAX32690/Bluetooth/BLE_fcc/.vscode/README.md deleted file mode 100755 index 90fbcefc65d..00000000000 --- a/Examples/MAX32690/Bluetooth/BLE_fcc/.vscode/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# VSCode-Maxim - -_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ - -## Quick Links - -* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) - -## Introduction - -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). - -The following features are supported: - -* Code editing with intellisense down to the register level -* Code compilation with the ability to easily re-target a project for different microcontrollers and boards -* Flashing programs -* GUI and command-line debugging - -## Dependencies - -* [Visual Studio Code](https://code.visualstudio.com/) - * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) -* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) - -## Installation - -Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. - -See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. - -## Usage - -See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. - -## Issue Tracker - -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. - -New issues should contain _at minimum_ the following information: - -* Visual Studio Code version #s (see `Help -> About`) -* C/C++ Extension version # -* Target microcontroller and evaluation platform -* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/.vscode/settings.json b/Examples/MAX32690/Bluetooth/BLE_fcc/.vscode/settings.json deleted file mode 100755 index fc28e292388..00000000000 --- a/Examples/MAX32690/Bluetooth/BLE_fcc/.vscode/settings.json +++ /dev/null @@ -1,101 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32690", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32690.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/include", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources/stack/cfg", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-apps/include", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-model/include", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-profile/include", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-profiles/include", - "${config:MAXIM_PATH}/Libraries/Cordio/controller/include/ble", - "${config:MAXIM_PATH}/Libraries/Cordio/controller/include/common", - "${config:MAXIM_PATH}/Libraries/Cordio/platform/include", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources/hci/dual_chip", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources/hci/exactle", - "${config:MAXIM_PATH}/Libraries/Cordio/wsf/include", - "${config:MAXIM_PATH}/Libraries/Cordio/wsf/include/util" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-apps/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-host/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-apps/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-model/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-mesh-profile/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/ble-profiles/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/controller/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/wsf/sources", - "${config:MAXIM_PATH}/Libraries/Cordio/platform/targets/maxim/max32665/sources" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/ARM/Abstract.txt b/Examples/MAX32690/Bluetooth/BLE_fcc/ARM/Abstract.txt deleted file mode 100644 index c320ebf22ea..00000000000 --- a/Examples/MAX32690/Bluetooth/BLE_fcc/ARM/Abstract.txt +++ /dev/null @@ -1 +0,0 @@ -BLE fit example diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/ARM/BLE.sct b/Examples/MAX32690/Bluetooth/BLE_fcc/ARM/BLE.sct deleted file mode 100644 index d2482c178c7..00000000000 --- a/Examples/MAX32690/Bluetooth/BLE_fcc/ARM/BLE.sct +++ /dev/null @@ -1,47 +0,0 @@ -#! armcc -E - - -; ************************************************************* -; *** Scatter-Loading Description File generated by uVision *** -; ************************************************************* - -; /*-Memory Regions-*/ -#define IROM_start__ 0x00000000 -#define IROM_size__ 0x00010000 -#define IFLASH_start__ 0x10000000 -#define IFLASH_size__ 0x00080000 -#define pal_nvm_db_start 0x10080000 -#define PAL_NVM_SIZE 0 -#define IRAM_start__ 0x20000000 -#define IRAM_size__ 0x00020000 - - - -; /*-Sizes */ -;#define size_cstack__ 0x6000 -;#define size_heap__ 0x2000 -; /**** End of ICF editor section. ###ICF###*/ - -#define memory mem with size = 4G; - - -LR_IFLASH IFLASH_start__ IFLASH_size__ { ; load region size_region - - ER_IFLASH IFLASH_start__ IFLASH_size__ { ; load address = execution address - *.o (RESET, +First) - *(InRoot$$Sections) - .ANY (+RO) - .ANY (+XO) - } - - PAL_NVM pal_nvm_db_start PAL_NVM_SIZE { ; RW data - .ANY (+RO) - } - - RW_IRAM1 IRAM_start__ IRAM_size__ { ; RW data - .ANY (+RW +ZI) - } - - - -} \ No newline at end of file diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/BLE_fcc.launch b/Examples/MAX32690/Bluetooth/BLE_fcc/BLE_fcc.launch deleted file mode 100644 index ecec6c86181..00000000000 --- a/Examples/MAX32690/Bluetooth/BLE_fcc/BLE_fcc.launch +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/IAR/BLE_dats.ewd b/Examples/MAX32690/Bluetooth/BLE_fcc/IAR/BLE_dats.ewd deleted file mode 100644 index c025f0103dd..00000000000 --- a/Examples/MAX32690/Bluetooth/BLE_fcc/IAR/BLE_dats.ewd +++ /dev/null @@ -1,3056 +0,0 @@ - - - 3 - - Debug - - ARM - - 1 - - C-SPY - 2 - - 32 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ARMSIM_ID - 2 - - 1 - 1 - 1 - - - - - - - - CADI_ID - 2 - - 0 - 1 - 1 - - - - - - - - - CMSISDAP_ID - 2 - - 4 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - GDBSERVER_ID - 2 - - 0 - 1 - 1 - - - - - - - - - - - IJET_ID - 2 - - 9 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - JLINK_ID - 2 - - 16 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - LMIFTDI_ID - 2 - - 3 - 1 - 1 - - - - - - - - - - - - - NULINK_ID - 2 - - 0 - 1 - 1 - - - - - - - PEMICRO_ID - 2 - - 3 - 1 - 1 - - - - - - - - STLINK_ID - 2 - - 7 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - THIRDPARTY_ID - 2 - - 0 - 1 - 1 - - - - - - - - TIFET_ID - 2 - - 1 - 1 - 1 - - - - - - - - - - - - - - - - - - - XDS100_ID - 2 - - 8 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $TOOLKIT_DIR$\plugins\rtos\CMX\CmxArmPlugin.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\CMX\CmxTinyArmPlugin.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\FreeRtos\FreeRtosArmPlugin.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\Mbed\MbedArmPlugin.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\Mbed\MbedArmPlugin2.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\OpenRTOS\OpenRTOSPlugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\SafeRTOS\SafeRTOSPlugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\SMX\smxAwareIarArm9.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\SMX\smxAwareIarArm9BE.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\ThreadX\ThreadXArmPlugin.ENU.ewplugin - 0 - - - $EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin - 0 - - - $EW_DIR$\common\plugins\TargetAccessServer\TargetAccessServer.ENU.ewplugin - 0 - - - $EW_DIR$\common\plugins\uCProbe\uCProbePlugin.ENU.ewplugin - 0 - - - - - Release - - ARM - - 0 - - C-SPY - 2 - - 32 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ARMSIM_ID - 2 - - 1 - 1 - 0 - - - - - - - - CADI_ID - 2 - - 0 - 1 - 0 - - - - - - - - - CMSISDAP_ID - 2 - - 4 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - GDBSERVER_ID - 2 - - 0 - 1 - 0 - - - - - - - - - - - IJET_ID - 2 - - 9 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - JLINK_ID - 2 - - 16 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - LMIFTDI_ID - 2 - - 3 - 1 - 0 - - - - - - - - - - - - - NULINK_ID - 2 - - 0 - 1 - 0 - - - - - - - PEMICRO_ID - 2 - - 3 - 1 - 0 - - - - - - - - STLINK_ID - 2 - - 7 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - THIRDPARTY_ID - 2 - - 0 - 1 - 0 - - - - - - - - TIFET_ID - 2 - - 1 - 1 - 0 - - - - - - - - - - - - - - - - - - - XDS100_ID - 2 - - 8 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $TOOLKIT_DIR$\plugins\rtos\CMX\CmxArmPlugin.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\CMX\CmxTinyArmPlugin.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\FreeRtos\FreeRtosArmPlugin.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\Mbed\MbedArmPlugin.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\Mbed\MbedArmPlugin2.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\OpenRTOS\OpenRTOSPlugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\SafeRTOS\SafeRTOSPlugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\SMX\smxAwareIarArm9.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\SMX\smxAwareIarArm9BE.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\ThreadX\ThreadXArmPlugin.ENU.ewplugin - 0 - - - $EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin - 0 - - - $EW_DIR$\common\plugins\TargetAccessServer\TargetAccessServer.ENU.ewplugin - 0 - - - $EW_DIR$\common\plugins\uCProbe\uCProbePlugin.ENU.ewplugin - 0 - - - - diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/IAR/BLE_dats.ewp b/Examples/MAX32690/Bluetooth/BLE_fcc/IAR/BLE_dats.ewp deleted file mode 100644 index 742fd29cfcb..00000000000 --- a/Examples/MAX32690/Bluetooth/BLE_fcc/IAR/BLE_dats.ewp +++ /dev/null @@ -1,4399 +0,0 @@ - - - 3 - - Debug - - ARM - - 1 - - General - 3 - - 33 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ICCARM - 2 - - 37 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - AARM - 2 - - 11 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - OBJCOPY - 0 - - 1 - 1 - 1 - - - - - - - - - CUSTOM - 3 - - - - 1 - inputOutputBased - - - - BUILDACTION - 1 - - - - - - - ILINK - 0 - - 25 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IARCHIVE - 0 - - 0 - 1 - 1 - - - - - - - - Release - - ARM - - 0 - - General - 3 - - 33 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ICCARM - 2 - - 37 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - AARM - 2 - - 11 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - OBJCOPY - 0 - - 1 - 1 - 0 - - - - - - - - - CUSTOM - 3 - - - - 0 - inputOutputBased - - - - BUILDACTION - 1 - - - - - - - ILINK - 0 - - 25 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IARCHIVE - 0 - - 0 - 1 - 0 - - - - - - - - $PROJ_DIR$\..\fit_main.c - - - $PROJ_DIR$\..\main.c - - - $PROJ_DIR$\..\stack_fit.c - - - CMSIS-Pack - CMSISPack.Component - - Maxim Maxim API _Device.I2C_1.0.0 - CMSISPack.Component - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/I2C/i2c_me18.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/I2C/i2c_reva.c - - - - Maxim Maxim API _Device.RTC_1.0.0 - CMSISPack.Component - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/RTC/rtc_me18.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/RTC/rtc_reva.c - - - - $PROJ_DIR$\RTE\RTE_Components.h - - - Maxim Maxim API _Device.CTB_1.0.0 - CMSISPack.Component - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/CTB/ctb_common.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/CTB/ctb_me18.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/CTB/ctb_reva.c - - - - Maxim Maxim API _Device.ICC_1.0.0 - CMSISPack.Component - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/ICC/icc_me18.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/ICC/icc_reva.c - - - - Maxim Maxim API _Device.Low Power_1.0.0 - CMSISPack.Component - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/LP/lp_me18.c - - - - Maxim Maxim API _Device.TRNG_1.0.0 - CMSISPack.Component - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/TRNG/trng_me18.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/TRNG/trng_revb.c - - - - Maxim Maxim API _Device.WUT_1.0.0 - CMSISPack.Component - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/WUT/wut_me18.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/WUT/wut_reva.c - - - - Maxim Maxim BTLE _Bluetooth.Bluetooth LE_1.0.0 - CMSISPack.Component - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/anpc/anpc_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/common/app_db.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/app_disc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/common/app_hw.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/app_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/app_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/app_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/app_master_leg.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/app_server.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/app_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/app_slave_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/app_slave_leg.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/app_terminal.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/common/app_ui.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/atpc/atpc_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/atps/atps_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/att_eatt.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/att_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/att_uuid.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/attc_disc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/attc_eatt.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/attc_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/attc_proc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/attc_read.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/attc_sign.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/attc_write.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/atts_ccc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/atts_csf.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/atts_dyn.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/atts_eatt.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/atts_ind.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/atts_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/atts_proc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/atts_read.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/atts_sign.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/att/atts_write.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/bas/bas_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_adv_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_adv_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_adv_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_adv_slave_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_bis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_bis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_cis.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_cis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_cis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_conn.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_conn_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_conn_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_dtm.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_pdufilt.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_periodiclist.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_reslist.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_sniffer.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/bb/bb_ble_whitelist.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/common/bb/bb_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/util/bda.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/blpc/blpc_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/blps/blps_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/util/bstream.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/util/calc128.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/cfg/cfg_stack.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/common/chci/chci_tr.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/cpp/cpps_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/util/crc32.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/cscp/cscps_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/dis/dis_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_adv.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_adv_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_adv_leg.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_bis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_bis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_cis.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_cis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_cis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_cis_sm.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_conn.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_cte.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_master_leg.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_slave_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_slave_leg.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_sm.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_dev.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_dev_priv.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_past.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_phy.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_priv.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_scan.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_scan_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_scan_leg.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_sec.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_sec_lesc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_sec_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_sec_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/dm/dm_sync_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/util/fcs.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/fmpl/fmpl_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/gap/gap_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/gatt/gatt_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/glpc/glpc_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/glps/glps_db.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/glps/glps_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/sensor/gyro_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_bis.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_cis.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_cte.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_enc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_past.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_phy.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/common/hci_core.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/exactle/hci_core_ps.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/exactle/hci_evt.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/hci/hci_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/common/hci_tr.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/exactle/hci_vs.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/hci/exactle/hci_vs_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/hid/hid_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-apps/sources/hidapp/hidapp_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/hrpc/hrpc_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/hrps/hrps_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/htpc/htpc_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/htps/htps_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/init/init.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/init/init_ctr.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/l2c/l2c_coc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/l2c/l2c_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/l2c/l2c_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/l2c/l2c_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_adv_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_adv_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_adv_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_adv_slave_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_bis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_bis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_cis.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_cis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_cis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_conn.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_conn_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_conn_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_conn_past.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_enc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_enc_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_init_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_init_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_pc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_act_phy.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_adv_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_adv_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_adv_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_adv_slave_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_bis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_bis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_cis.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_cis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_cis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_conn.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_conn_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_conn_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_init_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_init_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_adv_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_adv_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_adv_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_adv_slave_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_bis.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_bis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_bis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_cis.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_cis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_cis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_conn.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_conn_cs2.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_conn_data.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_conn_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_conn_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_enc_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_enc_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_init_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_init_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_iso.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_iso_data.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_master_phy.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_past.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_pc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_priv.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_sc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_main_slave_phy.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_pdu_adv_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_pdu_adv_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_pdu_adv_slave_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_pdu_bis.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_pdu_conn.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_pdu_enc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_pdu_iso.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_adv_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_adv_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_adv_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_adv_slave_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_bis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_bis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_cis.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_conn_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_conn_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_init_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_init_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_cis.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_cis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_cis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_conn.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_conn_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_conn_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_enc_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_enc_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_master_phy.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_pc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_slave_phy.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_adv_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_adv_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_adv_priv.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_adv_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_adv_slave_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_bis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_bis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_cis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_cis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_conn.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_conn_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_conn_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_conn_priv.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_enc_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_enc_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_iso.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_past.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_pc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_phy.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_sc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_adv_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_adv_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_adv_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_adv_slave_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_conn.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_conn_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_enc_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_iso.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_sc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_adv_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_adv_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_adv_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_adv_slave_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_bis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_bis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_cis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_cis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_conn.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_conn_cs2.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_conn_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_conn_priv.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_enc_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_enc_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_iso.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_pc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_phy.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_sc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_vs.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_adv_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_adv_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_adv_priv.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_adv_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_adv_slave_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_bis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_bis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_cis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_cis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_conn.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_conn_cs2.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_conn_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_conn_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_conn_priv.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_enc_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_enc_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_iso.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_past.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_pc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_phy.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_init_sc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lhci/lhci_main_iso.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/BlePhy/MAX32690/IAR/libphy_iar.a - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_adv_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_adv_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_adv_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_adv_slave_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_bis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_bis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_cis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_cis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_conn_cs2.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_conn_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_conn_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_enc_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_enc_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_init_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_init_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_iso.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_master_phy.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_past.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_pc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_priv.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_sc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_init_slave_phy.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_adv_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_adv_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_adv_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_adv_slave_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_bis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_bis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_cis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_cis_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_conn.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_conn_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_conn_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_conn_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_diag.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_dtm.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_enc_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_enc_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_iso.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_past.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_pc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_phy.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_priv.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_main_sc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/ll/ll_math.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lmgr/lmgr_events.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_adv_master_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_adv_slave_ae.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_cis_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_conn.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_iso.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_master.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_priv.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_sc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_slave.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_btn.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_cfg.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_codec.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_crypto.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_flash.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_i2s.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_led.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_rtc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_sys.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_timer.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_twi.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_uart.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/paspc/paspc_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/plxpc/plxpc_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/plxps/plxps_db.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/plxps/plxps_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/util/prand.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/util/print.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/rscp/rscps_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/sch/sch_ble.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/common/sch/sch_list.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/common/sch/sch_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/sch/sch_rm.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/controller/sources/ble/sch/sch_tm.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/scpps/scpps_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/sec/common/sec_aes.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/sec/common/sec_aes_rev.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/sec/common/sec_ccm_hci.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/sec/common/sec_cmac_hci.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/sec/common/sec_ecc_hci.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/sec/common/sec_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/smp/smp_act.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/smp/smp_db.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/smp/smp_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/smp/smp_non.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/smp/smp_sc_act.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/smp/smp_sc_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/smp/smpi_act.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/smp/smpi_sc_act.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/smp/smpi_sc_sm.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/smp/smpi_sm.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/smp/smpr_act.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/smp/smpr_sc_act.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/smp/smpr_sc_sm.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-host/sources/stack/smp/smpr_sm.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_alert.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_batt.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_bps.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_core.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_cps.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_cscs.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_cte.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_dis.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_gls.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_gyro.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_hid.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_hrs.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_hts.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_ipss.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_plxs.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_px.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_rscs.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_scpss.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_temp.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_time.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_uricfg.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_wdxs.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_wp.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/services/svc_wss.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/sensor/temp_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/util/terminal.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/tipc/tipc_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/udsc/udsc_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/thirdparty/uecc/uECC.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/thirdparty/uecc/uECC_ll.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/common/ui_console.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/common/ui_lcd.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/common/ui_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/common/ui_platform.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/af/common/ui_timer.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/uribeacon/uricfg_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/wdxc/wdxc_ft.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/wdxc/wdxc_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/wdxc/wdxc_stream.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/wdxs/wdxs_au.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/wdxs/wdxs_dc.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/wdxs/wdxs_ft.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/wdxs/wdxs_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/wdxs/wdxs_phy.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/wdxs/wdxs_stream.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/wpc/wpc_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/targets/baremetal/wsf_assert.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/targets/baremetal/wsf_buf.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/targets/baremetal/wsf_bufio.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/targets/baremetal/wsf_cs.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/targets/baremetal/wsf_detoken.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/targets/baremetal/wsf_efs.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/targets/baremetal/wsf_heap_sbrk.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/targets/baremetal/wsf_msg.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/targets/baremetal/wsf_nvm.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/targets/baremetal/wsf_os.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/targets/baremetal/wsf_queue.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/targets/baremetal/wsf_timer.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/targets/baremetal/wsf_trace.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/wspc/wspc_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/ble-profiles/sources/profiles/wsps/wsps_main.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Cordio/wsf/sources/util/wstr.c - - - - Maxim MAX32690 BSP _BSP.EvKit V1_1.0.0 - CMSISPack.Component - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Boards/MAX32690/EvKit_V1/Source/board.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Boards/MAX32690/Source/led.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Boards/MAX32690/Source/pb.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/Boards/MAX32690/Source/stdio.c - - - - Maxim Maxim API _Device.DMA_1.0.0 - CMSISPack.Component - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/DMA/dma_me18.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/DMA/dma_reva.c - - - - Maxim Maxim API _Device.FLC_1.0.0 - CMSISPack.Component - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/FLC/flc_common.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/FLC/flc_me18.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/FLC/flc_reva.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/FLC/flc_revb.c - - - - Maxim Maxim API _Device.GPIO_1.0.0 - CMSISPack.Component - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/GPIO/gpio_common.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/GPIO/gpio_me18.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/GPIO/gpio_reva.c - - - - Maxim Maxim API _Device.Startup_1.0.0 - CMSISPack.Component - - $PROJ_DIR$\RTE\Device\MAX32690_Cortex-M4\cmain.s - - - $PROJ_DIR$\RTE\Device\MAX32690_Cortex-M4\heap.c - - - $PROJ_DIR$\RTE\Device\MAX32690_Cortex-M4\low_level_init.c - - - $PROJ_DIR$\RTE\Device\MAX32690_Cortex-M4\max32690.h - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/SYS/mxc_assert.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/SYS/mxc_delay.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/SYS/mxc_lock.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/SYS/nvic_table.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/SYS/pins_me18.c - - - $PROJ_DIR$\RTE\Device\MAX32690_Cortex-M4\startup_max32690.s - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/SYS/sys_me18.c - - - $PROJ_DIR$\RTE\Device\MAX32690_Cortex-M4\system_max32690.c - - - - Maxim Maxim API _Device.Timers_1.0.0 - CMSISPack.Component - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/TMR/tmr_common.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/TMR/tmr_me18.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/TMR/tmr_revb.c - - - - Maxim Maxim API _Device.UART_1.0.0 - CMSISPack.Component - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/UART/uart_common.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/UART/uart_me18.c - - - ${CMSIS_PACK_PATH_Maxim#MAX32690#1.0.0}$\Libraries/PeriphDrivers/Source/UART/uart_revb.c - - - - - <?xml version="1.0" encoding="UTF-8" standalone="no"?> -<configuration xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"> - <packages/> - <device Dclock="96000000" Dcore="Cortex-M4" DcoreVersion="r0p1" Dendian="Little-endian" Dfamily="MAX32690-66" Dfpu="SP_FPU" Dmpu="NO_MPU" Dname="MAX32690" Dvendor="Maxim:23" Pname="Cortex-M4" Punits="2" info="ARM Cortex-M4 96 MHz, 512 kB RAM, 1 MB ROM" url="http://www.keil.com/dd2/maxim/max32690"> - <package info="Maxim Integrated MAX32690 Series Device Support, Board Support Package and Examples" name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - </device> - <toolchain Tcompiler="IAR" Toutput="exe"/> - <components> - <component Cbundle="Maxim BTLE" Cbundleversion="1.0.0" Cclass="Bluetooth" Cgroup="Bluetooth LE" Cvendor="Maxim" Cversion="1.0.0" deviceDependent="1"> - <package name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-apps/sources/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-apps/sources/assettag/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-apps/sources/cycling/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-apps/sources/datc/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-apps/sources/dats/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-apps/sources/fit/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-apps/sources/hidapp/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-apps/sources/locator/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-apps/sources/medc/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-apps/sources/meds/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-apps/sources/tag/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-apps/sources/uribeacon/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-apps/sources/watch/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-host/include/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/common/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/exactle/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/sec/common/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/cfg/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/hci/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/l2c/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/smp/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-profiles/include/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/include/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/gatt/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/controller/include/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/controller/include/ble/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/controller/include/common/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/include/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/init/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lmgr/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/sch/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/controller/sources/common/bb/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/controller/sources/common/sch/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/platform/include/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/platform/targets/maxim/max32690/sources/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/thirdparty/uecc/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/wsf/include/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/wsf/sources/targets/baremetal/"/> - <file category="include" deviceDependent="1" name="Libraries/Cordio/wsf/sources/util/"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-apps/sources/hidapp/hidapp_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/common/hci_core.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/common/hci_tr.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_bis.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_cis.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_cte.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_enc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_past.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/exactle/hci_cmd_phy.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/exactle/hci_core_ps.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/exactle/hci_evt.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/exactle/hci_vs.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/hci/exactle/hci_vs_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/sec/common/sec_aes.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/sec/common/sec_aes_rev.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/sec/common/sec_ccm_hci.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/sec/common/sec_cmac_hci.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/sec/common/sec_ecc_hci.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/sec/common/sec_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/attc_disc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/attc_eatt.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/attc_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/attc_proc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/attc_read.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/attc_sign.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/attc_write.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/atts_ccc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/atts_csf.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/atts_dyn.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/atts_eatt.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/atts_ind.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/atts_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/atts_proc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/atts_read.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/atts_sign.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/atts_write.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/att_eatt.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/att_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/att/att_uuid.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/cfg/cfg_stack.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_adv.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_adv_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_adv_leg.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_bis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_bis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_cis.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_cis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_cis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_cis_sm.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_conn.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_cte.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_master_leg.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_slave_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_slave_leg.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_conn_sm.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_dev.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_dev_priv.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_past.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_phy.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_priv.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_scan.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_scan_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_scan_leg.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_sec.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_sec_lesc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_sec_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_sec_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/dm/dm_sync_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/hci/hci_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/l2c/l2c_coc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/l2c/l2c_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/l2c/l2c_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/l2c/l2c_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/smp/smpi_act.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/smp/smpi_sc_act.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/smp/smpi_sc_sm.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/smp/smpi_sm.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/smp/smpr_act.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/smp/smpr_sc_act.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/smp/smpr_sc_sm.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/smp/smpr_sm.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/smp/smp_act.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/smp/smp_db.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/smp/smp_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/smp/smp_non.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/smp/smp_sc_act.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-host/sources/stack/smp/smp_sc_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/app_disc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/app_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/app_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/app_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/app_master_leg.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/app_server.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/app_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/app_slave_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/app_slave_leg.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/app_terminal.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/common/app_db.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/common/app_hw.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/common/app_ui.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/common/ui_console.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/common/ui_lcd.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/common/ui_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/common/ui_platform.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/af/common/ui_timer.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/anpc/anpc_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/atpc/atpc_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/atps/atps_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/bas/bas_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/blpc/blpc_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/blps/blps_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/cpp/cpps_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/cscp/cscps_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/dis/dis_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/fmpl/fmpl_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/gap/gap_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/gatt/gatt_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/glpc/glpc_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/glps/glps_db.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/glps/glps_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/hid/hid_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/hrpc/hrpc_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/hrps/hrps_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/htpc/htpc_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/htps/htps_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/paspc/paspc_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/plxpc/plxpc_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/plxps/plxps_db.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/plxps/plxps_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/rscp/rscps_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/scpps/scpps_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/sensor/gyro_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/sensor/temp_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/tipc/tipc_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/udsc/udsc_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/uribeacon/uricfg_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/wdxc/wdxc_ft.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/wdxc/wdxc_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/wdxc/wdxc_stream.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/wdxs/wdxs_au.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/wdxs/wdxs_dc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/wdxs/wdxs_ft.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/wdxs/wdxs_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/wdxs/wdxs_phy.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/wdxs/wdxs_stream.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/wpc/wpc_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/wspc/wspc_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/profiles/wsps/wsps_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_alert.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_batt.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_bps.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_core.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_cps.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_cscs.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_cte.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_dis.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_gls.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_gyro.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_hid.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_hrs.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_hts.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_ipss.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_plxs.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_px.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_rscs.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_scpss.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_temp.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_time.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_uricfg.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_wdxs.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_wp.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/ble-profiles/sources/services/svc_wss.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_adv_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_adv_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_adv_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_adv_slave_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_bis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_bis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_cis.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_cis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_cis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_conn.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_conn_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_conn_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_dtm.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_pdufilt.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_periodiclist.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_reslist.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_sniffer.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/bb/bb_ble_whitelist.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/init/init.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/init/init_ctr.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_adv_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_adv_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_adv_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_adv_slave_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_bis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_bis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_cis.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_cis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_cis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_conn.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_conn_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_conn_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_conn_past.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_enc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_enc_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_init_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_init_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_pc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_act_phy.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_adv_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_adv_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_adv_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_adv_slave_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_bis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_bis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_cis.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_cis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_cis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_conn.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_conn_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_conn_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_init_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_isr_init_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_adv_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_adv_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_adv_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_adv_slave_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_bis.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_bis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_bis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_cis.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_cis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_cis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_conn.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_conn_cs2.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_conn_data.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_conn_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_conn_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_enc_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_enc_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_init_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_init_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_iso.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_iso_data.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_master_phy.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_past.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_pc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_priv.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_sc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_main_slave_phy.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_pdu_adv_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_pdu_adv_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_pdu_adv_slave_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_pdu_bis.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_pdu_conn.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_pdu_enc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_pdu_iso.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_adv_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_adv_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_adv_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_adv_slave_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_bis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_bis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_cis.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_conn_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_conn_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_init_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_init_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_cis.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_cis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_cis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_conn.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_conn_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_conn_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_enc_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_enc_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_master_phy.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_pc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lctr/lctr_sm_llcp_slave_phy.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_adv_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_adv_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_adv_priv.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_adv_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_adv_slave_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_bis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_bis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_cis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_cis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_conn.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_conn_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_conn_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_conn_priv.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_enc_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_enc_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_iso.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_past.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_pc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_phy.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_sc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_adv_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_adv_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_adv_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_adv_slave_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_conn.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_conn_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_enc_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_iso.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_cmd_vs_sc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_adv_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_adv_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_adv_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_adv_slave_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_bis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_bis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_cis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_cis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_conn.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_conn_cs2.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_conn_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_conn_priv.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_enc_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_enc_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_iso.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_pc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_phy.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_sc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_evt_vs.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_adv_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_adv_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_adv_priv.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_adv_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_adv_slave_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_bis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_bis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_cis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_cis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_conn.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_conn_cs2.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_conn_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_conn_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_conn_priv.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_enc_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_enc_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_iso.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_past.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_pc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_phy.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_init_sc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lhci/lhci_main_iso.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_adv_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_adv_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_adv_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_adv_slave_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_bis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_bis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_cis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_cis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_conn_cs2.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_conn_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_conn_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_enc_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_enc_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_init_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_init_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_iso.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_master_phy.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_past.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_pc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_priv.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_sc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_init_slave_phy.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_adv_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_adv_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_adv_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_adv_slave_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_bis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_bis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_cis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_cis_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_conn.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_conn_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_conn_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_conn_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_diag.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_dtm.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_enc_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_enc_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_iso.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_past.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_pc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_phy.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_priv.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_main_sc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/ll/ll_math.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lmgr/lmgr_events.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_adv_master_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_adv_slave_ae.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_cis_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_conn.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_iso.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_master.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_priv.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_sc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/lmgr/lmgr_main_slave.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/sch/sch_ble.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/sch/sch_rm.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/ble/sch/sch_tm.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/common/bb/bb_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/common/chci/chci_tr.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/common/sch/sch_list.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/controller/sources/common/sch/sch_main.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_btn.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_cfg.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_codec.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_crypto.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_flash.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_i2s.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_led.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_rtc.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_sys.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_timer.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_twi.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/platform/targets/maxim/max32690/sources/pal_uart.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/thirdparty/uecc/uECC_ll.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/thirdparty/uecc/uECC.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/targets/baremetal/wsf_assert.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/targets/baremetal/wsf_buf.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/targets/baremetal/wsf_bufio.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/targets/baremetal/wsf_cs.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/targets/baremetal/wsf_detoken.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/targets/baremetal/wsf_efs.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/targets/baremetal/wsf_heap_sbrk.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/targets/baremetal/wsf_msg.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/targets/baremetal/wsf_nvm.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/targets/baremetal/wsf_os.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/targets/baremetal/wsf_queue.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/targets/baremetal/wsf_timer.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/targets/baremetal/wsf_trace.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/util/bda.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/util/bstream.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/util/calc128.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/util/crc32.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/util/fcs.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/util/prand.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/util/print.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/util/terminal.c"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Cordio/wsf/sources/util/wstr.c"/> - <file category="library" condition="Startup IAR" deviceDependent="1" name="Libraries/BlePhy/MAX32690/IAR/libphy_iar.a"/> - </component> - <component Cbundle="MAX32690 BSP" Cbundleversion="1.0.0" Cclass="BSP" Cgroup="EvKit V1" Cvendor="Maxim" Cversion="1.0.0" deviceDependent="1"> - <package name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/Boards/MAX32690/EvKit_V1/Include/" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Boards/MAX32690/EvKit_V1/Source/board.c" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/Boards/MAX32690/Include/" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Boards/MAX32690/Source/led.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Boards/MAX32690/Source/pb.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/Boards/MAX32690/Source/stdio.c" version="1.0.0"/> - </component> - <component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.2.0"> - <package name="CMSIS" url="http://www.keil.com/pack/" vendor="ARM" version="5.5.1"/> - <file category="doc" name="CMSIS/Documentation/Core/html/index.html"/> - <file category="include" name="CMSIS/Core/Include/"/> - </component> - <component Cbundle="Maxim API" Cbundleversion="1.0.0" Cclass="Device" Cgroup="CTB" Cvendor="Maxim" Cversion="1.0.0" deviceDependent="1"> - <package name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/CTB/ctb_me18.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/CTB/ctb_common.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/CTB/ctb_reva.c" version="1.0.0"/> - </component> - <component Cbundle="Maxim API" Cbundleversion="1.0.0" Cclass="Device" Cgroup="DMA" Cvendor="Maxim" Cversion="1.0.0" deviceDependent="1"> - <package name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/DMA/dma_me18.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/DMA/dma_reva.c" version="1.0.0"/> - </component> - <component Cbundle="Maxim API" Cbundleversion="1.0.0" Cclass="Device" Cgroup="FLC" Cvendor="Maxim" Cversion="1.0.0" deviceDependent="1"> - <package name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/FLC/flc_me18.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/FLC/flc_common.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/FLC/flc_reva.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/FLC/flc_revb.c" version="1.0.0"/> - </component> - <component Cbundle="Maxim API" Cbundleversion="1.0.0" Cclass="Device" Cgroup="GPIO" Cvendor="Maxim" Cversion="1.0.0" deviceDependent="1"> - <package name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/GPIO/gpio_me18.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/GPIO/gpio_reva.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/GPIO/gpio_common.c" version="1.0.0"/> - </component> - <component Cbundle="Maxim API" Cbundleversion="1.0.0" Cclass="Device" Cgroup="I2C" Cvendor="Maxim" Cversion="1.0.0" deviceDependent="1"> - <package name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/I2C/i2c_me18.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/I2C/i2c_reva.c" version="1.0.0"/> - </component> - <component Cbundle="Maxim API" Cbundleversion="1.0.0" Cclass="Device" Cgroup="ICC" Cvendor="Maxim" Cversion="1.0.0" deviceDependent="1"> - <package name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/ICC/icc_me18.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/ICC/icc_reva.c" version="1.0.0"/> - </component> - <component Cbundle="Maxim API" Cbundleversion="1.0.0" Cclass="Device" Cgroup="Low Power" Cvendor="Maxim" Cversion="1.0.0" deviceDependent="1"> - <package name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/LP/lp_me18.c" version="1.0.0"/> - </component> - <component Cbundle="Maxim API" Cbundleversion="1.0.0" Cclass="Device" Cgroup="RTC" Cvendor="Maxim" Cversion="1.0.0" deviceDependent="1"> - <package name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/RTC/rtc_me18.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/RTC/rtc_reva.c" version="1.0.0"/> - </component> - <component Cbundle="Maxim API" Cbundleversion="1.0.0" Cclass="Device" Cgroup="Startup" Cvendor="Maxim" Cversion="1.0.0" deviceDependent="1"> - <package name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/CMSIS/Device/Maxim/MAX32690/Include/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Include/MAX32690/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/ADC/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/AES/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/CRC/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/DMA/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/FLC/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/GPIO/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/I2C/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/I2S/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/ICC/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/LP/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/RTC/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/SPI/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/SYS/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/TMR/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/TRNG/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/UART/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/WDT/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/WUT/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/PT/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/CTB/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/CAN/" version="1.0.0"/> - <file category="include" deviceDependent="1" name="Libraries/PeriphDrivers/Source/LPCMP/" version="1.0.0"/> - <file attr="config" category="sourceAsm" condition="Startup IAR" deviceDependent="1" name="Libraries/CMSIS/Device/Maxim/MAX32690/Source/IAR/startup_max32690.s" version="1.0.0"/> - <file attr="config" category="sourceC" condition="Startup IAR" deviceDependent="1" name="Libraries/CMSIS/Device/Maxim/MAX32690/Source/IAR/low_level_init.c" version="1.0.0"/> - <file attr="config" category="sourceAsm" condition="Startup IAR" deviceDependent="1" name="Libraries/CMSIS/Device/Maxim/MAX32690/Source/IAR/cmain.s" version="1.0.0"/> - <file attr="config" category="sourceC" condition="Startup IAR" deviceDependent="1" name="Libraries/CMSIS/Device/Maxim/MAX32690/Source/IAR/heap.c" version="1.0.0"/> - <file attr="config" category="sourceC" deviceDependent="1" name="Libraries/CMSIS/Device/Maxim/MAX32690/Source/system_max32690.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/SYS/nvic_table.c" version="1.0.0"/> - <file attr="config" category="header" deviceDependent="1" name="Libraries/CMSIS/Device/Maxim/MAX32690/Include/max32690.h" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/SYS/mxc_assert.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/SYS/mxc_delay.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/SYS/mxc_lock.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/SYS/pins_me18.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/SYS/sys_me18.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/SYS/nvic_table.c" version="1.0.0"/> - </component> - <component Cbundle="Maxim API" Cbundleversion="1.0.0" Cclass="Device" Cgroup="Timers" Cvendor="Maxim" Cversion="1.0.0" deviceDependent="1"> - <package name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/TMR/tmr_me18.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/TMR/tmr_revb.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/TMR/tmr_common.c" version="1.0.0"/> - </component> - <component Cbundle="Maxim API" Cbundleversion="1.0.0" Cclass="Device" Cgroup="TRNG" Cvendor="Maxim" Cversion="1.0.0" deviceDependent="1"> - <package name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/TRNG/trng_me18.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/TRNG/trng_revb.c" version="1.0.0"/> - </component> - <component Cbundle="Maxim API" Cbundleversion="1.0.0" Cclass="Device" Cgroup="UART" Cvendor="Maxim" Cversion="1.0.0" deviceDependent="1"> - <package name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/UART/uart_me18.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/UART/uart_revb.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/UART/uart_common.c" version="1.0.0"/> - </component> - <component Cbundle="Maxim API" Cbundleversion="1.0.0" Cclass="Device" Cgroup="WUT" Cvendor="Maxim" Cversion="1.0.0" deviceDependent="1"> - <package name="MAX32690" url="https://www.mxim.net/microcontroller/pack/" vendor="Maxim" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/WUT/wut_me18.c" version="1.0.0"/> - <file category="sourceC" deviceDependent="1" name="Libraries/PeriphDrivers/Source/WUT/wut_reva.c" version="1.0.0"/> - </component> - </components> - <apis/> -</configuration> - - - diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/Makefile b/Examples/MAX32690/Bluetooth/BLE_fcc/Makefile deleted file mode 100644 index 082a6783d23..00000000000 --- a/Examples/MAX32690/Bluetooth/BLE_fcc/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32690 -TARGET_UC := MAX32690 -TARGET_LC := max32690 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/README.md b/Examples/MAX32690/Bluetooth/BLE_fcc/README.md deleted file mode 100644 index 20318598707..00000000000 --- a/Examples/MAX32690/Bluetooth/BLE_fcc/README.md +++ /dev/null @@ -1,32 +0,0 @@ -# BLE_fcc - -Simple serial port console for FCC testing. -Refer to [BLE_fcc](../../../Libraries/Cordio/docs/Applications/BLE_fcc.md) documentation in the Cordio Library. - -## Software - -### Project Usage - -Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. - -### Required Connections - -If using the MAX32690EVKIT: -- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. -- Install headers JP7(RX\_EN) and JP8(TX\_EN). -- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - -If using the MAX32690FTHR: -- Connect a USB cable between the PC and the J5 (USB/PWR) connector. -- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - -### Project-Specific Build Notes -* Setting `TRACE=1` in [**project.mk**](project.mk) initializes the on-board USB-to-UART adapter for -viewing the trace messages and interacting with the application. Port uses settings: - - Baud : 115200 - - Char size : 8 - - Parity : None - - Stop bits : 1 - - HW Flow Control : No - - SW Flow Control : No -* Setting `SBT=1` in [**project.mk**](project.mk) enables Secure Boot Tools for the project diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/main.c b/Examples/MAX32690/Bluetooth/BLE_fcc/main.c deleted file mode 100644 index 3efb2f9dd56..00000000000 --- a/Examples/MAX32690/Bluetooth/BLE_fcc/main.c +++ /dev/null @@ -1,537 +0,0 @@ -/*************************************************************************************************/ -/*! - * @file main.c - * @brief BLE project with simple serial console for FCC testing - * - * Copyright (c) 2013-2019 Arm Ltd. All Rights Reserved. - * - * Copyright (c) 2019-2020 Packetcraft, Inc. - * - * Portions Copyright (c) 2022-2023 Analog Devices, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/*************************************************************************************************/ - -#include -#include -#include "ll_init_api.h" -#include "chci_tr.h" -#include "lhci_api.h" -#include "hci_defs.h" -#include "wsf_assert.h" -#include "wsf_buf.h" -#include "wsf_cs.h" -#include "wsf_heap.h" -#include "wsf_timer.h" -#include "wsf_trace.h" -#include "wsf_bufio.h" -#include "bb_ble_sniffer_api.h" -#include "pal_bb.h" -#include "pal_cfg.h" -#include "tmr.h" - -/************************************************************************************************** - Definitions -**************************************************************************************************/ - -/*! \brief UART TX buffer size */ -#define PLATFORM_UART_TERMINAL_BUFFER_SIZE 2048U - -#define FREQ_HOP_PERIOD_US 20000 - -/************************************************************************************************** - Global Variables -**************************************************************************************************/ - -/*! \brief Persistent BB runtime configuration. */ -static BbRtCfg_t mainBbRtCfg; - -/*! \brief Persistent LL runtime configuration. */ -static LlRtCfg_t mainLlRtCfg; - -static uint8_t phy = LL_PHY_LE_1M; -static uint8_t phy_str[16]; -static uint8_t txFreqHopCh; - -/************************************************************************************************** - Functions -**************************************************************************************************/ - -/*! \brief Physical layer functions. */ -extern void llc_api_set_txpower(int8_t power); -extern void dbb_seq_select_rf_channel(uint32_t rf_channel); -extern void llc_api_tx_ldo_setup(void); -extern void dbb_seq_tx_enable(void); -extern void dbb_seq_tx_disable(void); - -/*************************************************************************************************/ -/*! - * \fn Get PHY String. - * - * \brief Convert the PHY definition to a string. - * - * \param phy PHY definition. - * - * \return Pointer to string describing the PHY. - */ -/*************************************************************************************************/ -static uint8_t *getPhyStr(uint8_t phy) -{ - switch (phy) { - case LL_TEST_PHY_LE_1M: - default: - memcpy(phy_str, "1M PHY", 7); - break; - case LL_TEST_PHY_LE_2M: - memcpy(phy_str, "2M PHY", 7); - break; - case LL_TEST_PHY_LE_CODED_S8: - memcpy(phy_str, "S8 PHY", 7); - break; - case LL_TEST_PHY_LE_CODED_S2: - memcpy(phy_str, "S2 PHY", 7); - break; - } - return phy_str; -} - -/*************************************************************************************************/ -/*! - * \fn Timer 2 interrupts handler. - * - * \brief Controls the frequency hopping. - * - * \param None. - * - * \return None. - */ -/*************************************************************************************************/ -void TMR2_IRQHandler(void) -{ - int res; - - MXC_TMR_TO_Clear(MXC_TMR2); - - /* Start the next channel */ - res = LlEnhancedTxTest(txFreqHopCh++, 255, LL_TEST_PKT_TYPE_AA, phy, 0); - if (res != LL_SUCCESS) - APP_TRACE_INFO2("res = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); - - /* Wrap the channels */ - if (txFreqHopCh == 40) - txFreqHopCh = 0; - - /* Restart the timeout */ - MXC_TMR_TO_Start(MXC_TMR2, FREQ_HOP_PERIOD_US); - MXC_TMR_EnableInt(MXC_TMR2); -} - -/*************************************************************************************************/ -/*! - * \fn Usage statement - * - * \brief Prints the usage statement. - * - * \param None. - * - * \return None. - */ -/*************************************************************************************************/ -void printUsage(void) -{ - APP_TRACE_INFO0("Usage: "); - APP_TRACE_INFO0(" (0) Transmit Continuous Modulated on RF channel 0 (2402 MHz)"); - APP_TRACE_INFO0(" (1) Transmit Continuous Modulated on RF channel 19 (2440 MHz)"); - APP_TRACE_INFO0(" (2) Transmit Continuous Modulated RF channel 39 (2480 MHz)"); - APP_TRACE_INFO0(" (3) Receive on RF channel 39 (2480 MHz)"); - APP_TRACE_INFO0(" (4) Set Transmit power"); - APP_TRACE_INFO0(" (5) Enable Constant Unmodulated TX"); - APP_TRACE_INFO0(" (6) Disable constant TX -- MUST be called after (5)"); - /* APP_TRACE_INFO0(" (7) Set PA value"); */ - APP_TRACE_INFO0(" (8) Set PHY"); - APP_TRACE_INFO0(" (9) TX Frequency Hop"); - APP_TRACE_INFO0(" (e) End transmission -- MUST be used after each (0-3, 9)"); - APP_TRACE_INFO0(" (u) Print usage"); -} - -/*************************************************************************************************/ -/*! - * \fn Process the Console RX - * - * \brief State machine for the console inputs. - * - * \param rxByte Character received from the console. - * - * \return None. - */ -/*************************************************************************************************/ -static void processConsoleRX(uint8_t rxByte) -{ - int res; - - /* Holds the state of the command and the parameter */ - static uint8_t cmd = 0; - static uint8_t param = 0; - - /* Determines if the incoming character is a command or a parameter */ - if (cmd == 0) - cmd = rxByte; - else - param = rxByte; - - switch (cmd) { - case '0': - - APP_TRACE_INFO1("Transmit RF channel 0, 255 bytes/pkt, PRBS15, %s, forever ..", - getPhyStr(phy)); - res = LlEnhancedTxTest(0, 255, LL_TEST_PKT_TYPE_PRBS15, phy, 0); - APP_TRACE_INFO2("res = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); - cmd = 0; - break; - - case '1': - - APP_TRACE_INFO1("Transmit RF channel 19, 255 bytes/pkt, PRBS15, %s, forever ..", - getPhyStr(phy)); - res = LlEnhancedTxTest(19, 255, LL_TEST_PKT_TYPE_PRBS15, phy, 0); - APP_TRACE_INFO2("res = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); - cmd = 0; - break; - - case '2': - - APP_TRACE_INFO1("Transmit RF channel 39, 255 bytes/pkt, PRBS15, %s, forever ..", - getPhyStr(phy)); - res = LlEnhancedTxTest(39, 255, LL_TEST_PKT_TYPE_PRBS15, phy, 0); - APP_TRACE_INFO2("res = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); - cmd = 0; - break; - - case '3': - - APP_TRACE_INFO1("Receive RF channel 39, %s, forever ..", getPhyStr(phy)); - res = LlEnhancedRxTest(39, phy, 0, 0); - APP_TRACE_INFO2("res = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); - cmd = 0; - break; - - case '4': - - if (param == 0) { - APP_TRACE_INFO0("Select transmit power"); - APP_TRACE_INFO0(" 0: -10 dBm"); - APP_TRACE_INFO0(" 1: 0 dBm"); - APP_TRACE_INFO0(" 2: 4.5 dBm"); - break; - } - - switch (param) { - case '0': - llc_api_set_txpower(-10); - LlSetAdvTxPower(-10); - APP_TRACE_INFO0("Power set to -10 dBm"); - break; - case '1': - llc_api_set_txpower(0); - LlSetAdvTxPower(0); - APP_TRACE_INFO0("Power set to 0 dBm"); - break; - case '2': - llc_api_set_txpower(4); - LlSetAdvTxPower(4); - APP_TRACE_INFO0("Power set to 4.5 dBm"); - break; - default: - APP_TRACE_INFO0("Invalid selection"); - break; - } - cmd = 0; - param = 0; - break; - - case '5': - if (param == 0) { - APP_TRACE_INFO0("Select transmit channel"); - APP_TRACE_INFO0(" 0: 0"); - APP_TRACE_INFO0(" 1: 19"); - APP_TRACE_INFO0(" 2: 39"); - break; - } - - switch (param) { - case '0': - dbb_seq_select_rf_channel(0); - APP_TRACE_INFO0("Channel set to 0"); - break; - case '1': - dbb_seq_select_rf_channel(19); - APP_TRACE_INFO0("Channel set to 19"); - break; - case '2': - dbb_seq_select_rf_channel(39); - APP_TRACE_INFO0("Channel set to 39"); - break; - default: - APP_TRACE_INFO0("Invalid selection"); - break; - } - - APP_TRACE_INFO0("Starting TX"); - - PalBbEnable(); - - llc_api_tx_ldo_setup(); - - /* Enable constant TX */ - dbb_seq_tx_enable(); - - cmd = 0; - param = 0; - break; - - case '6': - APP_TRACE_INFO0("Disabling TX"); - - /* Disable constant TX */ - dbb_seq_tx_disable(); - - PalBbDisable(); - - cmd = 0; - break; - - case '8': - if (param == 0) { - /* Set the PHY */ - APP_TRACE_INFO0("Select PHY"); - APP_TRACE_INFO0("1: 1M"); - APP_TRACE_INFO0("2: 2M"); - APP_TRACE_INFO0("3: S8"); - APP_TRACE_INFO0("4: S2"); - break; - } - - switch (param) { - case '1': - phy = LL_TEST_PHY_LE_1M; - APP_TRACE_INFO0("PHY set to 1M"); - break; - case '2': - phy = LL_TEST_PHY_LE_2M; - APP_TRACE_INFO0("PHY set to 2M"); - break; - case '3': - phy = LL_TEST_PHY_LE_CODED_S8; - APP_TRACE_INFO0("PHY set to S8"); - break; - case '4': - phy = LL_TEST_PHY_LE_CODED_S2; - APP_TRACE_INFO0("PHY set to S2"); - break; - default: - APP_TRACE_INFO0("Invalid selection"); - break; - } - - cmd = 0; - param = 0; - break; - case '9': - /* Frequency hopping TX */ - APP_TRACE_INFO0("Starting frequency hopping"); - NVIC_EnableIRQ(TMR2_IRQn); - MXC_TMR_TO_Start(MXC_TMR2, FREQ_HOP_PERIOD_US); - MXC_TMR_EnableInt(MXC_TMR2); - cmd = 0; - break; - - case 'E': - case 'e': - - APP_TRACE_INFO0("End test"); - MXC_TMR_Stop(MXC_TMR2); - LlEndTest(NULL); - cmd = 0; - break; - - case 'U': - case 'u': - printUsage(); - cmd = 0; - break; - - default: - APP_TRACE_INFO0("Invalid selection"); - cmd = 0; - param = 0; - break; - } -} - -/*************************************************************************************************/ -/*! - * \brief Load runtime configuration. - */ -/*************************************************************************************************/ -static void mainLoadConfiguration(void) -{ - PalBbLoadCfg((PalBbCfg_t *)&mainBbRtCfg); - LlGetDefaultRunTimeCfg(&mainLlRtCfg); - PalCfgLoadData(PAL_CFG_ID_LL_PARAM, &mainLlRtCfg.maxAdvSets, sizeof(LlRtCfg_t) - 9); - PalCfgLoadData(PAL_CFG_ID_BLE_PHY, &mainLlRtCfg.phy2mSup, 4); - - /* Set 5.1 requirements. */ - mainLlRtCfg.btVer = LL_VER_BT_CORE_SPEC_5_0; - - /* Set the 32k sleep clock accuracy into one of the following bins, default is 20 - HCI_CLOCK_500PPM - HCI_CLOCK_250PPM - HCI_CLOCK_150PPM - HCI_CLOCK_100PPM - HCI_CLOCK_75PPM - HCI_CLOCK_50PPM - HCI_CLOCK_30PPM - HCI_CLOCK_20PPM - */ - mainBbRtCfg.clkPpm = 20; -} - -/*************************************************************************************************/ -/*! - * \brief Initialize WSF. - */ -/*************************************************************************************************/ -static void mainWsfInit(void) -{ - /* +12 for message headroom, + 2 event header, +255 maximum parameter length. */ - const uint16_t maxRptBufSize = 12 + 2 + 255; - - /* +12 for message headroom, +ISO Data Load, +4 for header. */ - const uint16_t dataBufSize = - 12 + HCI_ISO_DL_MAX_LEN + mainLlRtCfg.maxAclLen + 4 + BB_DATA_PDU_TAILROOM; - - /* Use single pool for data buffers. */ -#if (BT_VER > 9) - WSF_ASSERT(mainLlRtCfg.maxAclLen == mainLlRtCfg.maxIsoSduLen); -#endif - - /* Ensure pool buffers are ordered correctly. */ - WSF_ASSERT(maxRptBufSize < dataBufSize); - - wsfBufPoolDesc_t poolDesc[] = { - { 16, 8 }, - { 32, 4 }, - { 128, mainLlRtCfg.maxAdvReports }, - { maxRptBufSize, mainLlRtCfg.maxAdvReports }, /* Extended reports. */ - { dataBufSize, mainLlRtCfg.numTxBufs + mainLlRtCfg.numRxBufs + mainLlRtCfg.numIsoTxBuf + - mainLlRtCfg.numIsoRxBuf } - }; - - const uint8_t numPools = sizeof(poolDesc) / sizeof(poolDesc[0]); - - /* Initial buffer configuration. */ - uint16_t memUsed; - WsfCsEnter(); - memUsed = WsfBufInit(numPools, poolDesc); - WsfHeapAlloc(memUsed); - WsfCsExit(); - - WsfOsInit(); - WsfTimerInit(); -#if (WSF_TRACE_ENABLED == TRUE) - WsfTraceRegisterHandler(WsfBufIoWrite); - WsfTraceEnable(TRUE); -#endif -} - -/*************************************************************************************************/ -/*! - * \brief Check and service tokens (Trace and sniffer). - * - * \return TRUE if there is token pending. - */ -/*************************************************************************************************/ -static bool_t mainCheckServiceTokens(void) -{ - bool_t eventPending = FALSE; - -#if (WSF_TOKEN_ENABLED == TRUE) || (BB_SNIFFER_ENABLED == TRUE) - eventPending = LhciIsEventPending(); -#endif - -#if WSF_TOKEN_ENABLED == TRUE - /* Allow only a single token to be processed at a time. */ - if (!eventPending) - eventPending = WsfTokenService(); -#endif - -#if (BB_SNIFFER_ENABLED == TRUE) - /* Service one sniffer packet, if in the buffer. */ - if (!eventPending) - eventPending = LhciSnifferHandler(); -#endif - - return eventPending; -} - -/*************************************************************************************************/ -/*! - * \brief Main entry point. - */ -/*************************************************************************************************/ -int main(void) -{ - uint32_t memUsed; - - mainLoadConfiguration(); - mainWsfInit(); - -#if (WSF_TRACE_ENABLED == TRUE) - WsfCsEnter(); - memUsed = WsfBufIoUartInit(WsfHeapGetFreeStartAddress(), PLATFORM_UART_TERMINAL_BUFFER_SIZE); - WsfHeapAlloc(memUsed); - WsfCsExit(); -#endif - - WsfCsEnter(); - LlInitRtCfg_t llCfg = { .pBbRtCfg = &mainBbRtCfg, - .wlSizeCfg = 4, - .rlSizeCfg = 4, - .plSizeCfg = 4, - .pLlRtCfg = &mainLlRtCfg, - .pFreeMem = WsfHeapGetFreeStartAddress(), - .freeMemAvail = WsfHeapCountAvailable() }; - - memUsed = LlInitControllerInit(&llCfg); - WsfHeapAlloc(memUsed); - WsfCsExit(); - - bdAddr_t bdAddr; - PalCfgLoadData(PAL_CFG_ID_BD_ADDR, bdAddr, sizeof(bdAddr_t)); - /* Coverity[uninit_use_in_call] */ - LlSetBdAddr((uint8_t *)&bdAddr); - - WsfOsRegisterSleepCheckFunc(mainCheckServiceTokens); - WsfOsRegisterSleepCheckFunc(ChciTrService); - - /* Register the UART RX request */ - WsfBufIoUartRegister(processConsoleRX); - - printUsage(); - - WsfOsEnterMainLoop(); - - /* Does not return. */ - return 0; -} diff --git a/Examples/MAX32690/Bluetooth/BLE_fcc/project.mk b/Examples/MAX32690/Bluetooth/BLE_fcc/project.mk deleted file mode 100644 index 52c2a5eb9cc..00000000000 --- a/Examples/MAX32690/Bluetooth/BLE_fcc/project.mk +++ /dev/null @@ -1,21 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -# ********************************************************** - -# If you have secure version of MCU, set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable Cordio library -LIB_CORDIO = 1 - -# TRACE option -# Set to 0 to disable -# Set to 2 to enable serial port trace messages -TRACE = 2 diff --git a/Examples/MAX32690/Bluetooth/BLE_fit/.vscode/README.md b/Examples/MAX32690/Bluetooth/BLE_fit/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Bluetooth/BLE_fit/.vscode/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_fit/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Bluetooth/BLE_fit/.vscode/settings.json b/Examples/MAX32690/Bluetooth/BLE_fit/.vscode/settings.json index fc28e292388..c21b9c37ea4 100755 --- a/Examples/MAX32690/Bluetooth/BLE_fit/.vscode/settings.json +++ b/Examples/MAX32690/Bluetooth/BLE_fit/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Bluetooth/BLE_fit/Makefile b/Examples/MAX32690/Bluetooth/BLE_fit/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/Bluetooth/BLE_fit/Makefile +++ b/Examples/MAX32690/Bluetooth/BLE_fit/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Bluetooth/BLE_fit/README.md b/Examples/MAX32690/Bluetooth/BLE_fit/README.md index f3a4db79bbd..dd18bede6bd 100644 --- a/Examples/MAX32690/Bluetooth/BLE_fit/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_fit/README.md @@ -1,6 +1,6 @@ # BLE_fit Bluetooth fitness device. Showcases heart rate, battery level, running speed and cadence. -Refer to [BLE_fit](../../../Libraries/Cordio/docs/Applications/BLE_fit.md) documentation in the Cordio Library. +Refer to [BLE_fit](../../../../Libraries/Cordio/docs/Applications/BLE_fit.md) documentation in the Cordio Library. ## Software @@ -20,13 +20,18 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ### Project-Specific Build Notes * Setting `TRACE=1` in [**project.mk**](project.mk) initializes the on-board USB-to-UART adapter for viewing the trace messages and interacting with the application. Port uses settings: - - Baud : 115200 - - Char size : 8 - - Parity : None - - Stop bits : 1 - - HW Flow Control : No - - SW Flow Control : No + - Baud : 115200 + - Char size : 8 + - Parity : None + - Stop bits : 1 + - HW Flow Control : No + - SW Flow Control : No * Setting `SBT=1` in [**project.mk**](project.mk) enables Secure Boot Tools for the project diff --git a/Examples/MAX32690/Bluetooth/BLE_fit/main.c b/Examples/MAX32690/Bluetooth/BLE_fit/main.c index 8295396dc8d..80196c3a170 100644 --- a/Examples/MAX32690/Bluetooth/BLE_fit/main.c +++ b/Examples/MAX32690/Bluetooth/BLE_fit/main.c @@ -128,20 +128,6 @@ static void mainWsfInit(void) #endif } -/*************************************************************************************************/ -/*! -* \fn WUT_IRQHandler -* -* \brief WUY interrupt handler. -* -* \return None. -*/ -/*************************************************************************************************/ -void WUT0_IRQHandler(void) -{ - MXC_WUT_Handler(); -} - /*************************************************************************************************/ /*! * \fn wutTrimCb diff --git a/Examples/MAX32690/Bluetooth/BLE_fit/project.mk b/Examples/MAX32690/Bluetooth/BLE_fit/project.mk index 13430100ab6..4daa70767c9 100644 --- a/Examples/MAX32690/Bluetooth/BLE_fit/project.mk +++ b/Examples/MAX32690/Bluetooth/BLE_fit/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Bluetooth/BLE_mcs/.vscode/README.md b/Examples/MAX32690/Bluetooth/BLE_mcs/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Bluetooth/BLE_mcs/.vscode/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_mcs/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Bluetooth/BLE_mcs/.vscode/settings.json b/Examples/MAX32690/Bluetooth/BLE_mcs/.vscode/settings.json index fc28e292388..c21b9c37ea4 100755 --- a/Examples/MAX32690/Bluetooth/BLE_mcs/.vscode/settings.json +++ b/Examples/MAX32690/Bluetooth/BLE_mcs/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Bluetooth/BLE_mcs/Makefile b/Examples/MAX32690/Bluetooth/BLE_mcs/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/Bluetooth/BLE_mcs/Makefile +++ b/Examples/MAX32690/Bluetooth/BLE_mcs/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Bluetooth/BLE_mcs/README.md b/Examples/MAX32690/Bluetooth/BLE_mcs/README.md index 4b7b064d271..53a494edc88 100644 --- a/Examples/MAX32690/Bluetooth/BLE_mcs/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_mcs/README.md @@ -2,7 +2,7 @@ Maxim custom Bluetooth profile and service that advertises as "MCS" and accepts connection requests. -Refer to the [BLE_mcs](../../../Libraries/Cordio/docs/Applications/BLE_mcs.md) documentation in the Cordio Library. +Refer to the [BLE_mcs](../../../../Libraries/Cordio/docs/Applications/BLE_mcs.md) documentation in the Cordio Library. ## Software @@ -21,13 +21,18 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ### Project-Specific Build Notes * Setting `TRACE=1` in [**project.mk**](project.mk) initializes the on-board USB-to-UART adapter for viewing the trace messages and interacting with the application. Port uses settings: - - Baud : 115200 - - Char size : 8 - - Parity : None - - Stop bits : 1 - - HW Flow Control : No - - SW Flow Control : No + - Baud : 115200 + - Char size : 8 + - Parity : None + - Stop bits : 1 + - HW Flow Control : No + - SW Flow Control : No * Setting `SBT=1` in [**project.mk**](project.mk) enables Secure Boot Tools for the project diff --git a/Examples/MAX32690/Bluetooth/BLE_mcs/project.mk b/Examples/MAX32690/Bluetooth/BLE_mcs/project.mk index db1403377fd..1616df61b42 100644 --- a/Examples/MAX32690/Bluetooth/BLE_mcs/project.mk +++ b/Examples/MAX32690/Bluetooth/BLE_mcs/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Bluetooth/BLE_otac/.vscode/README.md b/Examples/MAX32690/Bluetooth/BLE_otac/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Bluetooth/BLE_otac/.vscode/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_otac/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Bluetooth/BLE_otac/.vscode/settings.json b/Examples/MAX32690/Bluetooth/BLE_otac/.vscode/settings.json index fc28e292388..c21b9c37ea4 100755 --- a/Examples/MAX32690/Bluetooth/BLE_otac/.vscode/settings.json +++ b/Examples/MAX32690/Bluetooth/BLE_otac/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Bluetooth/BLE_otac/Makefile b/Examples/MAX32690/Bluetooth/BLE_otac/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/Bluetooth/BLE_otac/Makefile +++ b/Examples/MAX32690/Bluetooth/BLE_otac/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Bluetooth/BLE_otac/README.md b/Examples/MAX32690/Bluetooth/BLE_otac/README.md index 38989e48ae3..8f5de71edff 100644 --- a/Examples/MAX32690/Bluetooth/BLE_otac/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_otac/README.md @@ -5,7 +5,7 @@ Bluetooth data client that scans for and connects to advertisers with the name o The Wireless Data Exchange profile is used to transfer files from the client to the server. A CRC32 value is used to check the integrity of the transferred file. -Refer to the [BLE_otac_otas](../../../Libraries/Cordio/docs/Applications/BLE_otac_otas.md) documentation in the Cordio Library. +Refer to the [BLE_otac_otas](../../../../Libraries/Cordio/docs/Applications/BLE_otac_otas.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32690/Bluetooth/BLE_otac/datc_main.c b/Examples/MAX32690/Bluetooth/BLE_otac/datc_main.c index 391ad8e7cea..990b90693d9 100644 --- a/Examples/MAX32690/Bluetooth/BLE_otac/datc_main.c +++ b/Examples/MAX32690/Bluetooth/BLE_otac/datc_main.c @@ -154,7 +154,7 @@ static const appSecCfg_t datcSecCfg = { DM_KEY_DIST_IRK, /*! Initiator key distribution flags */ DM_KEY_DIST_LTK | DM_KEY_DIST_IRK, /*! Responder key distribution flags */ FALSE, /*! TRUE if Out-of-band pairing data is present */ - TRUE /*! TRUE to initiate security upon connection */ + INIT_SECURITY /*! TRUE to initiate security upon connection */ }; /*! TRUE if Out-of-band pairing data is to be sent */ @@ -494,9 +494,9 @@ static void datcScanReport(dmEvt_t *pMsg) if (!connect && ((pData = DmFindAdType(DM_ADV_TYPE_LOCAL_NAME, pMsg->scanReport.len, pMsg->scanReport.pData)) != NULL)) { /* check length and device name */ - if (pData[DM_AD_LEN_IDX] >= 4 && (pData[DM_AD_DATA_IDX] == 'O') && - (pData[DM_AD_DATA_IDX + 1] == 'T') && (pData[DM_AD_DATA_IDX + 2] == 'A') && - (pData[DM_AD_DATA_IDX + 3] == 'S')) { + char advName[] = ADV_NAME; + if (pData[DM_AD_LEN_IDX] == sizeof(advName) && + !strncmp(advName, (char *)&(pData[DM_AD_DATA_IDX]), sizeof(advName))) { connect = TRUE; } } @@ -1365,7 +1365,7 @@ void DatcHandler(wsfEventMask_t event, wsfMsgHdr_t *pMsg) * \return None. */ /*************************************************************************************************/ -static void datcInitSvcHdlList() +static void datcInitSvcHdlList(void) { uint8_t i; diff --git a/Examples/MAX32690/Bluetooth/BLE_otac/fw_update.S b/Examples/MAX32690/Bluetooth/BLE_otac/fw_update.S index 92eef8736cd..93e79399ec6 100644 --- a/Examples/MAX32690/Bluetooth/BLE_otac/fw_update.S +++ b/Examples/MAX32690/Bluetooth/BLE_otac/fw_update.S @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Bluetooth/BLE_otac/main.c b/Examples/MAX32690/Bluetooth/BLE_otac/main.c index 8985f1f15c6..13feaae0cf5 100644 --- a/Examples/MAX32690/Bluetooth/BLE_otac/main.c +++ b/Examples/MAX32690/Bluetooth/BLE_otac/main.c @@ -129,20 +129,6 @@ static void mainWsfInit(void) #endif } -/*************************************************************************************************/ -/*! -* \fn WUT_IRQHandler -* -* \brief WUY interrupt handler. -* -* \return None. -*/ -/*************************************************************************************************/ -void WUT0_IRQHandler(void) -{ - MXC_WUT_Handler(); -} - /*************************************************************************************************/ /*! * \fn wutTrimCb diff --git a/Examples/MAX32690/Bluetooth/BLE_otac/project.mk b/Examples/MAX32690/Bluetooth/BLE_otac/project.mk index e382b57fcca..a1829517e4c 100644 --- a/Examples/MAX32690/Bluetooth/BLE_otac/project.mk +++ b/Examples/MAX32690/Bluetooth/BLE_otac/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -63,3 +80,16 @@ ${FW_UPDATE_OBJ}: fw_update.S ${FW_UPDATE_BIN} ifeq ($(BOARD),FTHR) $(error ERR_NOTSUPPORTED: This project is not supported for the FTHR board) endif + + +# set ADVTISEMENT name you want to connect +ADV_NAME?=DATS +PROJ_CFLAGS += -DADV_NAME=\"$(ADV_NAME)\" + + + +### CONFIGURE security +# /*! TRUE to initiate security upon connection*/ +PROJ_CFLAGS += -DINIT_SECURITY=TRUE + + diff --git a/Examples/MAX32690/Bluetooth/BLE_otas/.vscode/README.md b/Examples/MAX32690/Bluetooth/BLE_otas/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Bluetooth/BLE_otas/.vscode/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_otas/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Bluetooth/BLE_otas/.vscode/settings.json b/Examples/MAX32690/Bluetooth/BLE_otas/.vscode/settings.json index fc28e292388..c21b9c37ea4 100755 --- a/Examples/MAX32690/Bluetooth/BLE_otas/.vscode/settings.json +++ b/Examples/MAX32690/Bluetooth/BLE_otas/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Bluetooth/BLE_otas/Makefile b/Examples/MAX32690/Bluetooth/BLE_otas/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/Bluetooth/BLE_otas/Makefile +++ b/Examples/MAX32690/Bluetooth/BLE_otas/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Bluetooth/BLE_otas/README.md b/Examples/MAX32690/Bluetooth/BLE_otas/README.md index 304036a35b2..0a7da9cb296 100644 --- a/Examples/MAX32690/Bluetooth/BLE_otas/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_otas/README.md @@ -5,7 +5,7 @@ Bluetooth data server that advertises as "OTAS" and accepts connection requests. The Wireless Data Exchange profile is used to transfer files from the client to the server. A CRC32 value is used to check the integrity of the transferred file. -Refer to the [BLE_otac_otas](../../../Libraries/Cordio/docs/Applications/BLE_otac_otas.md) documentation in the Cordio Library. +Refer to the [BLE_otac_otas](../../../../Libraries/Cordio/docs/Applications/BLE_otac_otas.md) documentation in the Cordio Library. ## Software diff --git a/Examples/MAX32690/Bluetooth/BLE_otas/bl_build.S b/Examples/MAX32690/Bluetooth/BLE_otas/bl_build.S index 70fd9d178ef..f85260687a1 100644 --- a/Examples/MAX32690/Bluetooth/BLE_otas/bl_build.S +++ b/Examples/MAX32690/Bluetooth/BLE_otas/bl_build.S @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Bluetooth/BLE_otas/dats_main.c b/Examples/MAX32690/Bluetooth/BLE_otas/dats_main.c index aea4d4ff213..e1748d10954 100644 --- a/Examples/MAX32690/Bluetooth/BLE_otas/dats_main.c +++ b/Examples/MAX32690/Bluetooth/BLE_otas/dats_main.c @@ -119,7 +119,7 @@ static const appSecCfg_t datsSecCfg = { DM_KEY_DIST_IRK, /*! Initiator key distribution flags */ DM_KEY_DIST_LTK | DM_KEY_DIST_IRK, /*! Responder key distribution flags */ FALSE, /*! TRUE if Out-of-band pairing data is present */ - TRUE /*! TRUE to initiate security upon connection */ + INIT_SECURITY /*! TRUE to initiate security upon connection */ }; /*! TRUE if Out-of-band pairing data is to be sent */ @@ -195,15 +195,8 @@ static const uint8_t datsAdvDataDisc[] = { }; /*! scan data, discoverable mode */ -static const uint8_t datsScanDataDisc[] = { - /*! device name */ - 5, /*! length */ - DM_ADV_TYPE_LOCAL_NAME, /*! AD type */ - 'O', - 'T', - 'A', - 'S' -}; +static const uint8_t deviceName[] = ADV_NAME; +static uint8_t datsScanDataDisc[sizeof(deviceName) + 2]; /************************************************************************************************** Client Characteristic Configuration Descriptors @@ -458,6 +451,10 @@ static void datsSetup(dmEvt_t *pMsg) /* Initialize control information */ datsCb.restoringResList = FALSE; + memcpy(&datsScanDataDisc[2], deviceName, sizeof(deviceName)); + datsScanDataDisc[0] = sizeof(deviceName); + datsScanDataDisc[1] = DM_ADV_TYPE_LOCAL_NAME; + /* set advertising and scan response data for discoverable mode */ AppAdvSetData(APP_ADV_DATA_DISCOVERABLE, sizeof(datsAdvDataDisc), (uint8_t *)datsAdvDataDisc); AppAdvSetData(APP_SCAN_DATA_DISCOVERABLE, sizeof(datsScanDataDisc), @@ -678,7 +675,7 @@ void DatsHandlerInit(wsfHandlerId_t handlerId) AppGetBdAddr(addr); APP_TRACE_INFO6("MAC Addr: %02x:%02x:%02x:%02x:%02x:%02x", addr[5], addr[4], addr[3], addr[2], addr[1], addr[0]); - APP_TRACE_INFO1("Adv local name: %s", &datsScanDataDisc[2]); + APP_TRACE_INFO1("Adv local name: %s", deviceName); /* store handler ID */ datsCb.handlerId = handlerId; diff --git a/Examples/MAX32690/Bluetooth/BLE_otas/main.c b/Examples/MAX32690/Bluetooth/BLE_otas/main.c index 60b3199be03..e329d43fcda 100644 --- a/Examples/MAX32690/Bluetooth/BLE_otas/main.c +++ b/Examples/MAX32690/Bluetooth/BLE_otas/main.c @@ -129,20 +129,6 @@ static void mainWsfInit(void) #endif } -/*************************************************************************************************/ -/*! -* \fn WUT_IRQHandler -* -* \brief WUY interrupt handler. -* -* \return None. -*/ -/*************************************************************************************************/ -void WUT0_IRQHandler(void) -{ - MXC_WUT_Handler(); -} - /*************************************************************************************************/ /*! * \fn wutTrimCb diff --git a/Examples/MAX32690/Bluetooth/BLE_otas/ota.ld b/Examples/MAX32690/Bluetooth/BLE_otas/ota.ld index a8fcc68bf2c..d7cc34db25a 100644 --- a/Examples/MAX32690/Bluetooth/BLE_otas/ota.ld +++ b/Examples/MAX32690/Bluetooth/BLE_otas/ota.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Bluetooth/BLE_otas/project.mk b/Examples/MAX32690/Bluetooth/BLE_otas/project.mk index f17c6967a21..afb9e342722 100644 --- a/Examples/MAX32690/Bluetooth/BLE_otas/project.mk +++ b/Examples/MAX32690/Bluetooth/BLE_otas/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -59,3 +76,14 @@ endif ifeq ($(BOARD),FTHR) $(error ERR_NOTSUPPORTED: This project is not supported for the FTHR board) endif + + + +# SET advertising name +ADV_NAME?=DATS +PROJ_CFLAGS += -DADV_NAME=\"$(ADV_NAME)\" + + +### CONFIGURE security +# /*! TRUE to initiate security upon connection*/ +PROJ_CFLAGS += -DINIT_SECURITY=TRUE diff --git a/Examples/MAX32690/Bluetooth/BLE_periph/.vscode/README.md b/Examples/MAX32690/Bluetooth/BLE_periph/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Bluetooth/BLE_periph/.vscode/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_periph/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Bluetooth/BLE_periph/.vscode/settings.json b/Examples/MAX32690/Bluetooth/BLE_periph/.vscode/settings.json index fc28e292388..c21b9c37ea4 100755 --- a/Examples/MAX32690/Bluetooth/BLE_periph/.vscode/settings.json +++ b/Examples/MAX32690/Bluetooth/BLE_periph/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Bluetooth/BLE_periph/Makefile b/Examples/MAX32690/Bluetooth/BLE_periph/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/Bluetooth/BLE_periph/Makefile +++ b/Examples/MAX32690/Bluetooth/BLE_periph/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Bluetooth/BLE_periph/README.md b/Examples/MAX32690/Bluetooth/BLE_periph/README.md index 2fc9311f833..0139790e8a5 100644 --- a/Examples/MAX32690/Bluetooth/BLE_periph/README.md +++ b/Examples/MAX32690/Bluetooth/BLE_periph/README.md @@ -1,5 +1,5 @@ # BLE_periph -Refer to the [BLE_periph](../../../Libraries/Cordio/docs/Applications/BLE_periph.md) documentation in the Cordio Library. +Refer to the [BLE_periph](../../../../Libraries/Cordio/docs/Applications/BLE_periph.md) documentation in the Cordio Library. ## Software @@ -18,15 +18,19 @@ If using the MAX32690EVKIT: If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - + +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. ### Project-Specific Build Notes Setting `TRACE=1` in [**project.mk**](project.mk) initializes the on-board USB-to-UART adapter for viewing the trace messages and interacting with the application. Port uses settings: - - Baud : 115200 - - Char size : 8 - - Parity : None - - Stop bits : 1 - - HW Flow Control : No - - SW Flow Control : No + - Baud : 115200 + - Char size : 8 + - Parity : None + - Stop bits : 1 + - HW Flow Control : No + - SW Flow Control : No * Setting `SBT=1` in [**project.mk**](project.mk) enables Secure Boot Tools for the project diff --git a/Examples/MAX32690/Bluetooth/BLE_periph/project.mk b/Examples/MAX32690/Bluetooth/BLE_periph/project.mk index 13430100ab6..4daa70767c9 100644 --- a/Examples/MAX32690/Bluetooth/BLE_periph/project.mk +++ b/Examples/MAX32690/Bluetooth/BLE_periph/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Bluetooth/Bootloader/.vscode/README.md b/Examples/MAX32690/Bluetooth/Bootloader/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Bluetooth/Bootloader/.vscode/README.md +++ b/Examples/MAX32690/Bluetooth/Bootloader/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Bluetooth/Bootloader/.vscode/settings.json b/Examples/MAX32690/Bluetooth/Bootloader/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/Bluetooth/Bootloader/.vscode/settings.json +++ b/Examples/MAX32690/Bluetooth/Bootloader/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Bluetooth/Bootloader/Makefile b/Examples/MAX32690/Bluetooth/Bootloader/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/Bluetooth/Bootloader/Makefile +++ b/Examples/MAX32690/Bluetooth/Bootloader/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Bluetooth/Bootloader/README.md b/Examples/MAX32690/Bluetooth/Bootloader/README.md index e988d5bf3ac..06cdf6c11e0 100644 --- a/Examples/MAX32690/Bluetooth/Bootloader/README.md +++ b/Examples/MAX32690/Bluetooth/Bootloader/README.md @@ -9,7 +9,7 @@ the main flash section is erased and replaced with the update image. If no valid is identified, the Bootloader will boot the exiting image in the main flash space. __0x10000000__: Bootloader -__0x10004000__: Main flash space +__0x10008000__: Main flash space __0x10300000__: Update flash space ## Software diff --git a/Examples/MAX32690/Bluetooth/Bootloader/boot_lower.S b/Examples/MAX32690/Bluetooth/Bootloader/boot_lower.S index 4cc62f4e5cf..1dff366bfd1 100644 --- a/Examples/MAX32690/Bluetooth/Bootloader/boot_lower.S +++ b/Examples/MAX32690/Bluetooth/Bootloader/boot_lower.S @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -32,7 +31,7 @@ /* Boot from the lower flash array */ Boot_Lower: - ldr r0,=0x10004000 /* Address for main flash image */ + ldr r0,=0x10008000 /* Address for main flash image */ ldr r1,=0xE000ED08 /* Address for SCB_VTOR_REG */ /* First 32-bit word in image is initial stack pointer */ diff --git a/Examples/MAX32690/Bluetooth/Bootloader/bootloader.ld b/Examples/MAX32690/Bluetooth/Bootloader/bootloader.ld index accf5958587..cb0fdfd4d45 100644 --- a/Examples/MAX32690/Bluetooth/Bootloader/bootloader.ld +++ b/Examples/MAX32690/Bluetooth/Bootloader/bootloader.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,15 +18,17 @@ * ******************************************************************************/ -BOOTLOADER_ORIGIN = 0x10000000; -BOOTLOADER_LEN = 0x4000; -FLASH_SECTION_LEN = 0x40000 - BOOTLOADER_LEN; +/* Note: Flash 0 page size is 16KB (0x4000). Flash 1 page size is 8KB (0x2000) */ +BOOTLOADER_ORIGIN = 0x10000000; /* Bootloader resides in Flash 0 */ +BOOTLOADER_LEN = 0x8000; /* 2 Flash 0 pages length (total 32KB) */ +FLASH0_SECTION_LEN = 0x300000 - BOOTLOADER_LEN; /* 3MB - 2 pages (16KB/page) */ +FLASH1_SECTION_LEN = 0x40000; /* 256KB */ FLASH0_ORIGIN = BOOTLOADER_ORIGIN + BOOTLOADER_LEN; MEMORY { FLASH (rx) : ORIGIN = BOOTLOADER_ORIGIN, LENGTH = BOOTLOADER_LEN - FLASH0 (rx) : ORIGIN = FLASH0_ORIGIN, LENGTH = FLASH_SECTION_LEN - FLASH1 (rx) : ORIGIN = 0x10300000, LENGTH = FLASH_SECTION_LEN + FLASH0 (rx) : ORIGIN = FLASH0_ORIGIN, LENGTH = FLASH0_SECTION_LEN + FLASH1 (rx) : ORIGIN = 0x10300000, LENGTH = FLASH1_SECTION_LEN SRAM (rwx) : ORIGIN = 0x20000000, LENGTH = 0x20000 } @@ -51,14 +52,14 @@ SECTIONS { .flash0 (NOLOAD) : { _flash0 = ALIGN(., 4); - . = . + FLASH_SECTION_LEN; + . = . + FLASH0_SECTION_LEN; _eflash0 = ALIGN(., 4); } > FLASH0 .flash1 (NOLOAD) : { _flash1 = ALIGN(., 4); - . = . + FLASH_SECTION_LEN; + . = . + FLASH1_SECTION_LEN; _eflash1 = ALIGN(., 4); } > FLASH1 diff --git a/Examples/MAX32690/Bluetooth/Bootloader/main.c b/Examples/MAX32690/Bluetooth/Bootloader/main.c index 08ef8ba0e8f..4f42e1e5584 100644 --- a/Examples/MAX32690/Bluetooth/Bootloader/main.c +++ b/Examples/MAX32690/Bluetooth/Bootloader/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Bluetooth/Bootloader/project.mk b/Examples/MAX32690/Bluetooth/Bootloader/project.mk index 1a73bcdd7cb..7d9d7c971d9 100644 --- a/Examples/MAX32690/Bluetooth/Bootloader/project.mk +++ b/Examples/MAX32690/Bluetooth/Bootloader/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Bluetooth/Makefile b/Examples/MAX32690/Bluetooth/Makefile new file mode 100644 index 00000000000..a850f1815f5 --- /dev/null +++ b/Examples/MAX32690/Bluetooth/Makefile @@ -0,0 +1,4 @@ +all: + @for DIR in ./* ; do $(MAKE) -C $$DIR; done +clean: + @for DIR in ./* ; do $(MAKE) -C $$DIR distclean; rm -rf $$DIR/build; done diff --git a/Examples/MAX32690/Bluetooth/RF_Test/.vscode/README.md b/Examples/MAX32690/Bluetooth/RF_Test/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Bluetooth/RF_Test/.vscode/README.md +++ b/Examples/MAX32690/Bluetooth/RF_Test/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Bluetooth/RF_Test/.vscode/settings.json b/Examples/MAX32690/Bluetooth/RF_Test/.vscode/settings.json index 2ad2f9acde6..2a2cbe24654 100755 --- a/Examples/MAX32690/Bluetooth/RF_Test/.vscode/settings.json +++ b/Examples/MAX32690/Bluetooth/RF_Test/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Bluetooth/RF_Test/FreeRTOSConfig.h b/Examples/MAX32690/Bluetooth/RF_Test/FreeRTOSConfig.h index ed6853d60d9..42cbca9167b 100644 --- a/Examples/MAX32690/Bluetooth/RF_Test/FreeRTOSConfig.h +++ b/Examples/MAX32690/Bluetooth/RF_Test/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Bluetooth/RF_Test/Makefile b/Examples/MAX32690/Bluetooth/RF_Test/Makefile index 082a6783d23..d6ae4b890bf 100644 --- a/Examples/MAX32690/Bluetooth/RF_Test/Makefile +++ b/Examples/MAX32690/Bluetooth/RF_Test/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Bluetooth/RF_Test/README.md b/Examples/MAX32690/Bluetooth/RF_Test/README.md index cbc2dd93cb2..b14e9f8d4cf 100644 --- a/Examples/MAX32690/Bluetooth/RF_Test/README.md +++ b/Examples/MAX32690/Bluetooth/RF_Test/README.md @@ -6,7 +6,7 @@ Simple serial port console for FCC testing. ## LEDs -The red LED will indicate that an error assertion has occurred. +The red LED will indicate that an error assertion has occurred. The green LED indicates CPU activity. When the LED is on, the CPU is active, when the LED is off, the CPU is in sleep mode. @@ -28,17 +28,22 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Trace Serial Port When TRACE is enabled in the project.mk, the on-board USB-to-UART adapter can be used to view the trace messages and interact with the application. Open a serial port terminal with the following settings. -Baud : 115200 -Char size : 8 -Parity : None -Stop bits : 1 -HW Flow Control : No -SW Flow Control : No +Baud : 115200 +Char size : 8 +Parity : None +Stop bits : 1 +HW Flow Control : No +SW Flow Control : No ### Expected Output @@ -83,15 +88,15 @@ Test completed, numTx=1106 On RX test start (3) and stop (e) ``` -Receive RF channel 39, 1M PHY, forever .. -### LlApi ### LlRxTest, rfChan=39 -res = 0 (SUCCESS) -End test -### LlApi ### LlEndTest -Test completed, numTx=0 - numRxSuccess=658 - numRxCrcError=0 - numRxTimeout=0 +Receive RF channel 39, 1M PHY, forever .. +### LlApi ### LlRxTest, rfChan=39 +res = 0 (SUCCESS) +End test +### LlApi ### LlEndTest +Test completed, numTx=0 + numRxSuccess=658 + numRxCrcError=0 + numRxTimeout=0 ``` On TX Frequency Hop test start (9) and stop (e) diff --git a/Examples/MAX32690/Bluetooth/RF_Test/freertos_tickless.c b/Examples/MAX32690/Bluetooth/RF_Test/freertos_tickless.c index 61660ca9389..cc9813c097e 100644 --- a/Examples/MAX32690/Bluetooth/RF_Test/freertos_tickless.c +++ b/Examples/MAX32690/Bluetooth/RF_Test/freertos_tickless.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Bluetooth/RF_Test/main.c b/Examples/MAX32690/Bluetooth/RF_Test/main.c index 22f2e38ca2d..1a01be00a7f 100644 --- a/Examples/MAX32690/Bluetooth/RF_Test/main.c +++ b/Examples/MAX32690/Bluetooth/RF_Test/main.c @@ -246,8 +246,8 @@ uint8_t processEscSequence(uint8_t *seq) * * \brief adds latest command to command history buffer * - * \param q pointer to the circular buffer holding command history - * \param cmd pointer to the command string to be added + * \param q pointer to the circular buffer holding command history + * \param cmd pointer to the command string to be added * * \return None. */ @@ -274,9 +274,9 @@ void cmdHistoryAdd(queue_t *q, const uint8_t *cmd) * \fn updateQueuePointer. * * \brief Updates an internal marker pointing to historical command to be printed, based on up/down arrow - * - * \param q pointer to the circular buffer holding command history - * + * + * \param q pointer to the circular buffer holding command history + * * \param upArrow flag used to upated the queuePoniter delimiting which command to print * * \return None. @@ -396,9 +396,9 @@ void prompt(void) * \fn printHint * * \brief Prints the help string of any command matching the current inputbuffer - * + * * \param buff pointer to the inputbuffer - * + * * \return None. */ /*************************************************************************************************/ @@ -695,17 +695,25 @@ void txTestTask(void *pvParameters) snprintf(str, sizeof(str), "%s%s", str, (const char *)getPhyStr(phy)); APP_TRACE_INFO1("%s", str); + //Prevent FreeRTOS from context switching until the LL is finished + vTaskSuspendAll(); + /* stat test */ if (testConfig.testType == BLE_TX_TEST) { res = LlEnhancedTxTest(testConfig.channel, packetLen, packetType, phy, 0); } else { res = LlEnhancedRxTest(testConfig.channel, phy, 0, 0); } + xTaskResumeAll(); //Restore scheduler + APP_TRACE_INFO2("result = %u %s", res, res == LL_SUCCESS ? "(SUCCESS)" : "(FAIL)"); /* if duration value was given then let the test run that amount of time and end */ if (testConfig.duration_ms) { vTaskDelay(testConfig.duration_ms); + //Prevent FreeRTOS from context switching until the LL is finished + vTaskSuspendAll(); LlEndTest(NULL); + xTaskResumeAll(); //Restore scheduler xSemaphoreGive(rfTestMutex); } pausePrompt = false; diff --git a/Examples/MAX32690/Bluetooth/RF_Test/project.mk b/Examples/MAX32690/Bluetooth/RF_Test/project.mk index 233f8d87379..cd76b007a51 100644 --- a/Examples/MAX32690/Bluetooth/RF_Test/project.mk +++ b/Examples/MAX32690/Bluetooth/RF_Test/project.mk @@ -1,9 +1,26 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # ********************************************************** diff --git a/Examples/MAX32690/CAN/.vscode/README.md b/Examples/MAX32690/CAN/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/CAN/.vscode/README.md +++ b/Examples/MAX32690/CAN/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/CAN/.vscode/settings.json b/Examples/MAX32690/CAN/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/CAN/.vscode/settings.json +++ b/Examples/MAX32690/CAN/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/CAN/Makefile b/Examples/MAX32690/CAN/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/CAN/Makefile +++ b/Examples/MAX32690/CAN/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/CAN/README.md b/Examples/MAX32690/CAN/README.md index 052ec42aaad..45a93a56f63 100644 --- a/Examples/MAX32690/CAN/README.md +++ b/Examples/MAX32690/CAN/README.md @@ -29,6 +29,12 @@ If using the MAX32690FTHR: - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - Connect CAN signals on header J9 to CAN bus. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. +- Connect CAN signals on header P7 to CAN bus. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/CAN/main.c b/Examples/MAX32690/CAN/main.c index 8d1b92d32f0..37800deb726 100644 --- a/Examples/MAX32690/CAN/main.c +++ b/Examples/MAX32690/CAN/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/CAN/project.mk b/Examples/MAX32690/CAN/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/CAN/project.mk +++ b/Examples/MAX32690/CAN/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/CRC/.vscode/README.md b/Examples/MAX32690/CRC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/CRC/.vscode/README.md +++ b/Examples/MAX32690/CRC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/CRC/.vscode/settings.json b/Examples/MAX32690/CRC/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/CRC/.vscode/settings.json +++ b/Examples/MAX32690/CRC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/CRC/Makefile b/Examples/MAX32690/CRC/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/CRC/Makefile +++ b/Examples/MAX32690/CRC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/CRC/README.md b/Examples/MAX32690/CRC/README.md index a7a57885fe7..65ac67e54ec 100644 --- a/Examples/MAX32690/CRC/README.md +++ b/Examples/MAX32690/CRC/README.md @@ -23,6 +23,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/CRC/main.c b/Examples/MAX32690/CRC/main.c index 678db6bea57..cfb5a8a54a6 100644 --- a/Examples/MAX32690/CRC/main.c +++ b/Examples/MAX32690/CRC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/CRC/project.mk b/Examples/MAX32690/CRC/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/CRC/project.mk +++ b/Examples/MAX32690/CRC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/CTB_AES/.vscode/README.md b/Examples/MAX32690/CTB_AES/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/CTB_AES/.vscode/README.md +++ b/Examples/MAX32690/CTB_AES/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/CTB_AES/.vscode/settings.json b/Examples/MAX32690/CTB_AES/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/CTB_AES/.vscode/settings.json +++ b/Examples/MAX32690/CTB_AES/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/CTB_AES/Makefile b/Examples/MAX32690/CTB_AES/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/CTB_AES/Makefile +++ b/Examples/MAX32690/CTB_AES/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/CTB_AES/README.md b/Examples/MAX32690/CTB_AES/README.md index 70a087e925d..6a1a13ac968 100644 --- a/Examples/MAX32690/CTB_AES/README.md +++ b/Examples/MAX32690/CTB_AES/README.md @@ -23,6 +23,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/CTB_AES/main.c b/Examples/MAX32690/CTB_AES/main.c index e00cd69404c..7015f48efd4 100644 --- a/Examples/MAX32690/CTB_AES/main.c +++ b/Examples/MAX32690/CTB_AES/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/CTB_AES/project.mk b/Examples/MAX32690/CTB_AES/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/CTB_AES/project.mk +++ b/Examples/MAX32690/CTB_AES/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Coremark/.vscode/README.md b/Examples/MAX32690/Coremark/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Coremark/.vscode/README.md +++ b/Examples/MAX32690/Coremark/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Coremark/.vscode/settings.json b/Examples/MAX32690/Coremark/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/Coremark/.vscode/settings.json +++ b/Examples/MAX32690/Coremark/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Coremark/Makefile b/Examples/MAX32690/Coremark/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/Coremark/Makefile +++ b/Examples/MAX32690/Coremark/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Coremark/README.md b/Examples/MAX32690/Coremark/README.md index a826e114001..a6520499dae 100644 --- a/Examples/MAX32690/Coremark/README.md +++ b/Examples/MAX32690/Coremark/README.md @@ -29,6 +29,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/Coremark/project.mk b/Examples/MAX32690/Coremark/project.mk index 9ded8091069..a6efc624169 100644 --- a/Examples/MAX32690/Coremark/project.mk +++ b/Examples/MAX32690/Coremark/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/DMA/.vscode/README.md b/Examples/MAX32690/DMA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/DMA/.vscode/README.md +++ b/Examples/MAX32690/DMA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/DMA/.vscode/settings.json b/Examples/MAX32690/DMA/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/DMA/.vscode/settings.json +++ b/Examples/MAX32690/DMA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/DMA/Makefile b/Examples/MAX32690/DMA/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/DMA/Makefile +++ b/Examples/MAX32690/DMA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/DMA/README.md b/Examples/MAX32690/DMA/README.md index 5f12ba9245d..1d40cb7f02b 100644 --- a/Examples/MAX32690/DMA/README.md +++ b/Examples/MAX32690/DMA/README.md @@ -25,6 +25,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/DMA/main.c b/Examples/MAX32690/DMA/main.c index bc7965fb2d2..92ac146f44d 100644 --- a/Examples/MAX32690/DMA/main.c +++ b/Examples/MAX32690/DMA/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -56,7 +55,7 @@ void memCpyComplete(void *dest) flag++; } -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); } diff --git a/Examples/MAX32690/DMA/project.mk b/Examples/MAX32690/DMA/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/DMA/project.mk +++ b/Examples/MAX32690/DMA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.cproject b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.cproject new file mode 100644 index 00000000000..53264fef207 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.project b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.project new file mode 100644 index 00000000000..b99ceba5760 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.project @@ -0,0 +1,26 @@ + + + Dual_core_sync_arm + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.settings/language.settings.xml b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..9b1bd5007c2 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=Dual_core_sync_arm +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32690 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/README.md b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/README.md new file mode 100755 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/c_cpp_properties.json b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/flash.gdb b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/launch.json b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/settings.json b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/settings.json new file mode 100755 index 00000000000..abd00ff497a --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/settings.json @@ -0,0 +1,79 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32690", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32690.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/tasks.json b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/Dual_core_sync_arm.launch b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/Dual_core_sync_arm.launch new file mode 100644 index 00000000000..4c477c68e29 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/Dual_core_sync_arm.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/Makefile b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/Makefile new file mode 100644 index 00000000000..d6ae4b890bf --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32690 +TARGET_UC := MAX32690 +TARGET_LC := max32690 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/README.md b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/README.md new file mode 100644 index 00000000000..93a2e884a13 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/README.md @@ -0,0 +1,68 @@ +## Description + +Projects Dual_core_sync_arm and Dual_core_sync_riscv demonstrate loading the RISC-V core program from the ARM core and synchronizing these two cores by hardware semaphores. + +Dual_core_sync_arm runs on the ARM core (CM4) to load the RISC-V core (RV32) code space, setup the RISC-V debugger pins, and start the RISC-V core. + +The Dual_core_sync_riscv example runs on the the RISC-V core. + +Please refer to the App Note [The MAX32655: Why Two Cores Are Better Than One](https://www.maximintegrated.com/en/design/technical-documents/app-notes/7/7336.html) for more information. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +* This project comes pre-configured for the MAX32655EVKIT. See [Board Support Packages](https://analogdevicesinc.github.io/msdk/USERGUIDE/#board-support-packages) in the MSDK User Guide for instructions on changing the target board. + +* This project will build and load the `Dual_core_sync_riscv` example into the RISC-V core. See the [project.mk](project.mk) file and [Build Variables for RISC-V Cores](https://analogdevicesinc.github.io/msdk//USERGUIDE/#build-variables-for-risc-v-cores) documentation. + +## Required Connections + +Connect a MAXPICO or other supported Debug adapter to the SWD Connector. +- Note: Debug adapters other than the MAXPICO may not route the UART signals to the SWD connector. On MAX32690FTHR and AD-APARD32690-SL boards, this may limit your ability to access to serial port. + +If using the MAX32690EVKIT: +- Connect a USB cable between the PC and the CN2 (USB/PWR - UART) connector. +- Install JP7(RX_EN) and JP8(TX_EN) headers. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Close jumper JP5 (LED1 EN). +- Close jumper JP6 (LED2 EN). + +If using the MAX32690FTHR: +- Connect a USB cable between the PC and the J5 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. + +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + +## Expected Output + +The Console UART of the device will output these messages: + +``` +----------------------------------- +ARM : Start. +ARM : After init, CheckSema(0) returned NOT BUSY. +ARM : GetSema returned NOT BUSY with previous semaphore value 1. +ARM : Wait 2 secs then start the RISC-V core. + +RISC-V: Start. +RISC-V: After init, CheckSema(1) returned NOT BUSY. +RISC-V: GetSema returned NOT BUSY with previous semaphore value 1. +RISC-V: Do initialization works here. +RISC-V: Signal ARM. +ARM : Do initialization works here. +ARM : Signal RISC-V. +RISC-V: cnt=0 +ARM : cnt=1 +RISC-V: cnt=2 +ARM : cnt=3 +RISC-V: cnt=4 +ARM : cnt=5 +``` diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/main.c b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/main.c new file mode 100644 index 00000000000..dadae530711 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/main.c @@ -0,0 +1,139 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief A basic getting started program for the RISCV, run from the ARM + * core. + * @details Dual_core_sync_arm runs on the ARM core to load the RISCV code + * space, setup the RISCV debugger pins, and start the RISCV core. + */ + +/***** Includes *****/ +#include +#include +#include +#include "mxc_delay.h" +#include "mxc_device.h" +#include "mxc_sys.h" +#include "sema.h" + +/***** Definitions *****/ +#define DUAL_CORE_SYNC (1) + +#define NDX_ARM (0) +#define NDX_RISCV (1) + +#define MAILBOX_OVERHEAD (2 * sizeof(uint16_t)) +#define MAILBOX_PAYLOAD_LEN (MAILBOX_SIZE - MAILBOX_OVERHEAD) +typedef struct { + uint16_t readLocation; + uint16_t writeLocation; +#if (MAILBOX_SIZE == 0) + uint8_t payload[1]; +#else + uint8_t payload[MAILBOX_PAYLOAD_LEN]; +#endif +} mxcSemaBox_t; + +/***** Globals *****/ +extern mxcSemaBox_t *mxcSemaBox0; // ARM writes, RISCV reads, +extern mxcSemaBox_t *mxcSemaBox1; // ARM reads, RISCV writes + +/***** Functions *****/ + +// ***************************************************************************** +int main(void) +{ +#if DUAL_CORE_SYNC + printf("\n\n\n-----------------------------------\n"); + printf("ARM : Start.\n"); + + MXC_SEMA_Init(); + + int ret = MXC_SEMA_CheckSema(NDX_ARM); + printf("ARM : After init, CheckSema(%d) returned %s.\n", NDX_ARM, + ret == E_BUSY ? "BUSY" : "NOT BUSY"); + + if ((MXC_SEMA_GetSema(NDX_ARM)) == E_NO_ERROR) { + printf("ARM : GetSema returned NOT BUSY with previous semaphore value %d.\n", + MXC_SEMA->semaphores[NDX_ARM]); + } else { + printf("ARM : GetSema returned - BUSY - with previous semaphore value %d.\n", + MXC_SEMA->semaphores[NDX_ARM]); + } + + printf("ARM : Wait 2 secs then start the RISC-V core.\n"); +#endif + MXC_Delay(MXC_DELAY_SEC(2)); + + /* Enable RISCV debugger GPIO */ + MXC_GPIO_Config(&gpio_cfg_rv_jtag); + + /* Start the RISCV core */ + MXC_SYS_RISCVRun(); + +#if DUAL_CORE_SYNC + /* Wait the RISC-V core to start */ + ret = E_BUSY; + while (E_BUSY == ret) { + ret = MXC_SEMA_CheckSema(NDX_ARM); + } + MXC_SEMA_GetSema(NDX_ARM); + + /* Init code here. */ + printf("ARM : Do initialization works here.\n"); + MXC_SEMA_InitBoxes(); + + /* Signal RISC-V core to run */ + printf("ARM : Signal RISC-V.\n"); + MXC_SEMA_FreeSema(NDX_RISCV); + + uint32_t cnt; +#endif + /* Enter LPM */ + while (1) { +#if DUAL_CORE_SYNC + /* Wait */ + ret = MXC_SEMA_CheckSema(NDX_ARM); + if (E_BUSY != ret) { + MXC_SEMA_GetSema(NDX_ARM); + + /* Do the job. */ + // Retrieve the data from the mailbox1 + cnt = mxcSemaBox1->payload[0] << (8 * 0); + cnt += mxcSemaBox1->payload[1] << (8 * 1); + cnt += mxcSemaBox1->payload[2] << (8 * 2); + cnt += mxcSemaBox1->payload[3] << (8 * 3); + + printf("ARM : cnt=%d\n", cnt++); + + mxcSemaBox0->payload[0] = (cnt >> 8 * 0) & 0xFF; + mxcSemaBox0->payload[1] = (cnt >> 8 * 1) & 0xFF; + mxcSemaBox0->payload[2] = (cnt >> 8 * 2) & 0xFF; + mxcSemaBox0->payload[3] = (cnt >> 8 * 3) & 0xFF; + + /* Do other jobs here. */ + MXC_Delay(MXC_DELAY_SEC(1)); + + /* Signal */ + MXC_SEMA_FreeSema(NDX_RISCV); + } +#endif + } +} diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/project.mk b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/project.mk new file mode 100644 index 00000000000..1e149b1a44d --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_arm/project.mk @@ -0,0 +1,34 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Add your config here! + +# Load and start the RISCV core +RISCV_LOAD=1 + +# Directory for RISCV code +RISCV_APP=../Dual_core_sync_riscv + diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.cproject b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.cproject new file mode 100644 index 00000000000..e6511baa3ae --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.project b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.project new file mode 100644 index 00000000000..b0a35b3eff7 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.project @@ -0,0 +1,26 @@ + + + Dual_core_sync_riscv + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.settings/language.settings.xml b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..998d3f977da --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=Dual_core_sync_riscv +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32690 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/README.md b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/README.md new file mode 100755 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/c_cpp_properties.json b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/flash.gdb b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/launch.json b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/settings.json b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/settings.json new file mode 100755 index 00000000000..abd00ff497a --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/settings.json @@ -0,0 +1,79 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32690", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32690.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/tasks.json b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/Dual_core_sync_riscv.launch b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/Dual_core_sync_riscv.launch new file mode 100644 index 00000000000..4ecacdac267 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/Dual_core_sync_riscv.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/Makefile b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/Makefile new file mode 100644 index 00000000000..d6ae4b890bf --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32690 +TARGET_UC := MAX32690 +TARGET_LC := max32690 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/README.md b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/README.md new file mode 100644 index 00000000000..bcb50e9b578 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/README.md @@ -0,0 +1,40 @@ +## Description + +This version of Dual_core_sync_riscv prints an incrementing count to the console UART and toggles the LED0 every 500 ms. + +This project demonstrates the synchronization between the ARM core (CM4) and the RISC-V core (RV32). Please refer to the App Note [The MAX32655: Why Two Cores Are Better Than One](https://www.maximintegrated.com/en/design/technical-documents/app-notes/7/7336.html) for more information. Note, that doc is for the MAX32655. + +README file of project `MAX32690/Dual_Core_Sync/Dual_core_sync_arm` will present more details on the dual core synchronization. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +* This project comes pre-configured for the MAX32690EVKIT. See [Board Support Packages](https://analogdevicesinc.github.io/msdk/USERGUIDE/#board-support-packages) in the MSDK User Guide for instructions on changing the target board. + +* **This project is not typically compiled on its own**. Instead, the `Dual_core_sync_arm` project should be used to build and load it. + +## Required Connections + +Connect a MAXPICO or other supported Debug adapter to the SWD Connector. +- Note: Debug adapters other than the MAXPICO may not route the UART signals to the SWD connector. On MAX32690FTHR and AD-APARD32690-SL boards, this may limit your ability to access to serial port. + +If using the MAX32690EVKIT: +- Connect a USB cable between the PC and the CN2 (USB/PWR - UART) connector. +- Install JP7(RX_EN) and JP8(TX_EN) headers. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Close jumper JP5 (LED1 EN). +- Close jumper JP6 (LED2 EN). + +If using the MAX32690FTHR: +- Connect a USB cable between the PC and the J5 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. + +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/main.c b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/main.c new file mode 100644 index 00000000000..c131e70584e --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/main.c @@ -0,0 +1,134 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Dual-core synchronization demo code for RISC-V core. + * @details This example uses the UART to print to a terminal and flashes an + * LED. + */ + +/***** Includes *****/ +#include +#include +#include +#include "mxc_delay.h" +#include "mxc_device.h" +#include "board.h" +#include "led.h" +#include "pb.h" +#include "sema.h" + +/***** Definitions *****/ +#define DUAL_CORE_SYNC (1) + +#define NDX_ARM (0) +#define NDX_RISCV (1) + +#define MAILBOX_OVERHEAD (2 * sizeof(uint16_t)) +#define MAILBOX_PAYLOAD_LEN (MAILBOX_SIZE - MAILBOX_OVERHEAD) +typedef struct { + uint16_t readLocation; + uint16_t writeLocation; +#if (MAILBOX_SIZE == 0) + uint8_t payload[1]; +#else + uint8_t payload[MAILBOX_PAYLOAD_LEN]; +#endif +} mxcSemaBox_t; + +/***** Globals *****/ +extern mxcSemaBox_t *mxcSemaBox0; // ARM writes, RISCV reads, +extern mxcSemaBox_t *mxcSemaBox1; // ARM reads, RISCV writes + +/***** Functions *****/ + +// ***************************************************************************** +int main(void) +{ +#if DUAL_CORE_SYNC + printf("\nRISC-V: Start.\n"); +#else + printf("Start!\n"); +#endif + +#if DUAL_CORE_SYNC + MXC_SEMA_Init(); + + int ret = MXC_SEMA_CheckSema(NDX_RISCV); + printf("RISC-V: After init, CheckSema(%d) returned %s.\n", NDX_RISCV, + ret == E_BUSY ? "BUSY" : "NOT BUSY"); + + if ((MXC_SEMA_GetSema(NDX_RISCV)) == E_NO_ERROR) { + printf("RISC-V: GetSema returned NOT BUSY with previous semaphore value %d.\n", + MXC_SEMA->semaphores[NDX_RISCV]); + } else { + printf("RISC-V: GetSema returned - BUSY - with previous semaphore value %d.\n", + MXC_SEMA->semaphores[NDX_RISCV]); + } + + /* Init code here. */ + printf("RISC-V: Do initialization works here.\n"); + MXC_SEMA_InitBoxes(); + + /* Signal ARM core to run. */ + printf("RISC-V: Signal ARM.\n"); + MXC_SEMA_FreeSema(NDX_ARM); +#endif + + uint32_t cnt = 0; + + /* Enter LPM */ + while (1) { +#if DUAL_CORE_SYNC + /* Wait */ + int ret = MXC_SEMA_CheckSema(NDX_RISCV); + if (E_BUSY != ret) { + MXC_SEMA_GetSema(NDX_RISCV); + + /* Do the job */ + // Retrieve the data from the mailbox0 + cnt = mxcSemaBox0->payload[0] << (8 * 0); + cnt += mxcSemaBox0->payload[1] << (8 * 1); + cnt += mxcSemaBox0->payload[2] << (8 * 2); + cnt += mxcSemaBox0->payload[3] << (8 * 3); + + printf("RISC-V: cnt=%d\n", cnt++); +#else + printf("count = %d\n", cnt++); +#endif + +#if DUAL_CORE_SYNC + mxcSemaBox1->payload[0] = (cnt >> 8 * 0) & 0xFF; + mxcSemaBox1->payload[1] = (cnt >> 8 * 1) & 0xFF; + mxcSemaBox1->payload[2] = (cnt >> 8 * 2) & 0xFF; + mxcSemaBox1->payload[3] = (cnt >> 8 * 3) & 0xFF; + + /* Do other jobs here */ +#endif + LED_On(LED_RED); + MXC_Delay(500000); + LED_Off(LED_RED); + MXC_Delay(500000); +#if DUAL_CORE_SYNC + /* Signal */ + MXC_SEMA_FreeSema(NDX_ARM); + } +#endif + } +} diff --git a/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/project.mk b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/project.mk new file mode 100644 index 00000000000..9b3b950c446 --- /dev/null +++ b/Examples/MAX32690/Dual_Core_Sync/Dual_core_sync_riscv/project.mk @@ -0,0 +1,33 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Add your config here! + +# Build this project for the RISC-V core +# Note: This project is typically not compiled on its own. +# Use ../Dual_core_sync_arm, which will build this project for RISC-V and package it +# alongside the Arm code in the same binary. +RISCV_CORE=1 diff --git a/Examples/MAX32690/EEPROM_Emulator/.vscode/README.md b/Examples/MAX32690/EEPROM_Emulator/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/EEPROM_Emulator/.vscode/README.md +++ b/Examples/MAX32690/EEPROM_Emulator/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/EEPROM_Emulator/.vscode/settings.json b/Examples/MAX32690/EEPROM_Emulator/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/EEPROM_Emulator/.vscode/settings.json +++ b/Examples/MAX32690/EEPROM_Emulator/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/EEPROM_Emulator/Makefile b/Examples/MAX32690/EEPROM_Emulator/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/EEPROM_Emulator/Makefile +++ b/Examples/MAX32690/EEPROM_Emulator/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/EEPROM_Emulator/README.md b/Examples/MAX32690/EEPROM_Emulator/README.md index 7393cf96a9f..7fcb19da344 100644 --- a/Examples/MAX32690/EEPROM_Emulator/README.md +++ b/Examples/MAX32690/EEPROM_Emulator/README.md @@ -71,6 +71,13 @@ If using the MAX32690FTHR: - Connect pins SCL - P2.8 and SDA - P2.7 to the I2C Bus. - Connect Ready Signal (P1.11) to the pin used for ready signal on your micro. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. +- Connect pins SCL - P0.31 and SDL - P0.30 to the I2C Bus. +- Connect Ready Signal (P0.24) to the pin used for ready signal on your micro. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/EEPROM_Emulator/include/cache.h b/Examples/MAX32690/EEPROM_Emulator/include/cache.h index 7649fd67995..a7e3dde93d6 100644 --- a/Examples/MAX32690/EEPROM_Emulator/include/cache.h +++ b/Examples/MAX32690/EEPROM_Emulator/include/cache.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/EEPROM_Emulator/include/eeprom.h b/Examples/MAX32690/EEPROM_Emulator/include/eeprom.h index 2727467d75c..1e4906db55b 100644 --- a/Examples/MAX32690/EEPROM_Emulator/include/eeprom.h +++ b/Examples/MAX32690/EEPROM_Emulator/include/eeprom.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/EEPROM_Emulator/main.c b/Examples/MAX32690/EEPROM_Emulator/main.c index ea8fe6db8eb..0307713b100 100644 --- a/Examples/MAX32690/EEPROM_Emulator/main.c +++ b/Examples/MAX32690/EEPROM_Emulator/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -38,9 +37,13 @@ /***** Definitions *****/ #define EEPROM_I2C MXC_I2C0 + #if defined(EvKit_V1) #define SYNC_PIN_PORT MXC_GPIO2 #define SYNC_PIN_MASK MXC_GPIO_PIN_11 +#elif defined(BOARD_APARD) +#define SYNC_PIN_PORT MXC_GPIO0 +#define SYNC_PIN_MASK MXC_GPIO_PIN_24 #else #define SYNC_PIN_PORT MXC_GPIO1 #define SYNC_PIN_MASK MXC_GPIO_PIN_11 diff --git a/Examples/MAX32690/EEPROM_Emulator/project.mk b/Examples/MAX32690/EEPROM_Emulator/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32690/EEPROM_Emulator/project.mk +++ b/Examples/MAX32690/EEPROM_Emulator/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/EEPROM_Emulator/src/cache.c b/Examples/MAX32690/EEPROM_Emulator/src/cache.c index 510c373fe21..87adea21235 100644 --- a/Examples/MAX32690/EEPROM_Emulator/src/cache.c +++ b/Examples/MAX32690/EEPROM_Emulator/src/cache.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/EEPROM_Emulator/src/eeprom.c b/Examples/MAX32690/EEPROM_Emulator/src/eeprom.c index 22ede1df092..266766e2e42 100644 --- a/Examples/MAX32690/EEPROM_Emulator/src/eeprom.c +++ b/Examples/MAX32690/EEPROM_Emulator/src/eeprom.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Flash/.vscode/README.md b/Examples/MAX32690/Flash/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Flash/.vscode/README.md +++ b/Examples/MAX32690/Flash/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Flash/.vscode/settings.json b/Examples/MAX32690/Flash/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/Flash/.vscode/settings.json +++ b/Examples/MAX32690/Flash/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Flash/Makefile b/Examples/MAX32690/Flash/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/Flash/Makefile +++ b/Examples/MAX32690/Flash/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Flash/README.md b/Examples/MAX32690/Flash/README.md index 408240e02bf..ea630eeeb96 100644 --- a/Examples/MAX32690/Flash/README.md +++ b/Examples/MAX32690/Flash/README.md @@ -38,6 +38,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output After flashing and launching the example, an LED on the board will blink once every second. This is the application waiting for PushButton 1 (PB1) to be pressed, and gives a window for a serial terminal to be connected. After connecting the serial terminal, the application will output the following contents: diff --git a/Examples/MAX32690/Flash/main.c b/Examples/MAX32690/Flash/main.c index 8465867868e..8bf30c2d8d9 100644 --- a/Examples/MAX32690/Flash/main.c +++ b/Examples/MAX32690/Flash/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -60,7 +59,7 @@ volatile uint32_t isr_flags; //****************************************************************************** int button_pressed = 0; -void button_handler() +void button_handler(void) { button_pressed = 1; } @@ -121,7 +120,7 @@ void setup_irqs(void) isr_cnt = 0; } -int write_test_pattern() +int write_test_pattern(void) { int err; // A flash address must be in the erased state before writing to it, because the @@ -163,7 +162,7 @@ int write_test_pattern() return err; } -int validate_test_pattern() +int validate_test_pattern(void) { printf("Verifying test pattern...\n"); uint32_t readval = 0; @@ -180,7 +179,7 @@ int validate_test_pattern() return E_NO_ERROR; } -int erase_magic() +int erase_magic(void) { /* To modify a location in flash that has already been written to, diff --git a/Examples/MAX32690/Flash/project.mk b/Examples/MAX32690/Flash/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX32690/Flash/project.mk +++ b/Examples/MAX32690/Flash/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Flash_CLI/.vscode/README.md b/Examples/MAX32690/Flash_CLI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Flash_CLI/.vscode/README.md +++ b/Examples/MAX32690/Flash_CLI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Flash_CLI/.vscode/settings.json b/Examples/MAX32690/Flash_CLI/.vscode/settings.json index 3a48fd62b71..f26f9426c90 100755 --- a/Examples/MAX32690/Flash_CLI/.vscode/settings.json +++ b/Examples/MAX32690/Flash_CLI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Flash_CLI/FreeRTOSConfig.h b/Examples/MAX32690/Flash_CLI/FreeRTOSConfig.h index d87cc1d117f..7c6d6e43495 100644 --- a/Examples/MAX32690/Flash_CLI/FreeRTOSConfig.h +++ b/Examples/MAX32690/Flash_CLI/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Flash_CLI/Makefile b/Examples/MAX32690/Flash_CLI/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/Flash_CLI/Makefile +++ b/Examples/MAX32690/Flash_CLI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Flash_CLI/README.md b/Examples/MAX32690/Flash_CLI/README.md index 6a511e4faa6..4a39b714396 100644 --- a/Examples/MAX32690/Flash_CLI/README.md +++ b/Examples/MAX32690/Flash_CLI/README.md @@ -27,6 +27,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/Flash_CLI/definitions.h b/Examples/MAX32690/Flash_CLI/definitions.h index 0afe2b451c7..73b41c568b4 100644 --- a/Examples/MAX32690/Flash_CLI/definitions.h +++ b/Examples/MAX32690/Flash_CLI/definitions.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Flash_CLI/main.c b/Examples/MAX32690/Flash_CLI/main.c index c9c4749437b..440f830871b 100644 --- a/Examples/MAX32690/Flash_CLI/main.c +++ b/Examples/MAX32690/Flash_CLI/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Flash_CLI/project.mk b/Examples/MAX32690/Flash_CLI/project.mk index 52b9fb6a5d2..87f12d089ac 100644 --- a/Examples/MAX32690/Flash_CLI/project.mk +++ b/Examples/MAX32690/Flash_CLI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/FreeRTOSDemo/.vscode/README.md b/Examples/MAX32690/FreeRTOSDemo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/FreeRTOSDemo/.vscode/README.md +++ b/Examples/MAX32690/FreeRTOSDemo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/FreeRTOSDemo/.vscode/settings.json b/Examples/MAX32690/FreeRTOSDemo/.vscode/settings.json index 3a48fd62b71..f26f9426c90 100755 --- a/Examples/MAX32690/FreeRTOSDemo/.vscode/settings.json +++ b/Examples/MAX32690/FreeRTOSDemo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/FreeRTOSDemo/FreeRTOSConfig.h b/Examples/MAX32690/FreeRTOSDemo/FreeRTOSConfig.h index bcb1db15279..1634d9dd419 100644 --- a/Examples/MAX32690/FreeRTOSDemo/FreeRTOSConfig.h +++ b/Examples/MAX32690/FreeRTOSDemo/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/FreeRTOSDemo/Makefile b/Examples/MAX32690/FreeRTOSDemo/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/FreeRTOSDemo/Makefile +++ b/Examples/MAX32690/FreeRTOSDemo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/FreeRTOSDemo/README.md b/Examples/MAX32690/FreeRTOSDemo/README.md index fa07eb874ba..f6ffde50e26 100644 --- a/Examples/MAX32690/FreeRTOSDemo/README.md +++ b/Examples/MAX32690/FreeRTOSDemo/README.md @@ -1,6 +1,6 @@ ## Description -A basic getting started application for FreeRTOS. +A basic getting started application for FreeRTOS. ## Software @@ -25,6 +25,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: @@ -36,5 +41,5 @@ Starting scheduler. Uptime is 0x00000000 (0 seconds), tickless-idle is disabled Enter 'help' to view a list of available commands. -cmd> +cmd> ``` diff --git a/Examples/MAX32690/FreeRTOSDemo/freertos_tickless.c b/Examples/MAX32690/FreeRTOSDemo/freertos_tickless.c index 000acd3b92f..6fc84f7cc72 100644 --- a/Examples/MAX32690/FreeRTOSDemo/freertos_tickless.c +++ b/Examples/MAX32690/FreeRTOSDemo/freertos_tickless.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/FreeRTOSDemo/main.c b/Examples/MAX32690/FreeRTOSDemo/main.c index b311a76a8ac..afcb26f51f9 100644 --- a/Examples/MAX32690/FreeRTOSDemo/main.c +++ b/Examples/MAX32690/FreeRTOSDemo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/FreeRTOSDemo/project.mk b/Examples/MAX32690/FreeRTOSDemo/project.mk index 52b9fb6a5d2..87f12d089ac 100644 --- a/Examples/MAX32690/FreeRTOSDemo/project.mk +++ b/Examples/MAX32690/FreeRTOSDemo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/GPIO/.vscode/README.md b/Examples/MAX32690/GPIO/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/GPIO/.vscode/README.md +++ b/Examples/MAX32690/GPIO/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/GPIO/.vscode/settings.json b/Examples/MAX32690/GPIO/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/GPIO/.vscode/settings.json +++ b/Examples/MAX32690/GPIO/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/GPIO/Makefile b/Examples/MAX32690/GPIO/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/GPIO/Makefile +++ b/Examples/MAX32690/GPIO/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/GPIO/README.md b/Examples/MAX32690/GPIO/README.md index bf53bfe2a01..586260f706e 100644 --- a/Examples/MAX32690/GPIO/README.md +++ b/Examples/MAX32690/GPIO/README.md @@ -2,7 +2,7 @@ Basic GPIO input, output, and interrupts are demonstrated in this example. -P2.11 (P1.11 on MAX32690FTHR) is continuously scanned and whatever value is read on that pin is then output to LED 1. An interrupt is set up on P2.11, LED 2 is toggled on each falling edge. +P2.11 (P1.11 on MAX32690FTHR, P1.27 on APARD) is continuously scanned and whatever value is read on that pin is then output to LED 1. An interrupt is set up on P2.11, LED 2 is toggled on each falling edge. ## Software @@ -29,6 +29,11 @@ If using the MAX32690FTHR: - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - Connect pin P1.11 (on header J1, 5th pin) and ground (on header J2, 4th pin). +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages (pin numbers will may be different depending on which board the example is built for): diff --git a/Examples/MAX32690/GPIO/main.c b/Examples/MAX32690/GPIO/main.c index f88f7838ae5..35b09b7645b 100644 --- a/Examples/MAX32690/GPIO/main.c +++ b/Examples/MAX32690/GPIO/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -41,10 +40,16 @@ #else #define MXC_GPIO_PORT_IN MXC_GPIO1 #endif -#define MXC_GPIO_PIN_IN MXC_GPIO_PIN_11 +#if defined(BOARD_APARD) +#define MXC_GPIO_PIN_IN MXC_GPIO_PIN_27 +#define MXC_GPIO_PORT_OUT MXC_GPIO2 +#define MXC_GPIO_PIN_OUT MXC_GPIO_PIN_1 +#else +#define MXC_GPIO_PIN_IN MXC_GPIO_PIN_11 #define MXC_GPIO_PORT_OUT MXC_GPIO0 #define MXC_GPIO_PIN_OUT MXC_GPIO_PIN_14 +#endif #if defined(EvKit_V1) #define MXC_GPIO_PORT_INTERRUPT_STATUS MXC_GPIO2 @@ -74,8 +79,13 @@ int main(void) mxc_gpio_cfg_t gpio_interrupt_status; printf("\n\n************************* GPIO Example ***********************\n\n"); +#if defined(BOARD_APARD) + printf("1. This example reads P%d.27 and outputs the same state onto P2.1.\n", + MXC_GPIO_GET_IDX(MXC_GPIO_PORT_IN)); +#else printf("1. This example reads P%d.11 and outputs the same state onto P0.14.\n", MXC_GPIO_GET_IDX(MXC_GPIO_PORT_IN)); +#endif #if defined(EvKit_V1) printf("2. A falling edge interrupt is set up on P2.11. P2.12 toggles when\n"); printf(" that interrupt occurs.\n\n"); diff --git a/Examples/MAX32690/GPIO/project.mk b/Examples/MAX32690/GPIO/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/GPIO/project.mk +++ b/Examples/MAX32690/GPIO/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/HBMC/.vscode/README.md b/Examples/MAX32690/HBMC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/HBMC/.vscode/README.md +++ b/Examples/MAX32690/HBMC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/HBMC/.vscode/settings.json b/Examples/MAX32690/HBMC/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/HBMC/.vscode/settings.json +++ b/Examples/MAX32690/HBMC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/HBMC/Makefile b/Examples/MAX32690/HBMC/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/HBMC/Makefile +++ b/Examples/MAX32690/HBMC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/HBMC/README.md b/Examples/MAX32690/HBMC/README.md index 51b881657a1..0c42b990978 100644 --- a/Examples/MAX32690/HBMC/README.md +++ b/Examples/MAX32690/HBMC/README.md @@ -5,7 +5,7 @@ This example demonstrates the use of the HyperBus Memory Controller. A function to blink an LED (found in ramfunc.c) is copied to external memory and executed from there. The type of external memory can be selected using the "HYPERRAM" or "XCCELABUS" and the chip select can be selected with "HBMC_CS". *** Note ***: On the MAX32690 EV Kit, the external memory type is HyperRAM and the chip select used is 0. - +*** Note ***: On the AD-APARD32690-SL, the external memory type is HyperRAM. There are two devices, at chip select 0 and chip select 1. ## Software ### Project Usage @@ -18,9 +18,15 @@ Universal instructions on building, flashing, and debugging this project can be ## Required Connections +If using the MAX32690EVKIT - Connect a USB cable between the PC and the CN2 (USB/PWR) connector. - Open an terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/HBMC/main.c b/Examples/MAX32690/HBMC/main.c index b49ff8f8967..27323d5a253 100644 --- a/Examples/MAX32690/HBMC/main.c +++ b/Examples/MAX32690/HBMC/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/HBMC/project.mk b/Examples/MAX32690/HBMC/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/HBMC/project.mk +++ b/Examples/MAX32690/HBMC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/HBMC/ramfunc.c b/Examples/MAX32690/HBMC/ramfunc.c index eba4ca086d2..e4a5205414c 100644 --- a/Examples/MAX32690/HBMC/ramfunc.c +++ b/Examples/MAX32690/HBMC/ramfunc.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Hash/.vscode/README.md b/Examples/MAX32690/Hash/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Hash/.vscode/README.md +++ b/Examples/MAX32690/Hash/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Hash/.vscode/settings.json b/Examples/MAX32690/Hash/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/Hash/.vscode/settings.json +++ b/Examples/MAX32690/Hash/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Hash/Makefile b/Examples/MAX32690/Hash/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/Hash/Makefile +++ b/Examples/MAX32690/Hash/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Hash/README.md b/Examples/MAX32690/Hash/README.md index 728151eae72..ef93028257b 100644 --- a/Examples/MAX32690/Hash/README.md +++ b/Examples/MAX32690/Hash/README.md @@ -1,6 +1,6 @@ ## Description -This example demonstrates the use of the CTB Hash Function: SHA-256. +This example demonstrates the use of the CTB Hash Function: SHA-256. ## Software @@ -23,6 +23,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/Hash/main.c b/Examples/MAX32690/Hash/main.c index 2a7f6201b9d..afef730b394 100644 --- a/Examples/MAX32690/Hash/main.c +++ b/Examples/MAX32690/Hash/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Hash/project.mk b/Examples/MAX32690/Hash/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/Hash/project.mk +++ b/Examples/MAX32690/Hash/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Hello_World/.vscode/README.md b/Examples/MAX32690/Hello_World/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Hello_World/.vscode/README.md +++ b/Examples/MAX32690/Hello_World/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Hello_World/.vscode/settings.json b/Examples/MAX32690/Hello_World/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/Hello_World/.vscode/settings.json +++ b/Examples/MAX32690/Hello_World/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Hello_World/Makefile b/Examples/MAX32690/Hello_World/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/Hello_World/Makefile +++ b/Examples/MAX32690/Hello_World/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Hello_World/README.md b/Examples/MAX32690/Hello_World/README.md index b91490ab395..30ec8756368 100644 --- a/Examples/MAX32690/Hello_World/README.md +++ b/Examples/MAX32690/Hello_World/README.md @@ -16,8 +16,11 @@ Universal instructions on building, flashing, and debugging this project can be ## Required Connections +Connect a MAXPICO or other supported Debug adapter to the SWD Connector. +- Note: Debug adapters other than the MAXPICO may not route the UART signals to the SWD connector. On MAX32690FTHR and AD-APARD32690-SL boards, this may limit your ability to access to serial port. + If using the MAX32690EVKIT: -- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. +- Connect a USB cable between the PC and the CN2 (USB/PWR - UART) connector. - Install JP7(RX_EN) and JP8(TX_EN) headers. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - Close jumper JP5 (LED1 EN). @@ -27,6 +30,10 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/Hello_World/main.c b/Examples/MAX32690/Hello_World/main.c index b96987cdbed..5a4ce99ba9d 100644 --- a/Examples/MAX32690/Hello_World/main.c +++ b/Examples/MAX32690/Hello_World/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Hello_World/project.mk b/Examples/MAX32690/Hello_World/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/Hello_World/project.mk +++ b/Examples/MAX32690/Hello_World/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Hello_World_Cpp/.vscode/README.md b/Examples/MAX32690/Hello_World_Cpp/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Hello_World_Cpp/.vscode/README.md +++ b/Examples/MAX32690/Hello_World_Cpp/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Hello_World_Cpp/.vscode/settings.json b/Examples/MAX32690/Hello_World_Cpp/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/Hello_World_Cpp/.vscode/settings.json +++ b/Examples/MAX32690/Hello_World_Cpp/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Hello_World_Cpp/Makefile b/Examples/MAX32690/Hello_World_Cpp/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/Hello_World_Cpp/Makefile +++ b/Examples/MAX32690/Hello_World_Cpp/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Hello_World_Cpp/README.md b/Examples/MAX32690/Hello_World_Cpp/README.md index 1713fb3e5a2..d032f78e50c 100644 --- a/Examples/MAX32690/Hello_World_Cpp/README.md +++ b/Examples/MAX32690/Hello_World_Cpp/README.md @@ -27,6 +27,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/Hello_World_Cpp/main.cpp b/Examples/MAX32690/Hello_World_Cpp/main.cpp index daade0e995d..fdf8363cde1 100644 --- a/Examples/MAX32690/Hello_World_Cpp/main.cpp +++ b/Examples/MAX32690/Hello_World_Cpp/main.cpp @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -66,7 +65,7 @@ class LED { int blink_count; }; -int main() +int main(void) { LED led = LED(0); diff --git a/Examples/MAX32690/Hello_World_Cpp/project.mk b/Examples/MAX32690/Hello_World_Cpp/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX32690/Hello_World_Cpp/project.mk +++ b/Examples/MAX32690/Hello_World_Cpp/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/I2C/.vscode/README.md b/Examples/MAX32690/I2C/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/I2C/.vscode/README.md +++ b/Examples/MAX32690/I2C/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/I2C/.vscode/settings.json b/Examples/MAX32690/I2C/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/I2C/.vscode/settings.json +++ b/Examples/MAX32690/I2C/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/I2C/Makefile b/Examples/MAX32690/I2C/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/I2C/Makefile +++ b/Examples/MAX32690/I2C/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/I2C/main.c b/Examples/MAX32690/I2C/main.c index 73e1afe646e..b40dd1bbc4f 100644 --- a/Examples/MAX32690/I2C/main.c +++ b/Examples/MAX32690/I2C/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -191,7 +190,7 @@ int verifyData(void) } // ***************************************************************************** -int main() +int main(void) { printf("\n******** I2C Master-Slave Transaction Demo *********\n"); printf("\nThis example uses one I2C peripheral as a master to\n"); diff --git a/Examples/MAX32690/I2C/project.mk b/Examples/MAX32690/I2C/project.mk index 96eb02eae1d..afab9ce04db 100644 --- a/Examples/MAX32690/I2C/project.mk +++ b/Examples/MAX32690/I2C/project.mk @@ -1,5 +1,22 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration -# variables. These variables are defined in a file called +# variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see @@ -13,3 +30,10 @@ # For more information on how sing process works, see # https://www.analog.com/en/education/education-library/videos/6313214207112.html SBT=0 + +# Due to the board design and I2C errata, the APARD board does not currently +# support the I2C loopback example. See other I2C example projects for I2C +# implementations +ifeq ($(BOARD),APARD) +$(error ERR_NOTSUPPORTED: This project is not supported for the AD-APARD32690 board) +endif \ No newline at end of file diff --git a/Examples/MAX32690/I2C_MNGR/.vscode/README.md b/Examples/MAX32690/I2C_MNGR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/I2C_MNGR/.vscode/README.md +++ b/Examples/MAX32690/I2C_MNGR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/I2C_MNGR/.vscode/settings.json b/Examples/MAX32690/I2C_MNGR/.vscode/settings.json index f18f0aedc1f..544926050bd 100755 --- a/Examples/MAX32690/I2C_MNGR/.vscode/settings.json +++ b/Examples/MAX32690/I2C_MNGR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/I2C_MNGR/FreeRTOSConfig.h b/Examples/MAX32690/I2C_MNGR/FreeRTOSConfig.h index ae6a51a2d11..85eb138ffc6 100644 --- a/Examples/MAX32690/I2C_MNGR/FreeRTOSConfig.h +++ b/Examples/MAX32690/I2C_MNGR/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/I2C_MNGR/Makefile b/Examples/MAX32690/I2C_MNGR/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/I2C_MNGR/Makefile +++ b/Examples/MAX32690/I2C_MNGR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/I2C_MNGR/README.md b/Examples/MAX32690/I2C_MNGR/README.md index 2c1673b4877..4f443f30eda 100644 --- a/Examples/MAX32690/I2C_MNGR/README.md +++ b/Examples/MAX32690/I2C_MNGR/README.md @@ -2,7 +2,7 @@ This example shows how to manage multiple I2C transaction requests to the same I2C instance. To demonstrate, an I2C manager is used to ensure conflicting I2C requests (which could be submitted concurrently) don't interfere with one another. -More specifically, in this example the EEPROM0 task attempts to read data from EEPROM0 every 100ms at a bus frequency of 100kHz and the EEPROM1 task attempts to read data from EEPROM1 every 50ms at a bus frequency of 400kHz. The I2C manager protects the I2C instance from having to service both requests simultaneously by locking the instance while it's executing a transaction. If a transaction request is started while another transaction is executing, the requested transaction will wait for the I2C instance to be unlocked before submitting the request. +More specifically, in this example the EEPROM0 task attempts to read data from EEPROM0 every 100ms at a bus frequency of 100kHz and the EEPROM1 task attempts to read data from EEPROM1 every 50ms at a bus frequency of 400kHz. The I2C manager protects the I2C instance from having to service both requests simultaneously by locking the instance while it's executing a transaction. If a transaction request is started while another transaction is executing, the requested transaction will wait for the I2C instance to be unlocked before submitting the request. You may change the configuration of each EEPROM's I2C transaction parameters (slave address, bus frequency, EEPROM read address, transaction interval, I2C timeout) by modifying their definitions at the top of main. @@ -35,6 +35,14 @@ If using the MAX32690FTHR: - Connect P2.7 on header J1 to the SDA line of the I2C Bus. - Connect two EEPROM IC's to the I2C Bus. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. +- Connect P0.31 on P13 to the SCL line of the I2C Bus. +- Connect P0.30 on P13 to the SDA line of the I2C Bus. +- Connect two EEPROM IC's to the I2C Bus. + ## Expected Output The Console UART of the device will output these messages: @@ -49,4 +57,4 @@ LED1 is toggled each time the read from EEPROM0 is executed and LED2 is toggled each time the read from EEPROM1 is executed. Starting scheduler. -``` +``` diff --git a/Examples/MAX32690/I2C_MNGR/i2c_mngr/i2c_mngr.c b/Examples/MAX32690/I2C_MNGR/i2c_mngr/i2c_mngr.c index 2677dfbbda2..d2c41b1d609 100644 --- a/Examples/MAX32690/I2C_MNGR/i2c_mngr/i2c_mngr.c +++ b/Examples/MAX32690/I2C_MNGR/i2c_mngr/i2c_mngr.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +38,7 @@ typedef struct { static i2c_txn_mngr_t s_mngr; /******************************************************************************/ -int I2C_MNGR_Init() +int I2C_MNGR_Init(void) { s_mngr.inst0 = MXC_I2C0; s_mngr.inst1 = MXC_I2C1; diff --git a/Examples/MAX32690/I2C_MNGR/i2c_mngr/i2c_mngr.h b/Examples/MAX32690/I2C_MNGR/i2c_mngr/i2c_mngr.h index 0ee8df0941d..a4942695cbe 100644 --- a/Examples/MAX32690/I2C_MNGR/i2c_mngr/i2c_mngr.h +++ b/Examples/MAX32690/I2C_MNGR/i2c_mngr/i2c_mngr.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +54,7 @@ typedef struct { * @brief Initializes I2C transaction manager * @return #E_NO_ERROR if succeeded, error code otherwise */ -int I2C_MNGR_Init(); +int I2C_MNGR_Init(void); /* * @brief Executes I2C transaction diff --git a/Examples/MAX32690/I2C_MNGR/main.c b/Examples/MAX32690/I2C_MNGR/main.c index 683ddaea24c..fdc3f6fc3fc 100644 --- a/Examples/MAX32690/I2C_MNGR/main.c +++ b/Examples/MAX32690/I2C_MNGR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/I2C_MNGR/project.mk b/Examples/MAX32690/I2C_MNGR/project.mk index c006c3ef927..c00f7984c3a 100644 --- a/Examples/MAX32690/I2C_MNGR/project.mk +++ b/Examples/MAX32690/I2C_MNGR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/I2C_SCAN/.vscode/README.md b/Examples/MAX32690/I2C_SCAN/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/I2C_SCAN/.vscode/README.md +++ b/Examples/MAX32690/I2C_SCAN/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/I2C_SCAN/.vscode/settings.json b/Examples/MAX32690/I2C_SCAN/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/I2C_SCAN/.vscode/settings.json +++ b/Examples/MAX32690/I2C_SCAN/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/I2C_SCAN/Makefile b/Examples/MAX32690/I2C_SCAN/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/I2C_SCAN/Makefile +++ b/Examples/MAX32690/I2C_SCAN/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/I2C_SCAN/README.md b/Examples/MAX32690/I2C_SCAN/README.md index 69ab070b0fa..e368c65f4f5 100644 --- a/Examples/MAX32690/I2C_SCAN/README.md +++ b/Examples/MAX32690/I2C_SCAN/README.md @@ -29,6 +29,13 @@ If using the MAX32690FTHR: - Select the proper pullup voltage for I2C0 using jumper J6. - Connect I2C0 (SDA - P2.7, SCL - P2.8) to I2C bus. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. +- Connect I2C0 (SDA - P0.30, SCL - P0.31) to I2C bus. + + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/I2C_SCAN/main.c b/Examples/MAX32690/I2C_SCAN/main.c index 86918e6c59a..c5c26bf2b1f 100644 --- a/Examples/MAX32690/I2C_SCAN/main.c +++ b/Examples/MAX32690/I2C_SCAN/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -41,7 +40,7 @@ #define I2C_FREQ 100000 // 100kHZ // ***************************************************************************** -int main() +int main(void) { uint8_t counter = 0; diff --git a/Examples/MAX32690/I2C_SCAN/project.mk b/Examples/MAX32690/I2C_SCAN/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/I2C_SCAN/project.mk +++ b/Examples/MAX32690/I2C_SCAN/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/I2C_Sensor/.vscode/README.md b/Examples/MAX32690/I2C_Sensor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/I2C_Sensor/.vscode/README.md +++ b/Examples/MAX32690/I2C_Sensor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/I2C_Sensor/.vscode/settings.json b/Examples/MAX32690/I2C_Sensor/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/I2C_Sensor/.vscode/settings.json +++ b/Examples/MAX32690/I2C_Sensor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/I2C_Sensor/Makefile b/Examples/MAX32690/I2C_Sensor/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/I2C_Sensor/Makefile +++ b/Examples/MAX32690/I2C_Sensor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/I2C_Sensor/README.md b/Examples/MAX32690/I2C_Sensor/README.md index 5ebbe40ef97..0b09ede5b57 100644 --- a/Examples/MAX32690/I2C_Sensor/README.md +++ b/Examples/MAX32690/I2C_Sensor/README.md @@ -29,6 +29,13 @@ If using the MAX32690FTHR: - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - You must connect P2.8 (SCL), P2.7 (SDA), VDD and GND to corresponding pins of MAX31889 EVKIT_A board (via J1 header). +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. +- You must connect P0.31 (SCL), P0.30 (SDA), VDD and GND to corresponding pins of MAX31889 EVKIT_A board (via P13). + + ## Expected Output ``` diff --git a/Examples/MAX32690/I2C_Sensor/main.c b/Examples/MAX32690/I2C_Sensor/main.c index 3f1a15b31ec..644dc6ab609 100644 --- a/Examples/MAX32690/I2C_Sensor/main.c +++ b/Examples/MAX32690/I2C_Sensor/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/I2C_Sensor/project.mk b/Examples/MAX32690/I2C_Sensor/project.mk index 3c3d48bae58..10189356cf4 100644 --- a/Examples/MAX32690/I2C_Sensor/project.mk +++ b/Examples/MAX32690/I2C_Sensor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/I2S/.vscode/README.md b/Examples/MAX32690/I2S/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/I2S/.vscode/README.md +++ b/Examples/MAX32690/I2S/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/I2S/.vscode/settings.json b/Examples/MAX32690/I2S/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/I2S/.vscode/settings.json +++ b/Examples/MAX32690/I2S/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/I2S/Makefile b/Examples/MAX32690/I2S/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/I2S/Makefile +++ b/Examples/MAX32690/I2S/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/I2S/README.md b/Examples/MAX32690/I2S/README.md index 5b2c350a066..08615f35808 100644 --- a/Examples/MAX32690/I2S/README.md +++ b/Examples/MAX32690/I2S/README.md @@ -23,6 +23,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output ``` diff --git a/Examples/MAX32690/I2S/main.c b/Examples/MAX32690/I2S/main.c index f92be80e2e5..5eca857201f 100644 --- a/Examples/MAX32690/I2S/main.c +++ b/Examples/MAX32690/I2S/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -73,7 +72,7 @@ void i2s_dma_cb(int ch, int err) #endif /*****************************************************************/ -int main() +int main(void) { int err; mxc_i2s_req_t req; diff --git a/Examples/MAX32690/I2S/project.mk b/Examples/MAX32690/I2S/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/I2S/project.mk +++ b/Examples/MAX32690/I2S/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/I2S_DMA_Target/.cproject b/Examples/MAX32690/I2S_DMA_Target/.cproject new file mode 100644 index 00000000000..c92db2c875b --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/I2S_DMA_Target/.project b/Examples/MAX32690/I2S_DMA_Target/.project new file mode 100644 index 00000000000..def5164af54 --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/.project @@ -0,0 +1,26 @@ + + + I2S_DMA_Target + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32690/I2S_DMA_Target/.settings/language.settings.xml b/Examples/MAX32690/I2S_DMA_Target/.settings/language.settings.xml new file mode 100644 index 00000000000..07f8c1baaff --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Examples/MAX32690/I2S_DMA_Target/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32690/I2S_DMA_Target/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32690/I2S_DMA_Target/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32690/I2S_DMA_Target/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..e4600739070 --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=I2S_DMA_Target +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32690 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32690/I2S_DMA_Target/.settings/org.eclipse.core.resources.prefs b/Examples/MAX32690/I2S_DMA_Target/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 00000000000..99f26c0203a --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.vscode/README.md b/Examples/MAX32690/I2S_DMA_Target/.vscode/README.md old mode 100755 new mode 100644 similarity index 100% rename from Examples/MAX32650/USB/USB_CompositeDevice_MSC_HID/.vscode/README.md rename to Examples/MAX32690/I2S_DMA_Target/.vscode/README.md diff --git a/Examples/MAX32690/I2S_DMA_Target/.vscode/c_cpp_properties.json b/Examples/MAX32690/I2S_DMA_Target/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32690/I2S_DMA_Target/.vscode/flash.gdb b/Examples/MAX32690/I2S_DMA_Target/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32690/I2S_DMA_Target/.vscode/launch.json b/Examples/MAX32690/I2S_DMA_Target/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32690/I2S_DMA_Target/.vscode/settings.json b/Examples/MAX32690/I2S_DMA_Target/.vscode/settings.json new file mode 100644 index 00000000000..a209e7ed809 --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/.vscode/settings.json @@ -0,0 +1,71 @@ +{ + "terminal.integrated.env.windows": { + "Path": "${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + "terminal.integrated.env.linux": { + "PATH": "${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH": "${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "MAXIM_PATH": "${config:MAXIM_PATH}" + }, + "target": "MAX32690", + "board": "EvKit_V1", + "project_name": "${workspaceFolderBasename}", + "program_file": "${config:project_name}.elf", + "symbol_file": "${config:program_file}", + "M4_OCD_interface_file": "cmsis-dap.cfg", + "M4_OCD_target_file": "max32690.cfg", + "RV_OCD_interface_file": "ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file": "${config:target}_riscv.cfg", + "v_Arm_GCC": "10.3", + "v_xPack_GCC": "12.2.0-3.1", + "OCD_path": "${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path": "${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path": "${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path": "${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path": "${config:MAXIM_PATH}/Tools/MSYS2", + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers" + ], + "C_Cpp.default.defines": [], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ], + "files.associations": { + "mxc_sys.h": "c" + } +} \ No newline at end of file diff --git a/Examples/MAX32690/I2S_DMA_Target/.vscode/tasks.json b/Examples/MAX32690/I2S_DMA_Target/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32690/I2S_DMA_Target/I2S_DMA_Target.launch b/Examples/MAX32690/I2S_DMA_Target/I2S_DMA_Target.launch new file mode 100644 index 00000000000..e6313c058c7 --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/I2S_DMA_Target.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/I2S_DMA_Target/Makefile b/Examples/MAX32690/I2S_DMA_Target/Makefile new file mode 100644 index 00000000000..ed9d56c5258 --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/Makefile @@ -0,0 +1,383 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. + # (now owned by Analog Devices, Inc.), + # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software + # is proprietary to Analog Devices, Inc. and its licensors. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32690 +TARGET_UC := MAX32690 +TARGET_LC := max32690 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32690/I2S_DMA_Target/README.md b/Examples/MAX32690/I2S_DMA_Target/README.md new file mode 100644 index 00000000000..a42e826884b --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/README.md @@ -0,0 +1,36 @@ +## Description + +This application demonstrates simultaneous CODEC recording and playback using DMA. + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +* This project comes pre-configured for the MAX32690 Ev-Kit. It is only compatible with that board. + +## Setup + +Using the MAX78000 Feather board: +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. +- Connect a line-in source to J5 connector. +- Connect a headphone to J6 connector. +- Optionally open a terminal application on the PC and connect to the EV feather's console UART at 115200, 8-N-1. +- Change JP10 jumper to SCL +- Change JP9 jumper to SDA + +## Expected Output + +The Console UART of the device will output these messages: + +``` +***** MAX9867 CODEC DMA Loopback Example ***** +Waiting... +Running... +I2C initialized successfully +Codec initialized successfully +I2S initialized successfully +``` diff --git a/Examples/MAX32690/I2S_DMA_Target/main.c b/Examples/MAX32690/I2S_DMA_Target/main.c new file mode 100644 index 00000000000..11c3f81c341 --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/main.c @@ -0,0 +1,219 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. + * (now owned by Analog Devices, Inc.), + * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software + * is proprietary to Analog Devices, Inc. and its licensors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Main for I2S CODEC loopback + * @details I2S CODEC loopback using DMA + */ + +#include +#include +#include "board.h" +#include "mxc_device.h" +#include "mxc_delay.h" +#include "dma.h" +#include "nvic_table.h" +#include "i2s.h" +#include "led.h" +#include "max9867.h" + +#undef USE_I2S_INTERRUPTS + +#define CODEC_I2C MXC_I2C2 +#define CODEC_I2C_FREQ 100000 + +#define CODEC_MCLOCK 12288000 +#define SAMPLE_RATE 48000 + +#define I2S_DMA_BUFFER_SIZE 64 + +volatile int dma_flag; +uint32_t i2s_rx_buffer[I2S_DMA_BUFFER_SIZE * 2]; +int dma_ch_tx, dma_ch_rx; +uint32_t *rxBufPtr = i2s_rx_buffer; + +void blink_halt(const char *msg) +{ + if (msg && *msg) + puts(msg); + + for (;;) { + LED_On(LED1); + LED_Off(LED2); + MXC_Delay(MXC_DELAY_MSEC(500)); + LED_On(LED2); + LED_Off(LED1); + MXC_Delay(MXC_DELAY_MSEC(500)); + } +} + +void dma_handler(void) +{ + dma_flag = 1; + MXC_DMA_Handler(); +} + +void dma_init(void) +{ + MXC_NVIC_SetVector(DMA0_IRQn, dma_handler); + MXC_NVIC_SetVector(DMA1_IRQn, dma_handler); + NVIC_EnableIRQ(DMA0_IRQn); + NVIC_EnableIRQ(DMA1_IRQn); +} + +void dma_callback(int channel, int result) +{ + static uint32_t *tx_buf = i2s_rx_buffer + I2S_DMA_BUFFER_SIZE; + + if (channel == dma_ch_tx) { + MXC_DMA_ReleaseChannel(dma_ch_tx); + dma_ch_tx = MXC_I2S_TXDMAConfig(tx_buf, I2S_DMA_BUFFER_SIZE * sizeof(i2s_rx_buffer[0])); + + } else if (channel == dma_ch_rx) { + tx_buf = rxBufPtr; + + if (rxBufPtr == i2s_rx_buffer) { + rxBufPtr = i2s_rx_buffer + I2S_DMA_BUFFER_SIZE; + } else { + rxBufPtr = i2s_rx_buffer; + } + MXC_DMA_ReleaseChannel(dma_ch_rx); + dma_ch_rx = MXC_I2S_RXDMAConfig(rxBufPtr, I2S_DMA_BUFFER_SIZE * sizeof(i2s_rx_buffer[0])); + } +} + +void dma_work_loop(void) +{ + int trig = 0; + + dma_init(); + MXC_I2S_RegisterDMACallback(dma_callback); + dma_ch_tx = MXC_I2S_TXDMAConfig(i2s_rx_buffer + I2S_DMA_BUFFER_SIZE, + I2S_DMA_BUFFER_SIZE * sizeof(i2s_rx_buffer[0])); + dma_ch_rx = MXC_I2S_RXDMAConfig(i2s_rx_buffer, I2S_DMA_BUFFER_SIZE * sizeof(i2s_rx_buffer[0])); + + for (;;) { + if (dma_flag) { + dma_flag = 0; + /* + dma activity triggered work + */ + if (++trig == SAMPLE_RATE / I2S_DMA_BUFFER_SIZE) { + trig = 0; + LED_Toggle(LED2); + } + } + /* + non-dma activity triggered work + */ + } +} + +void i2c_init(void) +{ + if (MXC_I2C_Init(CODEC_I2C, 1, 0) != E_NO_ERROR) + blink_halt("Error initializing I2C controller"); + else + printf("I2C initialized successfully \n"); + + MXC_I2C_SetFrequency(CODEC_I2C, CODEC_I2C_FREQ); +} + +void codec_init(void) +{ + if (max9867_init(CODEC_I2C, CODEC_MCLOCK, 1) != E_NO_ERROR) + blink_halt("Error initializing MAX9867 CODEC"); + + if (max9867_enable_playback(1) != E_NO_ERROR) + blink_halt("Error enabling playback path"); + + if (max9867_playback_volume(-6, -6) != E_NO_ERROR) + blink_halt("Error setting playback volume"); + + if (max9867_enable_record(1) != E_NO_ERROR) + blink_halt("Error enabling record path"); + + if (max9867_adc_level(-12, -12) != E_NO_ERROR) + blink_halt("Error setting ADC level"); + + if (max9867_linein_gain(24, 24) != E_NO_ERROR) + blink_halt("Error setting Line-In gain"); + else + printf("Codec initialized successfully \n"); +} + +void i2s_init(void) +{ + mxc_i2s_req_t req; + +#define I2S_CRUFT_PTR (void *)UINT32_MAX +#define I2S_CRUFT_LEN UINT32_MAX + + req.wordSize = MXC_I2S_WSIZE_WORD; + req.sampleSize = MXC_I2S_SAMPLESIZE_TWENTYFOUR; + req.bitsWord = 24; + req.adjust = MXC_I2S_ADJUST_LEFT; + req.justify = MXC_I2S_MSB_JUSTIFY; + req.wsPolarity = MXC_I2S_POL_NORMAL; + /* I2S Peripheral is in slave mode - no need to set clkdiv */ + req.channelMode = MXC_I2S_EXTERNAL_SCK_EXTERNAL_WS; + req.stereoMode = MXC_I2S_STEREO; + + req.bitOrder = MXC_I2S_MSB_FIRST; + + req.rawData = NULL; + req.txData = I2S_CRUFT_PTR; + req.rxData = I2S_CRUFT_PTR; + req.length = I2S_CRUFT_LEN; + + if (MXC_I2S_Init(&req) != E_NO_ERROR) + blink_halt("Error initializing I2S"); + else + printf("I2S initialized successfully \n"); +} + +int main(void) +{ +#if defined(BOARD_FTHR_REVA) + /* Wait for PMIC 1.8V to become available, about 180ms after power up. */ + MXC_Delay(MXC_DELAY_MSEC(200)); +#endif + + /* Switch to 100 MHz clock */ + MXC_SYS_Clock_Select(MXC_SYS_CLOCK_IPO); + SystemCoreClockUpdate(); + + printf("***** MAX9867 CODEC DMA Loopback Example *****\n"); + + printf("Waiting...\n"); + + /* DO NOT DELETE THIS LINE: */ + MXC_Delay(MXC_DELAY_SEC(2)); /* Let debugger interrupt if needed */ + + printf("Running...\n"); + + i2c_init(); + codec_init(); + i2s_init(); + + dma_work_loop(); +} diff --git a/Examples/MAX32690/I2S_DMA_Target/project.mk b/Examples/MAX32690/I2S_DMA_Target/project.mk new file mode 100644 index 00000000000..e1d72e976da --- /dev/null +++ b/Examples/MAX32690/I2S_DMA_Target/project.mk @@ -0,0 +1,36 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Add your config here! + +# If you have secure version of MCU, set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +ifneq ($(BOARD),EvKit_V1) +$(error ERR_NOTSUPPORTED: This project is only supported on the MAX32690 EvKit_V1 board. See https://analogdevicesinc.github.io/msdk/USERGUIDE/#board-support-packages) +endif diff --git a/Examples/MAX32690/ICC/.vscode/README.md b/Examples/MAX32690/ICC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/ICC/.vscode/README.md +++ b/Examples/MAX32690/ICC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/ICC/.vscode/settings.json b/Examples/MAX32690/ICC/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/ICC/.vscode/settings.json +++ b/Examples/MAX32690/ICC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/ICC/Makefile b/Examples/MAX32690/ICC/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/ICC/Makefile +++ b/Examples/MAX32690/ICC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/ICC/README.md b/Examples/MAX32690/ICC/README.md index 747ccf3cbbc..427083c66ea 100644 --- a/Examples/MAX32690/ICC/README.md +++ b/Examples/MAX32690/ICC/README.md @@ -28,6 +28,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/ICC/main.c b/Examples/MAX32690/ICC/main.c index 6d26a056e55..3c440870999 100644 --- a/Examples/MAX32690/ICC/main.c +++ b/Examples/MAX32690/ICC/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/ICC/project.mk b/Examples/MAX32690/ICC/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/ICC/project.mk +++ b/Examples/MAX32690/ICC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/LP/.vscode/README.md b/Examples/MAX32690/LP/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/LP/.vscode/README.md +++ b/Examples/MAX32690/LP/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/LP/.vscode/settings.json b/Examples/MAX32690/LP/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/LP/.vscode/settings.json +++ b/Examples/MAX32690/LP/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/LP/Makefile b/Examples/MAX32690/LP/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/LP/Makefile +++ b/Examples/MAX32690/LP/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/LP/README.md b/Examples/MAX32690/LP/README.md index f31b771cfc5..5512848c39e 100644 --- a/Examples/MAX32690/LP/README.md +++ b/Examples/MAX32690/LP/README.md @@ -23,6 +23,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages if USE_ALARM is defined: diff --git a/Examples/MAX32690/LP/lp.ld b/Examples/MAX32690/LP/lp.ld index 5bb4dbb2702..6e3b0ac45ac 100644 --- a/Examples/MAX32690/LP/lp.ld +++ b/Examples/MAX32690/LP/lp.ld @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/LP/main.c b/Examples/MAX32690/LP/main.c index d77806929e2..fdf8ab8db16 100644 --- a/Examples/MAX32690/LP/main.c +++ b/Examples/MAX32690/LP/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/LP/project.mk b/Examples/MAX32690/LP/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/LP/project.mk +++ b/Examples/MAX32690/LP/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/LPCMP/.vscode/README.md b/Examples/MAX32690/LPCMP/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/LPCMP/.vscode/README.md +++ b/Examples/MAX32690/LPCMP/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/LPCMP/.vscode/settings.json b/Examples/MAX32690/LPCMP/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/LPCMP/.vscode/settings.json +++ b/Examples/MAX32690/LPCMP/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/LPCMP/Makefile b/Examples/MAX32690/LPCMP/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/LPCMP/Makefile +++ b/Examples/MAX32690/LPCMP/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/LPCMP/README.md b/Examples/MAX32690/LPCMP/README.md index c9a7f5f3324..e3f43d8bcf8 100644 --- a/Examples/MAX32690/LPCMP/README.md +++ b/Examples/MAX32690/LPCMP/README.md @@ -1,6 +1,6 @@ ## Description -This example demonstrates the use of the Analog Comparator to wake up the device from sleep mode. +This example demonstrates the use of the Analog Comparator to wake up the device from sleep mode. The example is configured to use analog channels 0 and 1 as the negative and positive comparator inputs respectively. A wakeup event is triggered when the comparator output transitions from low to high (analog 1 needs to transition from a voltage lower than analog 0 to voltage higher than analog 0). @@ -29,6 +29,13 @@ If using the MAX32690FTHR: - Apply the negative comparator input to the pin labeled AIN0 of the J2 header. - Apply the positive comparator input to the pin labeled AIN1 of the J2 header. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. +- Apply the negative comparator input to AIN0, pin 1 on P3. +- Apply the positive comparator input to AIN1, pin 2 on P3. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/LPCMP/main.c b/Examples/MAX32690/LPCMP/main.c index b800e546050..8ba885d917c 100644 --- a/Examples/MAX32690/LPCMP/main.c +++ b/Examples/MAX32690/LPCMP/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/LPCMP/project.mk b/Examples/MAX32690/LPCMP/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/LPCMP/project.mk +++ b/Examples/MAX32690/LPCMP/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Library_Generate/.vscode/README.md b/Examples/MAX32690/Library_Generate/.vscode/README.md index e2e9a1a6522..a740741c3ab 100644 --- a/Examples/MAX32690/Library_Generate/.vscode/README.md +++ b/Examples/MAX32690/Library_Generate/.vscode/README.md @@ -7,11 +7,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) * If it's not in the README, check the UG. * If it's not in the UG, open a ticket! -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -38,7 +38,7 @@ The steps below are also available in video form in "Understanding Artificial In 2. Run the installer executable, and ensure that "Visual Studio Code Support" is enabled for your installation. - ![Selected Components](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/installer_components.JPG) + ![Selected Components](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/installer_components.JPG) 3. Finish the MSDK installation, taking note of where the MSDK was installed. @@ -54,7 +54,7 @@ The steps below are also available in video form in "Understanding Artificial In 9. Type "open settings json" and select the "Preferences: Open Settings (JSON)" option (_not_ the "Preferences: Open _Default_ Settings (JSON)"). This will open your user settings.json file in VS Code's editor. - ![Open Settings JSON Command](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/open_settings_json.jpg) + ![Open Settings JSON Command](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/open_settings_json.jpg) 10. Add the entries below into your user settings.json file. @@ -82,7 +82,7 @@ This section covers basic usage of the VSCode-Maxim project files. For document Visual Studio Code is built around a "working directory" paradigm. The editor is always rooted in a working directory, and the main mechanism for changing that directory is `File -> Open Folder...`. -![File -> Open Folder](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/file_openfolder.JPG) +![File -> Open Folder](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/file_openfolder.JPG) As a result, you'll notice that there is no "New Project" mechanism. A "project" in VS Code is simply a folder. It will look inside of the opened folder for a `.vscode` _sub_-folder to load project-specific settings from. @@ -90,11 +90,11 @@ A project that is configured for VS Code will have, at minimum, a .vscode sub-fo Ex: -![Example Directory Contents](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/opening_projects_2.jpg) +![Example Directory Contents](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/opening_projects_2.jpg) ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MSDK installation. @@ -102,7 +102,7 @@ Additionally, empty project templates and a drag-and-drop folder for "injecting" Once a project is opened 4 available build tasks will become available via `Terminal > Run Build task...` or the shortcut `Ctrl+Shift+B`. These tasks are configured by the `.vscode/task.json` file. -![Build Tasks Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/buildtasks.JPG) +![Build Tasks Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/buildtasks.JPG) #### Build @@ -138,7 +138,7 @@ Once a project is opened 4 available build tasks will become available via `Term ### Debugging -![Debug Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger.JPG) +![Debug Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger.JPG) Debugging is enabled by Visual Studio Code's integrated debugger. Launch configurations can be found in the `.vscode/launch.json` file. @@ -162,11 +162,11 @@ In general, the MAX-series microcontrollers have the following debugger limitati 3. Launch the debugger with `Run > Start Debugging`, with the shortcut `F5`, or via the `Run and Debug` window (Ctrl + Shift + D) and the green "launch" arrow. - ![Debug Tab](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_window.JPG) + ![Debug Tab](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_window.JPG) 4. The debugger will launch a GDB client & OpenOCD server, reset the microcontroller, and should break on entry into `main`. - ![Debugger Break on Main](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_breakmain.JPG) + ![Debugger Break on Main](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_breakmain.JPG) #### Using the Debugger @@ -174,13 +174,13 @@ In general, the MAX-series microcontrollers have the following debugger limitati The main interface for the debugger is the debugger control bar: -![Debugger Control Bar Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_bar.JPG) +![Debugger Control Bar Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_bar.JPG) `Continue | Step Over | Step Into | Step Out | Restart | Stop` Breakpoints can be set by clicking in the space next to the line number in a source code file. A red dot indicates a line to break on. Breakpoints can be removed by clicking on them again. Ex: -![Breakpoint](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/breakpoint.JPG) +![Breakpoint](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/breakpoint.JPG) ## Project Configuration @@ -190,7 +190,7 @@ Breakpoints can be set by clicking in the space next to the line number in a sou **When a change is made to this file, VS Code should be reloaded with CTRL+SHIFT+P -> Reload Window (or alternatively restarted completely) to force a re-parse.** -![Reload Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/reload_window.JPG) +![Reload Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/reload_window.JPG) The default project configuration should work for most use cases as long as `"target"` and `"board"` are set correctly. @@ -227,7 +227,7 @@ The following configuration options are available: * ... can be found in the `Libraries/Boards` folder of the MSDK * For example, the supported options for the MAX78000 are `"EvKit_V1"`, `"FTHR_RevA"`, and `"MAXREFDES178"`. - ![MAX78000 Boards](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/78000_boards.JPG) + ![MAX78000 Boards](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/78000_boards.JPG) ### Advanced Config Options @@ -353,7 +353,7 @@ A project's build system is managed by two files found in the project's root dir * `Makefile` * `project.mk` -![Files are located in the root directory](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) +![Files are located in the root directory](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) When the command... @@ -416,7 +416,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the @@ -540,7 +540,7 @@ If you want to start from scratch, take this option. ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Library_Generate/Makefile b/Examples/MAX32690/Library_Generate/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/Library_Generate/Makefile +++ b/Examples/MAX32690/Library_Generate/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Library_Generate/gpiolib.c b/Examples/MAX32690/Library_Generate/gpiolib.c index 5c8845edc78..252f6df4c44 100644 --- a/Examples/MAX32690/Library_Generate/gpiolib.c +++ b/Examples/MAX32690/Library_Generate/gpiolib.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Library_Generate/gpiolib.h b/Examples/MAX32690/Library_Generate/gpiolib.h index e83c59ceb04..da5257704f7 100644 --- a/Examples/MAX32690/Library_Generate/gpiolib.h +++ b/Examples/MAX32690/Library_Generate/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Library_Generate/project.mk b/Examples/MAX32690/Library_Generate/project.mk index 01dcd9fbb2a..b5729be6ef0 100644 --- a/Examples/MAX32690/Library_Generate/project.mk +++ b/Examples/MAX32690/Library_Generate/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Library_Use/.vscode/README.md b/Examples/MAX32690/Library_Use/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Library_Use/.vscode/README.md +++ b/Examples/MAX32690/Library_Use/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Library_Use/.vscode/settings.json b/Examples/MAX32690/Library_Use/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/Library_Use/.vscode/settings.json +++ b/Examples/MAX32690/Library_Use/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Library_Use/Makefile b/Examples/MAX32690/Library_Use/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/Library_Use/Makefile +++ b/Examples/MAX32690/Library_Use/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Library_Use/README.md b/Examples/MAX32690/Library_Use/README.md index a4a04aa7564..5a599947d84 100644 --- a/Examples/MAX32690/Library_Use/README.md +++ b/Examples/MAX32690/Library_Use/README.md @@ -28,6 +28,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/Library_Use/lib/include/gpiolib.h b/Examples/MAX32690/Library_Use/lib/include/gpiolib.h index b4bf3f7423f..2384324547f 100644 --- a/Examples/MAX32690/Library_Use/lib/include/gpiolib.h +++ b/Examples/MAX32690/Library_Use/lib/include/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Library_Use/main.c b/Examples/MAX32690/Library_Use/main.c index a9c20ec444f..c686476d185 100644 --- a/Examples/MAX32690/Library_Use/main.c +++ b/Examples/MAX32690/Library_Use/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Library_Use/project.mk b/Examples/MAX32690/Library_Use/project.mk index f724d98b790..759fc12f1eb 100644 --- a/Examples/MAX32690/Library_Use/project.mk +++ b/Examples/MAX32690/Library_Use/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Pulse_Train/.vscode/README.md b/Examples/MAX32690/Pulse_Train/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Pulse_Train/.vscode/README.md +++ b/Examples/MAX32690/Pulse_Train/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Pulse_Train/.vscode/settings.json b/Examples/MAX32690/Pulse_Train/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/Pulse_Train/.vscode/settings.json +++ b/Examples/MAX32690/Pulse_Train/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Pulse_Train/Makefile b/Examples/MAX32690/Pulse_Train/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/Pulse_Train/Makefile +++ b/Examples/MAX32690/Pulse_Train/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Pulse_Train/README.md b/Examples/MAX32690/Pulse_Train/README.md index c152f558ebd..a8400e25e1c 100644 --- a/Examples/MAX32690/Pulse_Train/README.md +++ b/Examples/MAX32690/Pulse_Train/README.md @@ -1,6 +1,6 @@ ## Description -Two pulse trains are configured in different modes. +Two pulse trains are configured in different modes. The first, PT2, is set to generate a repeating bit pattern of 0x10110 (lsb first) at a rate of 2 bits per second. If you make the connections described below, you can observe the pattern on LED 1. @@ -37,6 +37,13 @@ If using the MAX32690FTHR: - Connect pin 1.8 on J1 to a logic analyzer channel. - Connect pin 1.9 on J2 to a logic analyzer channel. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. +- Connect pin 1.8 to a logic analyzer channel. +- Connect pin 1.9 to a logic analyzer channel. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/Pulse_Train/main.c b/Examples/MAX32690/Pulse_Train/main.c index 65aa43c7b0d..7d66dc2e614 100644 --- a/Examples/MAX32690/Pulse_Train/main.c +++ b/Examples/MAX32690/Pulse_Train/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Pulse_Train/project.mk b/Examples/MAX32690/Pulse_Train/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/Pulse_Train/project.mk +++ b/Examples/MAX32690/Pulse_Train/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/RTC/.vscode/README.md b/Examples/MAX32690/RTC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/RTC/.vscode/README.md +++ b/Examples/MAX32690/RTC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/RTC/.vscode/settings.json b/Examples/MAX32690/RTC/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/RTC/.vscode/settings.json +++ b/Examples/MAX32690/RTC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/RTC/Makefile b/Examples/MAX32690/RTC/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/RTC/Makefile +++ b/Examples/MAX32690/RTC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/RTC/README.md b/Examples/MAX32690/RTC/README.md index e6e51086a52..ffef42c78c9 100644 --- a/Examples/MAX32690/RTC/README.md +++ b/Examples/MAX32690/RTC/README.md @@ -17,6 +17,11 @@ On feather board: - LED 1: P0.14/LED_RED - LED 2: P2.24/LED_GREEN +On AD-APARD32690 board: +- PB1 : P1.27/S2 +- LED 1: P2.1/LED_BLUE +- LED 2: P0.11/LED_GREEN + ## Software ### Project Usage @@ -38,6 +43,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output ``` diff --git a/Examples/MAX32690/RTC/main.c b/Examples/MAX32690/RTC/main.c index c9b66e907a9..1ad5774df5a 100644 --- a/Examples/MAX32690/RTC/main.c +++ b/Examples/MAX32690/RTC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -108,7 +107,7 @@ void RTC_IRQHandler(void) return; } -void printTime() +void printTime(void) { int day, hr, min, err; uint32_t sec, rtc_readout; diff --git a/Examples/MAX32690/RTC/project.mk b/Examples/MAX32690/RTC/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/RTC/project.mk +++ b/Examples/MAX32690/RTC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/RTC_Backup/.vscode/README.md b/Examples/MAX32690/RTC_Backup/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/RTC_Backup/.vscode/README.md +++ b/Examples/MAX32690/RTC_Backup/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/RTC_Backup/.vscode/settings.json b/Examples/MAX32690/RTC_Backup/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/RTC_Backup/.vscode/settings.json +++ b/Examples/MAX32690/RTC_Backup/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/RTC_Backup/Makefile b/Examples/MAX32690/RTC_Backup/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/RTC_Backup/Makefile +++ b/Examples/MAX32690/RTC_Backup/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/RTC_Backup/README.md b/Examples/MAX32690/RTC_Backup/README.md index 6ea63b1b7f2..2e281f2e5b4 100644 --- a/Examples/MAX32690/RTC_Backup/README.md +++ b/Examples/MAX32690/RTC_Backup/README.md @@ -27,6 +27,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output ``` diff --git a/Examples/MAX32690/RTC_Backup/main.c b/Examples/MAX32690/RTC_Backup/main.c index 1dc76da8171..7d6dd2c311d 100644 --- a/Examples/MAX32690/RTC_Backup/main.c +++ b/Examples/MAX32690/RTC_Backup/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -61,7 +60,7 @@ void RTC_IRQHandler(void) {} // ***************************************************************************** -void rescheduleAlarm() +void rescheduleAlarm(void) { uint32_t time; int flags = MXC_RTC_GetFlags(); @@ -87,7 +86,7 @@ void rescheduleAlarm() } // ***************************************************************************** -void printTime() +void printTime(void) { int day, hr, min; uint32_t sec; @@ -108,7 +107,7 @@ void printTime() } // ***************************************************************************** -int configureRTC() +int configureRTC(void) { printf("\n\n***************** RTC Wake from Backup Example *****************\n\n"); printf("The time-of-day alarm is set to wake the device every %d seconds.\n", TIME_OF_DAY_SEC); diff --git a/Examples/MAX32690/RTC_Backup/project.mk b/Examples/MAX32690/RTC_Backup/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/RTC_Backup/project.mk +++ b/Examples/MAX32690/RTC_Backup/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/RV_ARM_Loader/.vscode/README.md b/Examples/MAX32690/RV_ARM_Loader/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/RV_ARM_Loader/.vscode/README.md +++ b/Examples/MAX32690/RV_ARM_Loader/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/RV_ARM_Loader/.vscode/settings.json b/Examples/MAX32690/RV_ARM_Loader/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/RV_ARM_Loader/.vscode/settings.json +++ b/Examples/MAX32690/RV_ARM_Loader/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/RV_ARM_Loader/Makefile b/Examples/MAX32690/RV_ARM_Loader/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/RV_ARM_Loader/Makefile +++ b/Examples/MAX32690/RV_ARM_Loader/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/RV_ARM_Loader/main.c b/Examples/MAX32690/RV_ARM_Loader/main.c index 1635acfc396..4340410ee41 100644 --- a/Examples/MAX32690/RV_ARM_Loader/main.c +++ b/Examples/MAX32690/RV_ARM_Loader/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/RV_ARM_Loader/project.mk b/Examples/MAX32690/RV_ARM_Loader/project.mk index 08efab2773d..f1c6ee092c5 100644 --- a/Examples/MAX32690/RV_ARM_Loader/project.mk +++ b/Examples/MAX32690/RV_ARM_Loader/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/SCPA_OTP_Dump/.vscode/README.md b/Examples/MAX32690/SCPA_OTP_Dump/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/SCPA_OTP_Dump/.vscode/README.md +++ b/Examples/MAX32690/SCPA_OTP_Dump/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/SCPA_OTP_Dump/.vscode/settings.json b/Examples/MAX32690/SCPA_OTP_Dump/.vscode/settings.json index 71c1cea53df..75348022103 100755 --- a/Examples/MAX32690/SCPA_OTP_Dump/.vscode/settings.json +++ b/Examples/MAX32690/SCPA_OTP_Dump/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/SCPA_OTP_Dump/Makefile b/Examples/MAX32690/SCPA_OTP_Dump/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/SCPA_OTP_Dump/Makefile +++ b/Examples/MAX32690/SCPA_OTP_Dump/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/SCPA_OTP_Dump/README.md b/Examples/MAX32690/SCPA_OTP_Dump/README.md index 847bd3c9320..9378bab137b 100644 --- a/Examples/MAX32690/SCPA_OTP_Dump/README.md +++ b/Examples/MAX32690/SCPA_OTP_Dump/README.md @@ -1,9 +1,9 @@ ## Description -The applet is a small program that loaded into the internal RAM to extend secure ROM capability. +The applet is a small program that loaded into the internal RAM to extend secure ROM capability. By the applet user can implement several kinds of needs. In this example OTP content will be dump -by applet mechanism. -This example will generate .srec file. Then generate SCP (Secure Communication Protocol) package. +by applet mechanism. +This example will generate .srec file. Then generate SCP (Secure Communication Protocol) package. Before build example please set correct silicon (A1, A2...) version you have in [project.mk](project.mk) as below
PROJ_CFLAGS+=-DMAX32690_A1 @@ -17,32 +17,25 @@ PROJ_CFLAGS+=-DMAX32690_A1 ### Project Usage -Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. +Universal instructions on building this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +NOTE: This SCP Applet example project cannot be flashed and debugged like a regular example. It must be sent to the ROM bootloader using the SCP protocol. The MSDK offers Secure Bootloader Tools (SBT) in the `Tools/SBT` folder, and the `send_scp` utility is used to send the SCP packets to the device. + +See the [Secure Boot Tools User Guide](https://pdfserv.maximintegrated.com/en/an/ug7637-secure-boot-tools.pdf) for additional documentation. ### Project-Specific Build Notes -(None - this project builds as a standard example) +This project targets `scpa` builds by default (see [project.mk](project.mk)), which generates SCP packets for the application in the `build/scp_packets` folder. ## Required Connections -If using the MAX32690EVKIT: -- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. -- Install JP7(RX_EN) and JP8(TX_EN) headers. -- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. -- Open a console (Powershell or bash) then send scp packages to device. - -If using the MAX32690FTHR: -- Connect a USB cable between the PC and the J5 (USB/PWR) connector. -- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cables between the PC and your EvKit connector. - Open a console (Powershell or bash) then send scp packages to device. ## Expected Output +``` +$ send_scp -c -i UART -s build/scp_packets/packet.list -The "send_scp.exe" file is located in "/Tools/SBT/bin". - - ` - send_scp -c -i UART -s "" - ` [==================================================== ] 73% @@ -119,3 +112,4 @@ Please wait, reading data...
Disconnected !
SCP session OK
+``` \ No newline at end of file diff --git a/Examples/MAX32690/SCPA_OTP_Dump/main.c b/Examples/MAX32690/SCPA_OTP_Dump/main.c index 0af436148e4..6c6340df065 100644 --- a/Examples/MAX32690/SCPA_OTP_Dump/main.c +++ b/Examples/MAX32690/SCPA_OTP_Dump/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/SCPA_OTP_Dump/project.mk b/Examples/MAX32690/SCPA_OTP_Dump/project.mk index 4f065a80328..c689e0ea5a1 100644 --- a/Examples/MAX32690/SCPA_OTP_Dump/project.mk +++ b/Examples/MAX32690/SCPA_OTP_Dump/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/SCPA_OTP_Dump/utils.c b/Examples/MAX32690/SCPA_OTP_Dump/utils.c index ae02a263b80..63e6ae19fbf 100644 --- a/Examples/MAX32690/SCPA_OTP_Dump/utils.c +++ b/Examples/MAX32690/SCPA_OTP_Dump/utils.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/SCPA_OTP_Dump/utils.h b/Examples/MAX32690/SCPA_OTP_Dump/utils.h index 10a3bfb19c4..0a2c6e0c1c3 100644 --- a/Examples/MAX32690/SCPA_OTP_Dump/utils.h +++ b/Examples/MAX32690/SCPA_OTP_Dump/utils.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/SPI/.vscode/README.md b/Examples/MAX32690/SPI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/SPI/.vscode/README.md +++ b/Examples/MAX32690/SPI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/SPI/.vscode/settings.json b/Examples/MAX32690/SPI/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/SPI/.vscode/settings.json +++ b/Examples/MAX32690/SPI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/SPI/Makefile b/Examples/MAX32690/SPI/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/SPI/Makefile +++ b/Examples/MAX32690/SPI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/SPI/README.md b/Examples/MAX32690/SPI/README.md index da09beed24c..a4dcd5c9d2a 100644 --- a/Examples/MAX32690/SPI/README.md +++ b/Examples/MAX32690/SPI/README.md @@ -28,6 +28,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/SPI/main.c b/Examples/MAX32690/SPI/main.c index 03e126de0ba..0d249567748 100644 --- a/Examples/MAX32690/SPI/main.c +++ b/Examples/MAX32690/SPI/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -42,16 +41,12 @@ #include "led.h" /***** Preprocessors *****/ -#define MASTERSYNC 1 -#define MASTERASYNC 0 -#define MASTERDMA 0 +//#define MASTERSYNC 1 +//#define MASTERASYNC 0 +//#define MASTERDMA 0 +// define three METHOD above in project.mk +// MASTERSYNC is default -#if (!(MASTERSYNC || MASTERASYNC || MASTERDMA)) -#error "You must set either MASTERSYNC or MASTERASYNC or MASTERDMA to 1." -#endif -#if ((MASTERSYNC && MASTERASYNC) || (MASTERASYNC && MASTERDMA) || (MASTERDMA && MASTERSYNC)) -#error "You must select either MASTERSYNC or MASTERASYNC or MASTERDMA, not all 3." -#endif /***** Definitions *****/ #define DATA_LEN 100 // Words #define DATA_VALUE 0xA5A5 // This is for master mode only... @@ -154,11 +149,11 @@ int main(void) return retVal; } -#if MASTERSYNC +#ifdef MASTERSYNC MXC_SPI_MasterTransaction(&req); #endif -#if MASTERASYNC +#ifdef MASTERASYNC MXC_NVIC_SetVector(SPI_IRQ, SPI_IRQHandler); NVIC_EnableIRQ(SPI_IRQ); MXC_SPI_MasterTransactionAsync(&req); @@ -167,7 +162,7 @@ int main(void) #endif -#if MASTERDMA +#ifdef MASTERDMA MXC_DMA_ReleaseChannel(0); MXC_DMA_ReleaseChannel(1); diff --git a/Examples/MAX32690/SPI/project.mk b/Examples/MAX32690/SPI/project.mk index 96eb02eae1d..c27cb7afc6b 100644 --- a/Examples/MAX32690/SPI/project.mk +++ b/Examples/MAX32690/SPI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -13,3 +30,7 @@ # For more information on how sing process works, see # https://www.analog.com/en/education/education-library/videos/6313214207112.html SBT=0 + + +METHOD ?= MASTERSYNC +PROJ_CFLAGS += -D$(METHOD) \ No newline at end of file diff --git a/Examples/MAX32690/SPI_v2/.cproject b/Examples/MAX32690/SPI_v2/.cproject new file mode 100644 index 00000000000..74f66908027 --- /dev/null +++ b/Examples/MAX32690/SPI_v2/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/SPI_v2/.project b/Examples/MAX32690/SPI_v2/.project new file mode 100644 index 00000000000..d38022bbc46 --- /dev/null +++ b/Examples/MAX32690/SPI_v2/.project @@ -0,0 +1,26 @@ + + + SPI_v2 + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32690/SPI_v2/.settings/language.settings.xml b/Examples/MAX32690/SPI_v2/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32690/SPI_v2/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/SPI_v2/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32690/SPI_v2/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32690/SPI_v2/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32690/SPI_v2/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32690/SPI_v2/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..ec8eee4b1d7 --- /dev/null +++ b/Examples/MAX32690/SPI_v2/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=SPI_v2 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32690 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32690/SPI_v2/.vscode/README.md b/Examples/MAX32690/SPI_v2/.vscode/README.md new file mode 100644 index 00000000000..58733e941c7 --- /dev/null +++ b/Examples/MAX32690/SPI_v2/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analog-devices-msdk.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analog-devices-msdk.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analog-devices-msdk.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analog-devices-msdk.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/SPI_v2/.vscode/c_cpp_properties.json b/Examples/MAX32690/SPI_v2/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32690/SPI_v2/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32690/SPI_v2/.vscode/flash.gdb b/Examples/MAX32690/SPI_v2/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32690/SPI_v2/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32690/SPI_v2/.vscode/launch.json b/Examples/MAX32690/SPI_v2/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32690/SPI_v2/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32690/SPI_v2/.vscode/settings.json b/Examples/MAX32690/SPI_v2/.vscode/settings.json new file mode 100644 index 00000000000..261356c2468 --- /dev/null +++ b/Examples/MAX32690/SPI_v2/.vscode/settings.json @@ -0,0 +1,77 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32690", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32690.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/SPI_v2/.vscode/tasks.json b/Examples/MAX32690/SPI_v2/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32690/SPI_v2/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32690/SPI_v2/Makefile b/Examples/MAX32690/SPI_v2/Makefile new file mode 100644 index 00000000000..4fbb9a75d5d --- /dev/null +++ b/Examples/MAX32690/SPI_v2/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32690 +TARGET_UC := MAX32690 +TARGET_LC := max32690 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32690/SPI_v2/README.md b/Examples/MAX32690/SPI_v2/README.md new file mode 100644 index 00000000000..891938ca508 --- /dev/null +++ b/Examples/MAX32690/SPI_v2/README.md @@ -0,0 +1,67 @@ +## Description + +This example configures the SPI to send data between the MISO (P2.27) and MOSI (P2.28) pins. Connect these two pins together. + +Multiple word sizes (2 through 16 bits) are demonstrated. + +By default, the example performs blocking SPI transactions. To switch to non-blocking (asynchronous) transactions, reset the `CONTROLLER_SYNC` macro to 0 and set the `CONTROLLER_ASYNC` macro to 1. To use DMA transactions, set the `CONTROLLER_DMA` macro to 1 instead. + +This example uses the Hardware Target Select control scheme (application does not assert the TS pins). + +## Software + +This project uses the SPI v2 library. More information on the SPI v2 library can be found in the **[MSDK User Guide Developer Notes](https://analogdevicesinc.github.io/msdk/USERGUIDE/#spi-v2-library)**. + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +Set `MXC_SPI_VERSION=v2` to build the SPI v2 libraries. + +## Required Connections + +If using the MAX32690EVKIT: +- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. +- Install JP7(RX_EN) and JP8(TX_EN) headers. +- Open an terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Close jumper JP5 (LED0_EN). +- Close jumper JP6 (LED1_EN). +- Connect P2.28 (MOSI) to P2.27 (MISO). + +If using the MAX32690FTHR: +- Connect a USB cable between the PC and the J5 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect P2.28 (MOSI) to P2.27 (MISO). + +## Expected Output + +The Console UART of the device will output these messages: + +``` +**************************** SPI CONTROLLER TEST ************************* +This example configures the SPI to send data between the MISO (P2.27) and +MOSI (P2.28) pins. Connect these two pins together. + +Multiple word sizes (2 through 16 bits) are demonstrated. + +Performing blocking (synchronous) transactions... +--> 2 Bits Transaction Successful +--> 3 Bits Transaction Successful +--> 4 Bits Transaction Successful +--> 5 Bits Transaction Successful +--> 6 Bits Transaction Successful +--> 7 Bits Transaction Successful +--> 8 Bits Transaction Successful +--> 9 Bits Transaction Successful +-->10 Bits Transaction Successful +-->11 Bits Transaction Successful +-->12 Bits Transaction Successful +-->13 Bits Transaction Successful +-->14 Bits Transaction Successful +-->15 Bits Transaction Successful +-->16 Bits Transaction Successful + +Example Complete. +``` diff --git a/Examples/MAX32690/SPI_v2/SPI_v2.launch b/Examples/MAX32690/SPI_v2/SPI_v2.launch new file mode 100644 index 00000000000..84b03b3126e --- /dev/null +++ b/Examples/MAX32690/SPI_v2/SPI_v2.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/SPI_v2/main.c b/Examples/MAX32690/SPI_v2/main.c new file mode 100644 index 00000000000..2f7c674e46d --- /dev/null +++ b/Examples/MAX32690/SPI_v2/main.c @@ -0,0 +1,229 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief SPI Controller Demo + * @details This example demonstrates the SPI controller loopback transactions. + */ + +/***** Includes *****/ +#include +#include +#include +#include +#include "mxc_device.h" +#include "mxc_delay.h" +#include "mxc_pins.h" +#include "nvic_table.h" +#include "uart.h" +#include "spi.h" +#include "dma.h" +#include "led.h" + +/***** Preprocessors *****/ +//#define CONTROLLER_SYNC +//#define CONTROLLER_ASYNC +//#define CONTROLLER_DMA +// define three METHOD above in project.mk +// CONTROLLER_SYNC is default + +/***** Definitions *****/ +#define DATA_LEN 100 // Words +#define DATA_VALUE 0xA5B7 // This is for Controller mode only... +#define VALUE 0xFFFF +#define SPI_SPEED 100000 // Bit Rate +#define SPI MXC_SPI0 +#define SPI_IRQ SPI0_IRQn + +/***** Globals *****/ +uint16_t rx_data[DATA_LEN]; +uint16_t tx_data[DATA_LEN]; +volatile int SPI_FLAG; +int TX_DMA_CH, RX_DMA_CH; + +/***** Functions *****/ +void SPI0_IRQHandler(void) +{ + MXC_SPI_AsyncHandler(SPI); +} + +void DMA_TX_IRQHandler(void) +{ + MXC_SPI_DMA_TX_Handler(SPI); +} + +void DMA_RX_IRQHandler(void) +{ + MXC_SPI_DMA_RX_Handler(SPI); +} + +void SPI_Callback(void *data, int error) +{ + SPI_FLAG = error; +} + +int main(void) +{ + int i, j, retVal; + uint16_t temp; + mxc_spi_cfg_t cfg; + + printf("\n**************************** SPI CONTROLLER TEST *************************\n"); + printf("This example configures the SPI to send data between the MISO (P2.27) and\n"); + printf("MOSI (P2.28) pins. Connect these two pins together.\n\n"); + printf("Multiple word sizes (2 through 16 bits) are demonstrated.\n\n"); + +#if CONTROLLER_SYNC + printf("Performing blocking (synchronous) transactions...\n"); +#endif +#if CONTROLLER_ASYNC + printf("Performing non-blocking (asynchronous) transactions...\n"); +#endif +#if CONTROLLER_DMA + printf("Performing transactions with DMA...\n"); +#endif + + for (i = 2; i < 17; i++) { + // Sending out 2 to 16 bits + for (j = 0; j < DATA_LEN; j++) { + tx_data[j] = DATA_VALUE; + } + + mxc_spi_pins_t spi_pins; + // This example enables the TS0 HW pin. + spi_pins.ss0 = true; // TS0 + spi_pins.ss1 = false; // TS1 + spi_pins.ss2 = false; // TS2 + spi_pins.vddioh = true; + spi_pins.drvstr = MXC_GPIO_DRVSTR_0; + + retVal = MXC_SPI_Init(SPI, MXC_SPI_TYPE_CONTROLLER, MXC_SPI_INTERFACE_STANDARD, 0, 0b000, + SPI_SPEED, spi_pins); + if (retVal != E_NO_ERROR) { + printf("\nSPI INITIALIZATION ERROR\n"); + return retVal; + } + + // SPI Settings. + cfg.spi = SPI; + cfg.clk_mode = MXC_SPI_CLKMODE_0; // CPOL: 0, CPHA: 0 + cfg.frame_size = i; + + // DMA Settings. +#if CONTROLLER_DMA + cfg.use_dma_tx = true; + cfg.use_dma_rx = true; + cfg.dma = MXC_DMA; +#else + cfg.use_dma_rx = false; + cfg.use_dma_tx = false; + cfg.dma = MXC_DMA; +#endif + + retVal = MXC_SPI_Config(&cfg); + if (retVal != E_NO_ERROR) { + printf("\nSPI CONFIGURATION ERROR\n"); + return retVal; + } + + memset(rx_data, 0x0, DATA_LEN * sizeof(uint16_t)); + + // SPI Request (Callback) + mxc_spi_req_t req; + req.spi = SPI; + req.txData = (uint8_t *)tx_data; + req.txLen = DATA_LEN; + req.rxData = (uint8_t *)rx_data; + req.rxLen = DATA_LEN; + req.ssDeassert = 1; + req.completeCB = SPI_Callback; + SPI_FLAG = 1; + +#if CONTROLLER_SYNC + MXC_SPI_ControllerTransaction(&req); +#endif + +#if CONTROLLER_ASYNC + NVIC_EnableIRQ(SPI_IRQ); + MXC_SPI_ControllerTransactionAsync(&req); + + while (SPI_FLAG == 1) {} +#endif + +#if CONTROLLER_DMA + TX_DMA_CH = MXC_SPI_DMA_GetTXChannel(SPI); + RX_DMA_CH = MXC_SPI_DMA_GetRXChannel(SPI); + + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(TX_DMA_CH)); + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(RX_DMA_CH)); + + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(TX_DMA_CH), DMA_TX_IRQHandler); + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(RX_DMA_CH), DMA_RX_IRQHandler); + + MXC_SPI_ControllerTransactionDMA(&req); + + while (SPI_FLAG == 1) {} +#endif + + uint8_t bits = MXC_SPI_GetFrameSize(SPI); + + // Reformat tx_data to match rx_data frame size. + for (j = 0; j < DATA_LEN; j++) { + if (bits <= 8) { + if (j < (DATA_LEN / 2)) { + temp = VALUE >> (16 - bits); + temp = (temp << 8) | temp; + temp &= DATA_VALUE; + tx_data[j] = temp; + } else if (j == (DATA_LEN / 2) && DATA_LEN % 2 == 1) { + temp = VALUE >> (16 - bits); + temp &= DATA_VALUE; + tx_data[j] = temp; + } else { + tx_data[j] = 0x0000; + } + } else { + temp = VALUE >> (16 - bits); + temp &= DATA_VALUE; + tx_data[j] = temp; + } + } + + // Compare Sent data vs Received data + // Printf needs the Uart turned on since they share the same pins + if (memcmp(rx_data, tx_data, sizeof(tx_data)) != 0) { + printf("\n-->%2d Bits Transaction Failed\n", i); + LED_On(0); + return E_COMM_ERR; + } else { + printf("-->%2d Bits Transaction Successful\n", i); + } + + retVal = MXC_SPI_Shutdown(SPI); + + if (retVal != E_NO_ERROR) { + printf("\n-->SPI SHUTDOWN ERROR: %d\n", retVal); + return retVal; + } + } + + printf("\nExample Complete.\n"); + LED_On(1); // GREEN_LED + return E_NO_ERROR; +} diff --git a/Examples/MAX32690/SPI_v2/project.mk b/Examples/MAX32690/SPI_v2/project.mk new file mode 100644 index 00000000000..7ea73a18697 --- /dev/null +++ b/Examples/MAX32690/SPI_v2/project.mk @@ -0,0 +1,34 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Add your config here! + +# Build SPI v2 library for example. +MXC_SPI_VERSION = v2 + + +METHOD ?= CONTROLLER_SYNC +PROJ_CFLAGS += -D$(METHOD) \ No newline at end of file diff --git a/Examples/MAX32690/TFT_Demo/.vscode/README.md b/Examples/MAX32690/TFT_Demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/TFT_Demo/.vscode/README.md +++ b/Examples/MAX32690/TFT_Demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/TFT_Demo/.vscode/settings.json b/Examples/MAX32690/TFT_Demo/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/TFT_Demo/.vscode/settings.json +++ b/Examples/MAX32690/TFT_Demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/TFT_Demo/Makefile b/Examples/MAX32690/TFT_Demo/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/TFT_Demo/Makefile +++ b/Examples/MAX32690/TFT_Demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/TFT_Demo/main.c b/Examples/MAX32690/TFT_Demo/main.c index c429737e9e0..08df2936c42 100644 --- a/Examples/MAX32690/TFT_Demo/main.c +++ b/Examples/MAX32690/TFT_Demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/TFT_Demo/project.mk b/Examples/MAX32690/TFT_Demo/project.mk index 1a524a20375..f3be37b7439 100644 --- a/Examples/MAX32690/TFT_Demo/project.mk +++ b/Examples/MAX32690/TFT_Demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -26,3 +43,7 @@ FONTS = LiberationSans12x12 LiberationSans24x24 LiberationSans28x28 LiberationSa ifeq ($(BOARD),FTHR) $(error ERR_NOTSUPPORTED: This project is not supported for the FTHR board) endif + +ifeq ($(BOARD),APARD) +$(error ERR_NOTSUPPORTED: This project is not supported for the AD-APARD32690 board) +endif \ No newline at end of file diff --git a/Examples/MAX32690/TFT_Demo/resources/bitmap.h b/Examples/MAX32690/TFT_Demo/resources/bitmap.h index 5739472a8f9..612bcaec8eb 100644 --- a/Examples/MAX32690/TFT_Demo/resources/bitmap.h +++ b/Examples/MAX32690/TFT_Demo/resources/bitmap.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/TFT_Demo/resources/tft_demo/bmp/bmp2c.py b/Examples/MAX32690/TFT_Demo/resources/tft_demo/bmp/bmp2c.py index d85d42f200a..6e4a77a77e8 100644 --- a/Examples/MAX32690/TFT_Demo/resources/tft_demo/bmp/bmp2c.py +++ b/Examples/MAX32690/TFT_Demo/resources/tft_demo/bmp/bmp2c.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/TFT_Demo/resources/tft_demo/bmp/image_rgb565.c b/Examples/MAX32690/TFT_Demo/resources/tft_demo/bmp/image_rgb565.c index 435c50b308c..3848cb229d2 100644 --- a/Examples/MAX32690/TFT_Demo/resources/tft_demo/bmp/image_rgb565.c +++ b/Examples/MAX32690/TFT_Demo/resources/tft_demo/bmp/image_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/TFT_Demo/resources/tft_demo/bmp/template.txt b/Examples/MAX32690/TFT_Demo/resources/tft_demo/bmp/template.txt index ba9d86c9a51..b2b7ff6425e 100644 --- a/Examples/MAX32690/TFT_Demo/resources/tft_demo/bmp/template.txt +++ b/Examples/MAX32690/TFT_Demo/resources/tft_demo/bmp/template.txt @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/TFT_Demo/resources/tft_demo/logo_rgb565.c b/Examples/MAX32690/TFT_Demo/resources/tft_demo/logo_rgb565.c index 3c2141725cb..69ae930815e 100644 --- a/Examples/MAX32690/TFT_Demo/resources/tft_demo/logo_rgb565.c +++ b/Examples/MAX32690/TFT_Demo/resources/tft_demo/logo_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/TMR/.vscode/README.md b/Examples/MAX32690/TMR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/TMR/.vscode/README.md +++ b/Examples/MAX32690/TMR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/TMR/.vscode/settings.json b/Examples/MAX32690/TMR/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/TMR/.vscode/settings.json +++ b/Examples/MAX32690/TMR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/TMR/Makefile b/Examples/MAX32690/TMR/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/TMR/Makefile +++ b/Examples/MAX32690/TMR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/TMR/README.md b/Examples/MAX32690/TMR/README.md index e23a0a20c4c..cf486edbee4 100644 --- a/Examples/MAX32690/TMR/README.md +++ b/Examples/MAX32690/TMR/README.md @@ -33,6 +33,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/TMR/main.c b/Examples/MAX32690/TMR/main.c index 1f994ccfe67..c19199c0655 100644 --- a/Examples/MAX32690/TMR/main.c +++ b/Examples/MAX32690/TMR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -48,8 +47,8 @@ #define SLEEP_MODE // Select between SLEEP_MODE and LP_MODE for LPTIMER // Parameters for PWM output -#define OST_CLOCK_SOURCE MXC_TMR_8M_CLK // \ref mxc_tmr_clock_t -#define PWM_CLOCK_SOURCE MXC_TMR_60M_CLK // \ref mxc_tmr_clock_t +#define OST_CLOCK_SOURCE MXC_TMR_IBRO_CLK // \ref mxc_tmr_clock_t +#define PWM_CLOCK_SOURCE MXC_TMR_ISO_CLK // \ref mxc_tmr_clock_t #define CONT_CLOCK_SOURCE MXC_TMR_APB_CLK // \ref mxc_tmr_clock_t // Parameters for Continuous timer @@ -77,7 +76,7 @@ #endif /***** Functions *****/ -void PWMTimer() +void PWMTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; // to configure timer diff --git a/Examples/MAX32690/TMR/project.mk b/Examples/MAX32690/TMR/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/TMR/project.mk +++ b/Examples/MAX32690/TMR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/TRNG/.vscode/README.md b/Examples/MAX32690/TRNG/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/TRNG/.vscode/README.md +++ b/Examples/MAX32690/TRNG/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/TRNG/.vscode/settings.json b/Examples/MAX32690/TRNG/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/TRNG/.vscode/settings.json +++ b/Examples/MAX32690/TRNG/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/TRNG/Makefile b/Examples/MAX32690/TRNG/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/TRNG/Makefile +++ b/Examples/MAX32690/TRNG/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/TRNG/README.md b/Examples/MAX32690/TRNG/README.md index 182ed7fcca2..06a74e08d22 100644 --- a/Examples/MAX32690/TRNG/README.md +++ b/Examples/MAX32690/TRNG/README.md @@ -23,6 +23,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/TRNG/main.c b/Examples/MAX32690/TRNG/main.c index ba6489b9847..595adaabb3f 100644 --- a/Examples/MAX32690/TRNG/main.c +++ b/Examples/MAX32690/TRNG/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/TRNG/project.mk b/Examples/MAX32690/TRNG/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/TRNG/project.mk +++ b/Examples/MAX32690/TRNG/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Temp_Monitor/.vscode/README.md b/Examples/MAX32690/Temp_Monitor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Temp_Monitor/.vscode/README.md +++ b/Examples/MAX32690/Temp_Monitor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Temp_Monitor/.vscode/settings.json b/Examples/MAX32690/Temp_Monitor/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/Temp_Monitor/.vscode/settings.json +++ b/Examples/MAX32690/Temp_Monitor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Temp_Monitor/Makefile b/Examples/MAX32690/Temp_Monitor/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/Temp_Monitor/Makefile +++ b/Examples/MAX32690/Temp_Monitor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Temp_Monitor/main.c b/Examples/MAX32690/Temp_Monitor/main.c index 53ffdb6a96d..a68eafd7c04 100644 --- a/Examples/MAX32690/Temp_Monitor/main.c +++ b/Examples/MAX32690/Temp_Monitor/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Temp_Monitor/project.mk b/Examples/MAX32690/Temp_Monitor/project.mk index d1502946590..4455d26b866 100644 --- a/Examples/MAX32690/Temp_Monitor/project.mk +++ b/Examples/MAX32690/Temp_Monitor/project.mk @@ -1,5 +1,22 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration -# variables. These variables are defined in a file called +# variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see @@ -17,3 +34,8 @@ SRCS+=max31889_driver.c VPATH+=$(LIBS_DIR)/MiscDrivers/TempSensor IPATH+=$(LIBS_DIR)/MiscDrivers/TempSensor + +# The APARD does not provision for a 1.8V I2C bus as required by this example +ifeq ($(BOARD),APARD) +$(error ERR_NOTSUPPORTED: This project is not supported for the AD-APARD32690 board) +endif diff --git a/Examples/MAX32690/Temp_Monitor/temp_monitor.c b/Examples/MAX32690/Temp_Monitor/temp_monitor.c index 07b2cbde0e2..6bd8e2a27c7 100644 --- a/Examples/MAX32690/Temp_Monitor/temp_monitor.c +++ b/Examples/MAX32690/Temp_Monitor/temp_monitor.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/Temp_Monitor/temp_monitor.h b/Examples/MAX32690/Temp_Monitor/temp_monitor.h index 07488c5cedc..239e075ad19 100644 --- a/Examples/MAX32690/Temp_Monitor/temp_monitor.h +++ b/Examples/MAX32690/Temp_Monitor/temp_monitor.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/UART/.vscode/README.md b/Examples/MAX32690/UART/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/UART/.vscode/README.md +++ b/Examples/MAX32690/UART/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/UART/.vscode/settings.json b/Examples/MAX32690/UART/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/UART/.vscode/settings.json +++ b/Examples/MAX32690/UART/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/UART/Makefile b/Examples/MAX32690/UART/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/UART/Makefile +++ b/Examples/MAX32690/UART/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/UART/README.md b/Examples/MAX32690/UART/README.md index 9b4c17928eb..bc269fd72b6 100644 --- a/Examples/MAX32690/UART/README.md +++ b/Examples/MAX32690/UART/README.md @@ -23,6 +23,12 @@ Universal instructions on building, flashing, and debugging this project can be If using the Featherboard (FTHR\_Apps\_P1): - Only one UART instance available. Example not supported. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. +- Connect pins P2.12->P1.9. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/UART/main.c b/Examples/MAX32690/UART/main.c index 225f9474a04..c3617152853 100644 --- a/Examples/MAX32690/UART/main.c +++ b/Examples/MAX32690/UART/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -38,7 +37,8 @@ #include "nvic_table.h" /***** Definitions *****/ -// #define DMA +// to enable DMA, define in project.mk +// INTERRUPT is default in project.mk #define UART_BAUD 115200 #define BUFF_SIZE 1024 diff --git a/Examples/MAX32690/UART/project.mk b/Examples/MAX32690/UART/project.mk index 42b5536113b..c1b95a6ca3c 100644 --- a/Examples/MAX32690/UART/project.mk +++ b/Examples/MAX32690/UART/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -17,3 +34,7 @@ SBT=0 ifeq ($(BOARD),FTHR) $(error ERR_NOTSUPPORTED: This project is not supported for the FTHR board) endif + + +METHOD ?= INTERRUPT +PROJ_CFLAGS += -D$(METHOD) diff --git a/Examples/MAX32690/UART_DMA/.cproject b/Examples/MAX32690/UART_DMA/.cproject new file mode 100644 index 00000000000..c9d62244405 --- /dev/null +++ b/Examples/MAX32690/UART_DMA/.cproject @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/UART_DMA/.project b/Examples/MAX32690/UART_DMA/.project new file mode 100644 index 00000000000..523d770068f --- /dev/null +++ b/Examples/MAX32690/UART_DMA/.project @@ -0,0 +1,26 @@ + + + UART_DMA + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32690/UART_DMA/.settings/language.settings.xml b/Examples/MAX32690/UART_DMA/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32690/UART_DMA/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32690/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32690/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32690/UART_DMA/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32690/UART_DMA/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..9002368e719 --- /dev/null +++ b/Examples/MAX32690/UART_DMA/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=UART_DMA +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32690 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32690/UART_DMA/.settings/org.eclipse.core.resources.prefs b/Examples/MAX32690/UART_DMA/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 00000000000..99f26c0203a --- /dev/null +++ b/Examples/MAX32690/UART_DMA/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/Examples/MAX32690/UART_DMA/.vscode/README.md b/Examples/MAX32690/UART_DMA/.vscode/README.md new file mode 100755 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32690/UART_DMA/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/UART_DMA/.vscode/c_cpp_properties.json b/Examples/MAX32690/UART_DMA/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32690/UART_DMA/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32690/UART_DMA/.vscode/flash.gdb b/Examples/MAX32690/UART_DMA/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32690/UART_DMA/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32690/UART_DMA/.vscode/launch.json b/Examples/MAX32690/UART_DMA/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32690/UART_DMA/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32690/UART_DMA/.vscode/settings.json b/Examples/MAX32690/UART_DMA/.vscode/settings.json new file mode 100755 index 00000000000..abd00ff497a --- /dev/null +++ b/Examples/MAX32690/UART_DMA/.vscode/settings.json @@ -0,0 +1,79 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32690", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32690.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/UART_DMA/.vscode/tasks.json b/Examples/MAX32690/UART_DMA/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32690/UART_DMA/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32690/UART_DMA/Makefile b/Examples/MAX32690/UART_DMA/Makefile new file mode 100644 index 00000000000..4fbb9a75d5d --- /dev/null +++ b/Examples/MAX32690/UART_DMA/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32690 +TARGET_UC := MAX32690 +TARGET_LC := max32690 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32690/UART_DMA/README.md b/Examples/MAX32690/UART_DMA/README.md new file mode 100644 index 00000000000..52891368b8c --- /dev/null +++ b/Examples/MAX32690/UART_DMA/README.md @@ -0,0 +1,71 @@ +## Description + +To demonstrate the use of the UART peripheral with DMA, data is sent between one UART port on the MAX32690. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +(None - this project builds as a standard example) + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. +- Open an terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect P2.11 (UART 0 RX) and P2.12 (UART 0 TX). + +## Expected Output + +The Console UART of the device will output these messages: + +``` +**************** UART Example ****************** +This example sends data from one UART to another + +Connect RX(Px.xx) of UARTx and TX(Px.xx) of UARTx. + +To indicate a successful UART transfer, LED1 will illuminate. + +Push SW2 to continue + +UART Baud : 115200 Hz +Test Length : 512 bytes + +-->UART Initialized + +-->Data verified + +-->Example Succeeded + +``` + +or + +``` +**************** UART Example ****************** +This example sends data from one UART to another + +Connect RX(Px.xx) of UARTx and TX(Px.xx) of UARTx. + +To indicate a successful UART transfer, LED1 will illuminate. + +Push SW2 to continue + +UART Baud : 115200 Hz +Test Length : 512 bytes + +Acquired DMA channel 0 for RX transaction +Acquired DMA channel 1 for TX transaction + +-->UART Initialized + +-->Data verified + +-->Example Succeeded + +``` \ No newline at end of file diff --git a/Examples/MAX32690/UART_DMA/UART_DMA.launch b/Examples/MAX32690/UART_DMA/UART_DMA.launch new file mode 100644 index 00000000000..9d3b37713c1 --- /dev/null +++ b/Examples/MAX32690/UART_DMA/UART_DMA.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/UART_DMA/main.c b/Examples/MAX32690/UART_DMA/main.c new file mode 100644 index 00000000000..c12ad494114 --- /dev/null +++ b/Examples/MAX32690/UART_DMA/main.c @@ -0,0 +1,235 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Main for UART with DMA example. + * @details This example demonstrates how to use DMA with UART for data transfer. + * The example sets up DMA channels to handle UART transmissions and receptions, + * looping back the TX to the RX on UART0 with DMA. A jumper must be + * connected between P2.11 (UART 0 RX) -> P2.12 (UART 0 TX). + * The example uses either automatic or manual DMA handler configuration + * depending on the AUTOHANDLERS macro definition. + */ + +/***** Includes *****/ +#include +#include +#include +#include "mxc_device.h" +#include "pb.h" +#include "board.h" +#include "mxc_delay.h" +#include "uart.h" +#include "dma.h" +#include "nvic_table.h" +#include "led.h" + +/***** Definitions *****/ +#define AUTOHANDLERS + +#define UART_BAUD 115200 +#define BUFF_SIZE 512 + +#define UART MXC_UART0 + +/***** Globals *****/ +volatile int READ_FLAG; +volatile int buttonPressed; +static mxc_uart_req_t loop_req; + +/***** Functions *****/ +#ifndef AUTOHANDLERS +void DMA_RX_Handler(void) +{ + MXC_DMA_Handler(); +} + +void DMA_TX_Handler(void) +{ + MXC_DMA_Handler(); +} +#endif + +void readCallback(mxc_uart_req_t *req, int error) +{ + READ_FLAG = error; +} + +void buttonHandler(void) +{ + buttonPressed = 1; +} + +#ifdef AUTOHANDLERS +int exampleDMAAutoHandlers(void) +{ + int error = 0; + + // Auto DMA handlers will automatically initialize DMA, acquire & assign channels, + // and guarantee that each transaction's callback function is executed when + // the transaction is complete. + MXC_UART_SetAutoDMAHandlers(UART, true); + + // "READ_FLAG" is set in the read transaction's callback. It will be set to 0 when + // the read request completes successfully. We use it to wait for the DMA transaction + // to complete, since the DMA APIs are asynchronous (non-blocking) + READ_FLAG = 1; + + error = MXC_UART_TransactionDMA(&loop_req); + if (error) { + printf("-->Error starting DMA read: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + while (READ_FLAG) {} + + printf("-->Transaction completed\n"); + return READ_FLAG; +} +#else +int exampleDMAManualHandlers(void) +{ + int error = 0; + + // Manally initialize DMA + MXC_DMA_Init(); + + // Manually acquire a channel for the read request and assign it to the drivers. + int rx_channel = MXC_DMA_AcquireChannel(); + if (rx_channel >= 0) { + printf("Acquired DMA channel %i for RX transaction\n", rx_channel); + } else { + printf("Failed to acquire RX DMA channel with error %i\n", rx_channel); + return rx_channel; + } + MXC_UART_SetRXDMAChannel(UART, rx_channel); + + // Additionally, assign the NVIC IRQ to a function that calls "MXC_DMA_Handler()". + // This is required for any assigned callbacks to work. + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(rx_channel)); + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(rx_channel), DMA_RX_Handler); + + // Do the same for the write request. + int tx_channel = MXC_DMA_AcquireChannel(); + if (tx_channel >= 0) { + printf("Acquired DMA channel %i for RX transaction\n", tx_channel); + } else { + printf("Failed to acquire RX DMA channel with error %i\n", tx_channel); + return tx_channel; + } + MXC_UART_SetTXDMAChannel(UART, tx_channel); + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(tx_channel)); + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(tx_channel), DMA_TX_Handler); + + // Initialize flags. We will use these to monitor when the read/write requests + // have completed, since the DMA APIs are asynchronous. + READ_FLAG = 1; + + error = MXC_UART_TransactionDMA(&loop_req); + if (error) { + printf("-->Error starting DMA read: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + while (READ_FLAG) {} + + printf("-->Transaction completed\n"); + return READ_FLAG; +} +#endif // AUTOHANDLERS + +/******************************************************************************/ +int main(void) +{ + int error, i, fail = 0; + uint8_t TxData[BUFF_SIZE]; + uint8_t RxData[BUFF_SIZE]; + + printf("\n\n**************** UART Example ******************\n"); + printf("This example sends data from one UART to another\n"); + printf("\nConnect RX(P2.11) of UART1 and TX(P2.12) of UART0.\n\n"); + printf("To indicate a successful UART transfer, LED1 will illuminate.\n"); + printf("\nPush SW2 to continue\n"); + + buttonPressed = 0; + PB_RegisterCallback(0, buttonHandler); + while (!buttonPressed) {} + + printf("\nUART Baud \t: %d Hz\n", UART_BAUD); + printf("Test Length \t: %d bytes\n\n", BUFF_SIZE); + + // Initialize the data buffers + for (i = 0; i < BUFF_SIZE; i++) { + TxData[i] = i; + } + memset(RxData, 0x0, BUFF_SIZE); + + // Initialize the UART + error = MXC_UART_Init(UART, UART_BAUD, MXC_UART_APB_CLK); + if (error < E_NO_ERROR) { + printf("-->Error initializing UART: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + // Setup request structs describing the transactions. + // Request structs are placed in the global scope so they + // don't go out of context. This can happen when a req struct + // is declared inside a function and the function completes. + // The memory would be freed, invalidating the UART driver's + // pointers to it. + loop_req.uart = UART; + loop_req.rxData = RxData; + loop_req.rxLen = BUFF_SIZE; + loop_req.txData = TxData; + loop_req.txLen = BUFF_SIZE; + loop_req.callback = readCallback; + + printf("-->UART Initialized\n\n"); + +#ifdef AUTOHANDLERS + error = exampleDMAAutoHandlers(); +#else + error = exampleDMAManualHandlers(); +#endif + + if (READ_FLAG != E_NO_ERROR) { + printf("-->Error with read callback; %d\n", READ_FLAG); + fail++; + } + + if ((error = memcmp(RxData, TxData, BUFF_SIZE)) != 0) { + printf("-->Error verifying Data: %d\n", error); + fail++; + } else { + printf("-->Data verified\n"); + } + + if (fail != 0) { + printf("\n-->Example Failed\n"); + LED_On(0); // indicates FAIL + return E_FAIL; + } + + LED_On(1); // indicates SUCCESS + printf("\n-->Example Succeeded\n"); + return E_NO_ERROR; +} diff --git a/Examples/MAX32690/UART_DMA/project.mk b/Examples/MAX32690/UART_DMA/project.mk new file mode 100644 index 00000000000..42b5536113b --- /dev/null +++ b/Examples/MAX32690/UART_DMA/project.mk @@ -0,0 +1,19 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# Add your config here! + +# If you have secure version of MCU, set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +ifeq ($(BOARD),FTHR) +$(error ERR_NOTSUPPORTED: This project is not supported for the FTHR board) +endif diff --git a/Examples/MAX32690/UCL/.vscode/README.md b/Examples/MAX32690/UCL/.vscode/README.md index f57d4364851..cc0783881d1 100644 --- a/Examples/MAX32690/UCL/.vscode/README.md +++ b/Examples/MAX32690/UCL/.vscode/README.md @@ -4,14 +4,14 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) -* [Wiki](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/wiki) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) +* [Wiki](https://github.com/analogdevicesinc/VSCode-Maxim/wiki) * If it's not in the readme, check the wiki. * If it's not in the wiki, open a ticket! ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. The following features are supported: @@ -91,7 +91,7 @@ Ex: ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MaximSDK installation. @@ -413,7 +413,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the diff --git a/Examples/MAX32690/UCL/Makefile b/Examples/MAX32690/UCL/Makefile index 43152551c31..e4ec0ff3a32 100644 --- a/Examples/MAX32690/UCL/Makefile +++ b/Examples/MAX32690/UCL/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -25,7 +24,7 @@ # in "project.mk", on the command-line, or with system environment # variables. -# See https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# See https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # for more detailed instructions on how to use this system. # The detailed instructions mentioned above are easier to read than @@ -375,7 +374,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/UCL/README.md b/Examples/MAX32690/UCL/README.md index fd0fa2ce3bd..8ca03b30206 100644 --- a/Examples/MAX32690/UCL/README.md +++ b/Examples/MAX32690/UCL/README.md @@ -23,6 +23,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/UCL/project.mk b/Examples/MAX32690/UCL/project.mk index 62c6aa45bf9..63192db80bd 100644 --- a/Examples/MAX32690/UCL/project.mk +++ b/Examples/MAX32690/UCL/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/USB/USB_CDCACM/.cproject b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.cproject similarity index 100% rename from Examples/MAX32690/USB/USB_CDCACM/.cproject rename to Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.cproject diff --git a/Examples/MAX32690/USB/USB_CDCACM/.project b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.project similarity index 100% rename from Examples/MAX32690/USB/USB_CDCACM/.project rename to Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.project diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.settings/language.settings.xml b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32690/USB/USB_CDCACM/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.settings/org.eclipse.cdt.core.prefs similarity index 100% rename from Examples/MAX32690/USB/USB_CDCACM/.settings/org.eclipse.cdt.core.prefs rename to Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.settings/org.eclipse.cdt.core.prefs diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/README.md b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/c_cpp_properties.json b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/flash.gdb b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/launch.json b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/settings.json b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/settings.json new file mode 100644 index 00000000000..a22f5a12050 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/settings.json @@ -0,0 +1,89 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32690", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32690.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/tasks.json b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/Makefile b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/Makefile new file mode 100644 index 00000000000..d6ae4b890bf --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32690 +TARGET_UC := MAX32690 +TARGET_LC := max32690 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/README.md b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/README.md new file mode 100644 index 00000000000..025fc6056f2 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/README.md @@ -0,0 +1,44 @@ +## Description + +The example demonstartes the use of USB CDC-ACM driver class. After doing the required connections given below, run the program and a new serial terminal (COM port) appears in the device manager. Open a terminal application on the PC at 9600 baud rate, and echo the characters on the terminal. + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +(None - this project builds as a standard example) + +## Required Connections + +If using the MAX32690EVKIT: +- Connect a USB cable between the PC and the CN2 (USB/PWR/UART) connector. +- Install JP7(RX_EN) and JP8(TX_EN) headers. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. + +If using the MAX32690FTHR: +- Connect a USB cable between the PC and the J5 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. + +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + +## Expected Output + +The Console UART of the device will output these messages: + +``` +***** MAX32690 USB CDC-ACM Example ***** +Waiting for VBUS... +VBUS Connect +Suspended +Bus Reset +Bus Reset Done: High speed +Enumeration complete... +``` diff --git a/Examples/MAX32690/USB/USB_CDCACM/USB_CDCACM.launch b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/USB_CDCACM.launch similarity index 100% rename from Examples/MAX32690/USB/USB_CDCACM/USB_CDCACM.launch rename to Examples/MAX32690/USB/MAXUSB/USB_CDCACM/USB_CDCACM.launch diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/descriptors.h b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/descriptors.h new file mode 100644 index 00000000000..7df6c736585 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/descriptors.h @@ -0,0 +1,328 @@ +/** + * @file descriptors.h + * @brief descriptors listed here + */ + +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/* Define to prevent redundant inclusion */ +#ifndef EXAMPLES_MAX32690_USB_MAXUSB_USB_CDCACM_DESCRIPTORS_H_ +#define EXAMPLES_MAX32690_USB_MAXUSB_USB_CDCACM_DESCRIPTORS_H_ + +/* **** Includes **** */ +#include +#include "usb.h" +#include "hid_kbd.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* **** Definitions **** */ + +MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { + 0x12, /* bLength = 18 */ + 0x01, /* bDescriptorType = Device */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x02, /* bDeviceClass = comm class (2) */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x0B6A, /* idVendor (Maxim Integrated) */ + 0x003C, /* idProduct */ + 0x0100, /* bcdDevice */ + 0x01, /* iManufacturer Descriptor ID */ + 0x02, /* iProduct Descriptor ID */ + 0x00, /* iSerialNumber = (0) No string */ + 0x01 /* bNumConfigurations */ +}; + +/* Device qualifier needed for high-speed operation */ +MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) device_qualifier_descriptor = { + 0x0A, /* bLength = 10 */ + 0x06, /* bDescriptorType = Device Qualifier */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x02, /* bDeviceClass = Unspecified */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x01, /* bNumConfigurations */ + 0x00 /* Reserved, must be 0 */ +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #1 CDCACM Device */ + MXC_USB_interface_descriptor_t comm_interface_descriptor; + uint8_t header_functional_descriptor[5]; + uint8_t call_management_descriptor[5]; + uint8_t acm_functional_descriptor[4]; + uint8_t union_functional_descriptor[5]; + /* Interface #2 CDC Data*/ + MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; + MXC_USB_interface_descriptor_t data_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; +} + +config_descriptor = { + { + 0x09, /* bLength = 9 */ + 0x02, /* bDescriptorType = Config (2) */ + 0x0043, /* wTotalLength(L/H) */ + 0x02, /* bNumInterfaces */ + 0x01, /* bConfigValue */ + 0x02, /* iConfiguration */ + 0xE0, /* bmAttributes (self-powered, remote wakeup) */ + 0x01, /* MaxPower is 2ma (units are 2ma/bit) */ + }, + /********** Interface #1 : COMM Interface **********/ + { + /* First Interface Descriptor For Comm Class Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x02, /* bInterfaceClass = Communications Interface Class (2) */ + 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ + 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ + 0x04, /* iInterface */ + }, + { + /* Header Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x00, /* bDescriptorSubtype */ + 0x10, 0x01, /* bcdCDC */ + }, + { + /* Call Management Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x01, /* bDescriptorSubtype */ + 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ + 0x01, /* bmDataInterface */ + }, + { + /* Abstract Control Management Functional Descriptor */ + 0x04, /* bFunctionalLength = 4 */ + 0x24, /* bDescriptorType */ + 0x02, /* bDescriptorSubtype */ + 0x02, /* bmCapabilities */ + }, + { + /* Union Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x06, /* bDescriptorSubtype */ + 0x00, /* bmMasterInterface */ + 0x01, /* bmSlaveInterface0 */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x84, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0040, /* wMaxPacketSize */ + 0xff, /* bInterval (milliseconds) */ + }, + { + /* Second Interface Descriptor For Data Interface */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType (Interface) */ + 0x01, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints */ + 0x0a, /* bInterfaceClass = Data Interface (10) */ + 0x00, /* bInterfaceSubClass = none (0) */ + 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ + 0x04, /* biInterface = No Text String (0) */ + }, + { + /* OUT Endpoint 1 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x05, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #3) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00 /* bInterval (N/A) */ + } +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #1 CDCACM Device */ + MXC_USB_interface_descriptor_t comm_interface_descriptor; + uint8_t header_functional_descriptor[5]; + uint8_t call_management_descriptor[5]; + uint8_t acm_functional_descriptor[4]; + uint8_t union_functional_descriptor[5]; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; + /* Interface #2 CDCACM Data */ + MXC_USB_interface_descriptor_t data_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; +} + +config_descriptor_hs = { + { + 0x09, /* bLength */ + 0x02, /* bDescriptorType = Config */ + 0x0043, /* wTotalLength(L/H) */ + 0x02, /* bNumInterfaces */ + 0x01, /* bConfigurationValue */ + 0x02, /* iConfiguration */ + 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + /********** Interface #1 : COMM Interface **********/ + { + /* First Interface Descriptor For Comm Class Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x02, /* bInterfaceClass = Communications Interface Class (2) */ + 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ + 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ + 0x04, /* iInterface */ + }, + { + /* Header Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x00, /* bDescriptorSubtype */ + 0x10, 0x01, /* bcdCDC */ + }, + { + /* Call Management Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x01, /* bDescriptorSubtype */ + 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ + 0x01, /* bmDataInterface */ + }, + { + /* Abstract Control Management Functional Descriptor */ + 0x04, /* bFunctionalLength = 4 */ + 0x24, /* bDescriptorType */ + 0x02, /* bDescriptorSubtype */ + 0x02, /* bmCapabilities */ + }, + { + /* Union Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x06, /* bDescriptorSubtype */ + 0x00, /* bmMasterInterface */ + 0x01, /* bmSlaveInterface0 */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x84, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0200, /* wMaxPacketSize */ + 0xff, /* bInterval (milliseconds) */ + }, + { + /* Second Interface Descriptor For Data Interface */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType (Interface) */ + 0x01, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints */ + 0x0a, /* bInterfaceClass = Data Interface (10) */ + 0x00, /* bInterfaceSubClass = none (0) */ + 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ + 0x04, /* biInterface = No Text String (0) */ + }, + { + /* OUT Endpoint 1 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x05, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #3) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, +}; + +__attribute__((aligned(4))) uint8_t lang_id_desc[] = { + 0x04, /* bLength */ + 0x03, /* bDescriptorType */ + 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ +}; + +__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, + 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t prod_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', 0, + ' ', 0, 'C', 0, 'D', 0, 'C', 0, '-', 0, 'A', 0, 'C', 0, 'M', 0, +}; + +/* Not currently used (see device descriptor), but could be enabled if desired */ +__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ + 0x03, /* bDescriptorType */ + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, + '0', 0, '0', 0, '0', 0, '1', 0 }; + +__attribute__((aligned(4))) uint8_t cdcacm_func_desc[] = { + 0x20, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', + 0, ' ', 0, 'C', 0, 'D', 0, 'C', 0, 'A', 0, 'C', 0, 'M', 0, +}; + +#ifdef __cplusplus +} +#endif + +#endif // EXAMPLES_MAX32690_USB_MAXUSB_USB_CDCACM_DESCRIPTORS_H_ diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/main.c b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/main.c new file mode 100644 index 00000000000..deacc324757 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/main.c @@ -0,0 +1,398 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file + * @brief USB CDC-ACM example + * @details This project creates a virtual COM port, which loops back data sent to it. + * Load the project, connect a cable from the PC to the USB connector + * on the Evaluation Kit, and observe that the PC now recognizes a new COM port. + * A driver for the COM port, if needed, is located in the Driver/ subdirectory. + * + */ + +/* **** Includes **** */ +#include +#include +#include "mxc_errors.h" +#include "mcr_regs.h" +#include "mxc_sys.h" +#include "mxc_delay.h" +#include "board.h" +#include "led.h" +#include "usb.h" +#include "usb_event.h" +#include "enumerate.h" +#include "cdc_acm.h" +#include "descriptors.h" + +/* **** Definitions **** */ +#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS +#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) + +#define BUFFER_SIZE 64 + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) + +/* **** Global Data **** */ +volatile int configured; +volatile int suspended; +volatile unsigned int event_flags; +int remote_wake_en; + +/* **** Function Prototypes **** */ +static int setconfig_callback(MXC_USB_SetupPkt *sud, void *cbdata); +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int event_callback(maxusb_event_t evt, void *data); +static void usbAppSleep(void); +static void usbAppWakeup(void); +static int usb_read_callback(void); +static void echo_usb(void); +int usbStartupCallback(void); +int usbShutdownCallback(void); + +/* **** File Scope Variables **** */ + +/* This EP assignment must match the Configuration Descriptor */ +static acm_cfg_t acm_cfg = { + 2, /* EP OUT */ + MXC_USBHS_MAX_PACKET, /* OUT max packet size */ + 3, /* EP IN */ + MXC_USBHS_MAX_PACKET, /* IN max packet size */ + 4, /* EP Notify */ + MXC_USBHS_MAX_PACKET, /* Notify max packet size */ +}; + +static volatile int usb_read_complete; + +/* User-supplied function to delay usec micro-seconds */ +void delay_us(unsigned int usec) +{ + /* mxc_delay() takes unsigned long, so can't use it directly */ + MXC_Delay(usec); +} + +/* ************************************************************************** */ +int main(void) +{ + maxusb_cfg_options_t usb_opts; + + printf("\n\n***** " TOSTRING(TARGET) " USB CDC-ACM Example *****\n"); + printf("Waiting for VBUS...\n"); + + /* Initialize state */ + configured = 0; + suspended = 0; + event_flags = 0; + remote_wake_en = 0; + + /* Start out in full speed */ + usb_opts.enable_hs = 1; + usb_opts.delay_us = delay_us; /* Function which will be used for delays */ + usb_opts.init_callback = usbStartupCallback; + usb_opts.shutdown_callback = usbShutdownCallback; + + /* Initialize the usb module */ + if (MXC_USB_Init(&usb_opts) != 0) { + printf("usb_init() failed\n"); + while (1) {} + } + + /* Initialize the enumeration module */ + if (enum_init() != 0) { + printf("enum_init() failed\n"); + while (1) {} + } + + /* Register enumeration data */ + enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); + + if (usb_opts.enable_hs) { + /* Two additional descriptors needed for high-speed operation */ + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); + enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&device_qualifier_descriptor, 0); + } + + enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); + enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); + enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); + enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); + enum_register_descriptor(ENUM_DESC_STRING, cdcacm_func_desc, 4); + + /* Handle configuration */ + enum_register_callback(ENUM_SETCONFIG, setconfig_callback, NULL); + + /* Handle feature set/clear */ + enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); + enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); + + /* Initialize the class driver */ + if (acm_init(&config_descriptor.comm_interface_descriptor) != 0) { + printf("acm_init() failed\n"); + while (1) {} + } + + /* Register callbacks */ + MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, event_callback, NULL); + MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, event_callback, NULL); + acm_register_callback(ACM_CB_READ_READY, usb_read_callback); + + usb_read_complete = 0; + + /* Start with USB in low power mode */ + usbAppSleep(); + NVIC_EnableIRQ(USB_IRQn); + + /* Wait for events */ + while (1) { + echo_usb(); + + if (suspended || !configured) { + LED_Off(0); + } else { + LED_On(0); + } + + if (event_flags) { + /* Display events */ + if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); + printf("VBUS Disconnect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); + printf("VBUS Connect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); + printf("Bus Reset\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { /// + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); + printf("Bus Reset Done: %s speed\n", + (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); + printf("Suspended\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); + printf("Resume\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { + MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); + printf("Enumeration complete...\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { + MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); + printf("Remote Wakeup\n"); + } + } + } +} + +/* ************************************************************************** */ +static void echo_usb(void) +{ + int chars; + uint8_t buffer[BUFFER_SIZE]; + + if ((chars = acm_canread()) > 0) { + if (chars > BUFFER_SIZE) { + chars = BUFFER_SIZE; + } + + /* Read the data from USB */ + if (acm_read(buffer, chars) != chars) { + printf("acm_read() failed\n"); + return; + } + + /* Echo it back */ + if (acm_present()) { + if (acm_write(buffer, chars) != chars) { + printf("acm_write() failed\n"); + } + } + } +} + +/******************************************************************************/ +int usbStartupCallback(void) +{ + MXC_SYS_ClockSourceEnable(MXC_SYS_CLOCK_IPO); + MXC_MCR->ldoctrl |= MXC_F_MCR_LDOCTRL_0P9EN; + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + MXC_SYS_Reset_Periph(MXC_SYS_RESET0_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +int usbShutdownCallback(void) +{ + //return MXC_SYS_USBHS_Shutdown(); + MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/* ************************************************************************** */ +static int setconfig_callback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + /* Confirm the configuration value */ + if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { + configured = 1; + MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); + + acm_cfg.out_ep = config_descriptor.endpoint_descriptor_4.bEndpointAddress & 0x7; + acm_cfg.out_maxpacket = config_descriptor.endpoint_descriptor_4.wMaxPacketSize; + acm_cfg.in_ep = config_descriptor.endpoint_descriptor_5.bEndpointAddress & 0x7; + acm_cfg.in_maxpacket = config_descriptor.endpoint_descriptor_5.wMaxPacketSize; + acm_cfg.notify_ep = config_descriptor.endpoint_descriptor_3.bEndpointAddress & 0x7; + acm_cfg.notify_maxpacket = config_descriptor.endpoint_descriptor_3.wMaxPacketSize; + + return acm_configure(&acm_cfg); /* Configure the device class */ + } else if (sud->wValue == 0) { + configured = 0; + return acm_deconfigure(); + } + + return -1; +} + +/* ************************************************************************** */ +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 1; + } else { + /* Unknown callback */ + return -1; + } + + return 0; +} + +/* ************************************************************************** */ +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 0; + } else { + /* Unknown callback */ + return -1; + } + + return 0; +} + +/* ************************************************************************** */ +static void usbAppSleep(void) +{ + suspended = 1; +} + +/* ************************************************************************** */ +static void usbAppWakeup(void) +{ + suspended = 0; +} + +/* ************************************************************************** */ +static int event_callback(maxusb_event_t evt, void *data) +{ + /* Set event flag */ + MXC_SETBIT(&event_flags, evt); + + switch (evt) { + case MAXUSB_EVENT_NOVBUS: + MXC_USB_EventDisable(MAXUSB_EVENT_BRST); + MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); + MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); + MXC_USB_Disconnect(); + configured = 0; + enum_clearconfig(); + acm_deconfigure(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_VBUS: + MXC_USB_EventClear(MAXUSB_EVENT_BRST); + MXC_USB_EventEnable(MAXUSB_EVENT_BRST, event_callback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); /// + MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, event_callback, NULL); /// + MXC_USB_EventClear(MAXUSB_EVENT_SUSP); + MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, event_callback, NULL); + MXC_USB_Connect(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_BRST: + usbAppWakeup(); + enum_clearconfig(); + acm_deconfigure(); + configured = 0; + suspended = 0; + break; + + case MAXUSB_EVENT_BRSTDN: /// + if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor_hs, 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor, 0); + } else { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); + } + break; + + case MAXUSB_EVENT_SUSP: + usbAppSleep(); + break; + + case MAXUSB_EVENT_DPACT: + usbAppWakeup(); + break; + + default: + break; + } + + return 0; +} + +/* ************************************************************************** */ + +static int usb_read_callback(void) +{ + usb_read_complete = 1; + return 0; +} + +/* ************************************************************************** */ + +void USB_IRQHandler(void) +{ + MXC_USB_EventHandler(); +} + +/* ************************************************************************** */ + +void SysTick_Handler(void) +{ + MXC_DelayHandler(); +} diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/project.mk b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/project.mk new file mode 100644 index 00000000000..24168f84b87 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CDCACM/project.mk @@ -0,0 +1,33 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU, set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable MAXUSB library +LIB_MAXUSB = 1 diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.cproject b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.cproject similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.cproject rename to Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.cproject diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.project b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.project similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.project rename to Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.project diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/language.settings.xml b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.core.prefs similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.core.prefs rename to Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.settings/org.eclipse.cdt.core.prefs diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/README.md b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/c_cpp_properties.json b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/launch.json b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json new file mode 100644 index 00000000000..a22f5a12050 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json @@ -0,0 +1,89 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32690", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32690.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/Makefile b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/Makefile new file mode 100644 index 00000000000..d6ae4b890bf --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32690 +TARGET_UC := MAX32690 +TARGET_LC := max32690 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/README.md b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/README.md new file mode 100644 index 00000000000..7bdee153df7 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/README.md @@ -0,0 +1,44 @@ +## Description + +The example demonstartes the use of USB composite device with Mass Storage driver class and CDC-SCM driver class. After doing the required connections given below, run the program and two new devices appear in the device manager, a Portable device and COM Port. The portable device can be read and written to. Open a terminal application on the PC at 115200 baud rate, and echo the characters on the terminal. + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +(None - this project builds as a standard example) + +## Required Connections + +If using the MAX32690EVKIT: +- Connect a USB cable between the PC and the CN2 (USB/PWR/UART) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. +- Default EV kit hardware configuration. + +If using the MAX32690FTHR: +- Connect a USB cable between the PC and the J5 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. + +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + +## Expected Output + +The Console UART of the device will output these messages: + +``` +****** USB Composite Device (CDCACM and Mass Storage) Example ****** +Waiting for VBUS... +VBUS Connect +Suspended +Bus Reset +Bus Reset Done: High speed +Enumeration complete... +``` diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/USB_CompositeDevice_MSC_CDC.launch b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/USB_CompositeDevice_MSC_CDC.launch similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/USB_CompositeDevice_MSC_CDC.launch rename to Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/USB_CompositeDevice_MSC_CDC.launch diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/descriptors.h b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/descriptors.h new file mode 100644 index 00000000000..ac59e8f39ab --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/descriptors.h @@ -0,0 +1,443 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32690_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ +#define EXAMPLES_MAX32690_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ + +#include +#include "usb.h" +#include "hid_kbd.h" + +MXC_USB_device_descriptor_t __attribute__((aligned(4))) composite_device_descriptor = { + 0x12, /* bLength */ + 0x01, /* bDescriptorType = Device */ + 0x0200, + /* bcdUSB USB spec rev (BCD) */ /// + 0xEF, /* bDeviceClass = code specified by interface descriptors */ + 0x02, /* bDeviceSubClass = code specified by interface descriptors */ + 0x01, /* bDeviceProtocol = code specified by interface descriptors */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x0B6A, /* idVendor (Maxim Integrated) */ + 0x003C, + /* idProduct */ /// + 0x0100, /* bcdDevice */ + 0x01, /* iManufacturer Descriptor ID */ + 0x02, /* iProduct Descriptor ID */ + 0x00, /* iSerialNumber Descriptor ID */ + 0x01 /* bNumConfigurations */ +}; + +/* Device qualifier needed for high-speed operation */ +MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) +composite_device_qualifier_descriptor = { + 0x0A, /* bLength = 10 */ + 0x06, /* bDescriptorType = Device Qualifier */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0xEF, /* bDeviceClass = Unspecified */ + 0x02, /* bDeviceSubClass */ + 0x01, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x01, /* bNumConfigurations */ + 0x00 /* Reserved, must be 0 */ +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #0 Mass Storage Device */ + MXC_USB_interface_descriptor_t msc_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; + /* Interface Association Descriptor */ + uint8_t interface_association_descriptor[8]; + /* Interface #1 CDCACM Device */ + MXC_USB_interface_descriptor_t comm_interface_descriptor; + uint8_t header_functional_descriptor[5]; + uint8_t call_management_descriptor[5]; + uint8_t acm_functional_descriptor[4]; + uint8_t union_functional_descriptor[5]; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; + /* Interface #2 CDC Data*/ + MXC_USB_interface_descriptor_t data_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; +} + +composite_config_descriptor = { + { + 0x09, /* bLength */ + 0x02, /* bDescriptorType = Config */ + 0x0062, /* wTotalLength(L/H) = 98 bytes */ + 0x03, /* bNumInterfaces */ + 0x01, /* bConfigurationValue */ + 0x02, /* iConfiguration */ /// + 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ + 0x01, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + /********** Interface #0 : Mass Storage Device **********/ + { + /* Second Interface Descriptor For MSC Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints (one for IN one for OUT) */ + 0x08, /* bInterfaceClass = Mass Storage (8) */ + 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ + 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ + 0x05, /* iInterface */ + }, + { + /* OUT Endpoint 1 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00 /* bInterval (N/A) */ + }, + /********** Interface Association Descriptor **********/ + { + 0x08, /* bLength */ + 0x0B, /* bDescriptorType */ + 0x01, /* bFirstInterface */ + 0x02, /* bInterfaceCount */ + 0x02, /* bFunctionClass */ + 0x02, /* bFunctionSubClass */ + 0x01, /* bFunctionProtocol */ + 0x00, /* iFunction */ + }, + /********** Interface #1 : COMM Interface **********/ + { + /* First Interface Descriptor For Comm Class Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x01, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x02, /* bInterfaceClass = Communications Interface Class (2) */ + 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ + 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ + 0x04, /* iInterface */ + }, + { + /* Header Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x00, /* bDescriptorSubtype */ + 0x10, 0x01, /* bcdCDC */ + }, + { + /* Call Management Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x01, /* bDescriptorSubtype */ + 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ + 0x01, /* bmDataInterface */ + }, + { + /* Abstract Control Management Functional Descriptor */ + 0x04, /* bFunctionalLength = 4 */ + 0x24, /* bDescriptorType */ + 0x02, /* bDescriptorSubtype */ + 0x02, /* bmCapabilities */ + }, + { + /* Union Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x06, /* bDescriptorSubtype */ + 0x00, /* bmMasterInterface */ + 0x01, /* bmSlaveInterface0 */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x84, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0040, /* wMaxPacketSize */ + 0xff, /* bInterval (milliseconds) */ + }, + { + /* Second Interface Descriptor For Data Interface */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType (Interface) */ + 0x02, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints */ + 0x0a, /* bInterfaceClass = Data Interface (10) */ + 0x00, /* bInterfaceSubClass = none (0) */ + 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ + 0x04, /* biInterface = No Text String (0) */ + }, + { + /* OUT Endpoint 1 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x05, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #3) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #0 Mass Storage Device */ + MXC_USB_interface_descriptor_t msc_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; + /* Interface Association Descriptor */ + uint8_t interface_association_descriptor[8]; + /* Interface #1 CDCACM Device */ + MXC_USB_interface_descriptor_t comm_interface_descriptor; + uint8_t header_functional_descriptor[5]; + uint8_t call_management_descriptor[5]; + uint8_t acm_functional_descriptor[4]; + uint8_t union_functional_descriptor[5]; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; + /* Interface #2 CDC Data*/ + MXC_USB_interface_descriptor_t data_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; +} + +composite_config_descriptor_hs = { + { + 0x09, /* bLength */ + 0x02, /* bDescriptorType = Config */ + 0x0062, /* wTotalLength(L/H) */ + 0x03, /* bNumInterfaces */ + 0x01, /* bConfigurationValue */ + 0x02, /* iConfiguration */ + 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + /********** Interface #0 : Mass Storage Device **********/ + { + /* Second Interface Descriptor For MSC Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints (one for IN one for OUT) */ + 0x08, /* bInterfaceClass = Mass Storage (8) */ + 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ + 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ + 0x05, /* iInterface */ + }, + { + /* OUT Endpoint 1 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x01, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x01 /* bInterval (N/A) */ + }, + /********** Interface Association Descriptor **********/ + { + 0x08, /* bLength */ + 0x0B, /* bDescriptorType */ + 0x01, /* bFirstInterface */ + 0x02, /* bInterfaceCount */ + 0x02, /* bFunctionClass */ + 0x02, /* bFunctionSubClass */ + 0x01, /* bFunctionProtocol */ + 0x00, /* iFunction */ + }, + /********** Interface #1 : COMM Interface **********/ + { + /* First Interface Descriptor For Comm Class Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x01, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x02, /* bInterfaceClass = Communications Interface Class (2) */ + 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ + 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ + 0x04, /* iInterface */ + }, + { + /* Header Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x00, /* bDescriptorSubtype */ + 0x10, 0x01, /* bcdCDC */ + }, + { + /* Call Management Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x01, /* bDescriptorSubtype */ + 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ + 0x01, /* bmDataInterface */ + }, + { + /* Abstract Control Management Functional Descriptor */ + 0x04, /* bFunctionalLength = 4 */ + 0x24, /* bDescriptorType */ + 0x02, /* bDescriptorSubtype */ + 0x02, /* bmCapabilities */ + }, + { + /* Union Functional Descriptor */ + 0x05, /* bFunctionalLength = 5 */ + 0x24, /* bDescriptorType */ + 0x06, /* bDescriptorSubtype */ + 0x00, /* bmMasterInterface */ + 0x01, /* bmSlaveInterface0 */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x84, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0200, /* wMaxPacketSize */ + 0xff, /* bInterval (milliseconds) */ + }, + { + /* Second Interface Descriptor For Data Interface */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType (Interface) */ + 0x02, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints */ + 0x0a, /* bInterfaceClass = Data Interface (10) */ + 0x00, /* bInterfaceSubClass = none (0) */ + 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ + 0x04, /* biInterface = No Text String (0) */ + }, + { + /* OUT Endpoint 1 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x05, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #3) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, +}; + +__attribute__((aligned(4))) uint8_t report_descriptor[] = { + 0x05, 0x01, /* Usage Page (generic desktop) */ + 0x09, 0x06, /* Usage (keyboard) */ + 0xa1, 0x01, /* Collection */ + 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ + 0x19, 0xe0, /* Usage Minimum = 224 */ + 0x29, 0xe7, /* Usage Maximum = 231 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x01, /* Logical Maximum = 1 */ + 0x75, 0x01, /* Report Size = 1 */ + 0x95, 0x08, /* Report Count = 8 */ + 0x81, 0x02, /* Input(Data,Variable,Absolute) */ + 0x95, 0x01, /* Report Count = 1 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x81, 0x01, /* Input(Constant) */ + 0x19, 0x00, /* Usage Minimum = 0 */ + 0x29, 0x65, /* Usage Maximum = 101 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x65, /* Logical Maximum = 101 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x95, 0x01, /* Report Count = 1 */ + 0x81, 0x00, /* Input(Data,Variable,Array) */ + 0xc0 /* End Collection */ +}; + +__attribute__((aligned(4))) uint8_t lang_id_desc[] = { + 0x04, /* bLength */ + 0x03, /* bDescriptorType */ + 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ +}; + +__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, + 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t prod_id_desc[] = { + 0x34, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', + 0, 'C', 0, 'o', 0, 'm', 0, 'p', 0, 'o', 0, 's', 0, 'i', 0, 't', 0, + 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, +}; + +__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ + 0x03, /* bDescriptorType */ + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, + '0', 0, '0', 0, '0', 0, '1', 0 }; + +__attribute__((aligned(4))) uint8_t cdcacm_func_desc[] = { + 0x20, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', + 0, ' ', 0, 'C', 0, 'D', 0, 'C', 0, 'A', 0, 'C', 0, 'M', 0, +}; + +__attribute__((aligned(4))) uint8_t msc_func_desc[] = { + 0x3A, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', 0, 'M', + 0, 'a', 0, 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, + 'g', 0, 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, +}; + +#endif // EXAMPLES_MAX32690_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/main.c b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/main.c new file mode 100644 index 00000000000..0bcade00349 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/main.c @@ -0,0 +1,438 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief USB composite device with Mass Storage driver class and CDC-SCM driver class. +*/ + +#include +#include +#include "mxc_sys.h" +#include "mcr_regs.h" +#include "mxc_delay.h" +#include "board.h" +#include "led.h" +#include "usb.h" +#include "mscmem.h" +#include "usb_event.h" +#include "enumerate.h" +#include "cdc_acm.h" +#include "msc.h" +#include "descriptors.h" + +/* **** Definitions **** */ +#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS +#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) + +#define BUFFER_SIZE 64 + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) + +/* **** Global Data **** */ +volatile int configured; +volatile int suspended; +volatile unsigned int event_flags; +int remote_wake_en; + +/* **** Function Prototypes **** */ + +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int eventCallback(maxusb_event_t evt, void *data); +static void usbAppSleep(void); +static void usbAppWakeup(void); +static int usbReadCallback(void); +int usbStartupCallback(void); +int usbShutdownCallback(void); +static void echoUSB(void); + +/* This EP assignment must match the Configuration Descriptor */ +static msc_cfg_t msc_cfg = { + 1, /* EP OUT */ + MXC_USBHS_MAX_PACKET, /* OUT max packet size */ + 2, /* EP IN */ + MXC_USBHS_MAX_PACKET, /* IN max packet size */ +}; + +static const msc_idstrings_t ids = { + "MAXIM", /* Vendor string. Maximum of 8 bytes */ + "MSC Example", /* Product string. Maximum of 16 bytes */ + "1.0" /* Version string. Maximum of 4 bytes */ +}; + +/* This EP assignment must match the Configuration Descriptor */ +static acm_cfg_t acm_cfg = { + 2, /* EP OUT */ + MXC_USBHS_MAX_PACKET, /* OUT max packet size */ + 3, /* EP IN */ + MXC_USBHS_MAX_PACKET, /* IN max packet size */ + 4, /* EP Notify */ + MXC_USBHS_MAX_PACKET, /* Notify max packet size */ +}; + +static volatile int usb_read_complete; + +/* Functions to control "disk" memory. See msc.h for definitions. */ +static const msc_mem_t mem = { mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, + mscmem_Size, mscmem_Read, mscmem_Write }; + +/** + * User-supplied function to delay usec micro-seconds + * + * @param[in] usec The usec time to delay. + */ +void delay_us(unsigned int usec) +{ + /* mxc_delay() takes unsigned long, so can't use it directly */ + MXC_Delay(usec); +} + +/* ************************************************************************** */ +int main(void) +{ + maxusb_cfg_options_t usb_opts; + + printf("\n\n***** " TOSTRING( + TARGET) " USB Composite Device (CDCACM and Mass Storage) Example *****\n"); + printf("Waiting for VBUS...\n"); + + /* Initialize state */ + configured = 0; + suspended = 0; + event_flags = 0; + remote_wake_en = 0; + + /* Start out in full speed */ + usb_opts.enable_hs = 1; /* 0:Full Speed 1:High Speed */ + usb_opts.delay_us = delay_us; /* Function which will be used for delays */ + usb_opts.init_callback = usbStartupCallback; + usb_opts.shutdown_callback = usbShutdownCallback; + + /* Initialize the usb module */ + if (MXC_USB_Init(&usb_opts) != 0) { + printf("usb_init() failed\n"); + while (1) {} + } + + /* Initialize the enumeration module */ + if (enum_init() != 0) { + printf("enum_init() failed\n"); + while (1) {} + } + + /* Register enumeration data */ + enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&composite_device_descriptor, 0); + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); + if (usb_opts.enable_hs) { + /* Two additional descriptors needed for high-speed operation */ + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor_hs, 0); + enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&composite_device_qualifier_descriptor, + 0); + } + enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); + enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); + enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); + enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); + enum_register_descriptor(ENUM_DESC_STRING, cdcacm_func_desc, 4); + enum_register_descriptor(ENUM_DESC_STRING, msc_func_desc, 5); + + /* Handle configuration */ + enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); + + /* Handle feature set/clear */ + enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); + enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); + + /* Initialize the class driver */ + if (msc_init(&composite_config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { + printf("msc_init() failed\n"); + while (1) {} + } + + if (acm_init(&composite_config_descriptor.comm_interface_descriptor) != 0) { + printf("acm_init() failed\n"); + while (1) {} + } + + /* Register callbacks */ + MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); + MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); + acm_register_callback(ACM_CB_READ_READY, usbReadCallback); + usb_read_complete = 0; + + /* Start with USB in low power mode */ + usbAppSleep(); + NVIC_EnableIRQ(USB_IRQn); + + /* Wait for events */ + while (1) { + echoUSB(); + + if (suspended || !configured) { + LED_Off(0); + } else { + LED_On(0); + } + + if (event_flags) { + /* Display events */ + if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); + printf("VBUS Disconnect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); + printf("VBUS Connect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); + printf("Bus Reset\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { /// + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); + printf("Bus Reset Done: %s speed\n", + (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); + printf("Suspended\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); + printf("Resume\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { + MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); + printf("Enumeration complete...\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { + MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); + printf("Remote Wakeup\n"); + } + } + } +} + +/******************************************************************************/ +static void echoUSB(void) +{ + int chars; + uint8_t buffer[BUFFER_SIZE]; + + if ((chars = acm_canread()) > 0) { + if (chars > BUFFER_SIZE) { + chars = BUFFER_SIZE; + } + + // Read the data from USB + if (acm_read(buffer, chars) != chars) { + printf("acm_read() failed\n"); + return; + } + + // Echo it back + if (acm_present()) { + if (acm_write(buffer, chars) != chars) { + printf("acm_write() failed\n"); + } + } + } +} + +/******************************************************************************/ +int usbStartupCallback(void) +{ + MXC_SYS_ClockSourceEnable(MXC_SYS_CLOCK_IPO); + MXC_MCR->ldoctrl |= MXC_F_MCR_LDOCTRL_0P9EN; + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + MXC_SYS_Reset_Periph(MXC_SYS_RESET0_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +int usbShutdownCallback(void) +{ + MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/* ************************************************************************** */ + +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + /* Confirm the configuration value */ + if (sud->wValue == composite_config_descriptor.config_descriptor.bConfigurationValue) { + // on++; + configured = 1; + MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); + if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { /// + msc_cfg.out_ep = composite_config_descriptor_hs.endpoint_descriptor_1.bEndpointAddress & + 0x7; + msc_cfg.out_maxpacket = + composite_config_descriptor_hs.endpoint_descriptor_1.wMaxPacketSize; + msc_cfg.in_ep = composite_config_descriptor_hs.endpoint_descriptor_2.bEndpointAddress & + 0x7; + msc_cfg.in_maxpacket = + composite_config_descriptor_hs.endpoint_descriptor_2.wMaxPacketSize; + } else { + msc_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_1.bEndpointAddress & + 0x7; + msc_cfg.out_maxpacket = + composite_config_descriptor.endpoint_descriptor_1.wMaxPacketSize; + msc_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_2.bEndpointAddress & + 0x7; + msc_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_2.wMaxPacketSize; + } + + acm_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_4.bEndpointAddress & 0x7; + acm_cfg.out_maxpacket = composite_config_descriptor.endpoint_descriptor_4.wMaxPacketSize; + acm_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_5.bEndpointAddress & 0x7; + acm_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_5.wMaxPacketSize; + acm_cfg.notify_ep = composite_config_descriptor.endpoint_descriptor_3.bEndpointAddress & + 0x7; + acm_cfg.notify_maxpacket = composite_config_descriptor.endpoint_descriptor_3.wMaxPacketSize; + + msc_configure(&msc_cfg); + return acm_configure(&acm_cfg); + /* Configure the device class */ + } else if (sud->wValue == 0) { + configured = 0; + msc_deconfigure(); + return acm_deconfigure(); + } + + return -1; +} + +/* ************************************************************************** */ + +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 1; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/* ************************************************************************** */ + +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 0; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/* ************************************************************************** */ + +static void usbAppSleep(void) +{ + /* TODO: Place low-power code here */ + suspended = 1; +} + +/* ************************************************************************** */ + +static void usbAppWakeup(void) +{ + /* TODO: Place low-power code here */ + suspended = 0; +} + +/* ************************************************************************** */ +static int eventCallback(maxusb_event_t evt, void *data) +{ + /* Set event flag */ + MXC_SETBIT(&event_flags, evt); + + switch (evt) { + case MAXUSB_EVENT_NOVBUS: + MXC_USB_EventDisable(MAXUSB_EVENT_BRST); + MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); + MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); + MXC_USB_Disconnect(); + configured = 0; + enum_clearconfig(); + msc_deconfigure(); + acm_deconfigure(); + usbAppSleep(); + break; + case MAXUSB_EVENT_VBUS: + MXC_USB_EventClear(MAXUSB_EVENT_BRST); + MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); /// + MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, eventCallback, NULL); /// + MXC_USB_EventClear(MAXUSB_EVENT_SUSP); + MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); + MXC_USB_Connect(); + usbAppSleep(); + break; + case MAXUSB_EVENT_BRST: + usbAppWakeup(); + enum_clearconfig(); + msc_deconfigure(); + acm_deconfigure(); + configured = 0; + suspended = 0; + break; + case MAXUSB_EVENT_BRSTDN: /// + if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor_hs, + 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor, 0); + } else { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor_hs, + 0); + } + break; + case MAXUSB_EVENT_SUSP: + usbAppSleep(); + break; + case MAXUSB_EVENT_DPACT: + usbAppWakeup(); + break; + default: + break; + } + + return 0; +} + +/* ************************************************************************** */ + +void USB_IRQHandler(void) +{ + MXC_USB_EventHandler(); +} + +/******************************************************************************/ +static int usbReadCallback(void) +{ + usb_read_complete = 1; + return 0; +} diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.c b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.c new file mode 100644 index 00000000000..79ba24bfe75 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.c @@ -0,0 +1,310 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file mscmem.h + * @brief Memory routines used by the USB Mass Storage Class example. + * See the msc_mem_t structure in msc.h for function details. + * @details Functions are provided for using the internal RAM of the + * device or the external SPI flash memory. Use the SPIXF_DISK + * and RAM_DISK defines to select the desired memory at compile + * time. + */ + +#include "mscmem.h" +#include +#include +//#include "mx25.h" +//#include "spixf.h" + +/***** Definitions *****/ + +#define SPIXF_DISK 0 +#define RAM_DISK 1 + +#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ +#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ + +/***** Global Data *****/ + +/***** File Scope Variables *****/ + +static int initialized = 0; +static int running = 0; + +#if SPIXF_DISK + +#define MX25_BAUD 5000000 /* SPI clock rate to communicate with the MX25 */ + +#define MX25_SECTOR_SIZE 4096 /* Number of bytes in one sector of the MX25 */ +#define MX25_SECTOR_SIZE_SHIFT \ + 12 /* The shift value used to convert between addresses and block numbers */ +#define MX25_NUM_SECTORS 2048 /* Total number of sectors in the MX25 */ + +#define MXC_SPIXF_WIDTH MXC_SPIXF_WIDTH_1 /*Number of data lines*/ + +#define LBA_PER_SECTOR (MX25_SECTOR_SIZE >> LBA_SIZE_SHIFT) +#define INVALID_SECTOR \ + MX25_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ + +/***** File Scope Variables *****/ +static uint32_t sectorNum = INVALID_SECTOR; +static uint8_t sector[MX25_SECTOR_SIZE]; +static int sectorDirty = 0; + +/***** Function Prototypes *****/ +static uint32_t getSectorNum(uint32_t lba); +static uint32_t getSectorAddr(uint32_t lba); +static uint32_t getSector(uint32_t num); + +/******************************************************************************/ +static uint32_t getSectorNum(uint32_t lba) +{ + /* Absolute_address = lba * LBA_SIZE */ + /* Sector_num = Absolute_address / MX25_SECTOR_SIZE */ + /* Sector_num = lba * 512 / 4096 */ + return lba >> (MX25_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); +} + +/******************************************************************************/ +static uint32_t getSectorAddr(uint32_t lba) +{ + /* eight 512 byte blocks in each sector */ + return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; +} + +/******************************************************************************/ +static uint32_t getSector(uint32_t num) +{ + /* New sector requested? */ + if (sectorNum != num) { + /* Is the current sector real? */ + if (sectorNum != INVALID_SECTOR) { + /* Was it written to after it was read from memory? */ + if (sectorDirty) { + /* Erase the old data. */ + MX25_Erase(sectorNum << MX25_SECTOR_SIZE_SHIFT, MX25_Erase_4K); + /* Write the new */ + MX25_Program_Page(sectorNum << MX25_SECTOR_SIZE_SHIFT, sector, MX25_SECTOR_SIZE, + MXC_SPIXF_WIDTH); + /* Mark data as clean */ + sectorDirty = 0; + } + } + + /* Requesting a new valid sector? */ + if (num != INVALID_SECTOR) { + MX25_Read(num << MX25_SECTOR_SIZE_SHIFT, sector, MX25_SECTOR_SIZE, MXC_SPIXF_WIDTH); + sectorDirty = 0; + sectorNum = num; + } + } + + return 0; +} + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + MXC_SPIXF_SetSPIFrequency(MX25_BAUD); + MX25_Init(); + MX25_Reset(); + + if (MXC_SPIXF_WIDTH == MXC_SPIXF_WIDTH_4) { + MX25_Quad(1); + } else { + MX25_Quad(0); + } + + initialized = 1; + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + /* Get number of 512 byte chunks the MX25 contains. */ + return (MX25_SECTOR_SIZE >> LBA_SIZE_SHIFT) * MX25_NUM_SECTORS; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to MX25 sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from MX25 */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(buffer, sector + addr, LBA_SIZE); + + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to MX25 sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from MX25 */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(sector + addr, buffer, LBA_SIZE); + sectorDirty = 1; + + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Turn on the MX25 if it is not already. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the initialization succeeded. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* TODO - could shut down XIPF interface here. */ + + /* Flush the currently cached sector if necessary. */ + if (getSector(INVALID_SECTOR)) { + return 1; + } + + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#elif RAM_DISK + +#define NUM_PAGES 0x100 +static uint8_t mem[NUM_PAGES][LBA_SIZE]; + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + initialized = 1; +#if (ERASE_MEMORY_ON_INIT) + memset(mem, 0, sizeof(mem)); +#endif + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + return NUM_PAGES; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(buffer, mem[lba], LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(mem[lba], buffer, LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Not much to do for this implementation. The RAM is always ready. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the RAM has been initialized. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* Nothing to do for this implementation. All data is written as it is */ + /* received so there are no pending writes that need to be flushed. */ + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#else +#error "You must assign either RAM_DISK or SPIXF_DISK to 1." +#endif diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.h b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.h new file mode 100644 index 00000000000..43a1367a4ad --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/mscmem.h @@ -0,0 +1,84 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file mscmem.h + * @brief Memory routines used by the USB Mass Storage Class example. + * See the msc_mem_t structure in msc.h for function details. + */ + +#ifndef EXAMPLES_MAX32690_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ +#define EXAMPLES_MAX32690_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ + +#include + +/* **** Definitions **** */ +#define ERASE_MEMORY_ON_INIT \ + 1 /* Configuration option to clear the memory (to 0s) on initialization. */ +/* Use 1 to clear or 0 to leave untouched. */ +/** + * @brief Perform any initialization necessary to prepare the memory for reading/writing data. + * @returns 0 if initialization is successful, non-zero if an error occurred. + */ +int mscmem_Init(void); + +/** + * @brief Activates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Start(void); + +/** + * @brief Deactivates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Stop(void); + +/** + * @brief Reports the total size of the mass-storage memory. + * @returns The number of 512 byte blocks contained in the memory. + */ +uint32_t mscmem_Size(void); + +/** + * @brief Reads 512 bytes of data from the memory. + * @param lba The index of the 512 byte block to read. + * @param buffer A byte array of at least 512 bytes to hold the values read. + * @returns 0 if reading is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Read(uint32_t lba, uint8_t *buffer); + +/** + * @brief Writes 512 bytes of data to the memory. + * @param lba The index of the 512 byte block to write. + * @param buffer A byte array of at least 512 bytes holding the values to write. + * @returns 0 if writing is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Write(uint32_t lba, uint8_t *buffer); + +/** + * @brief Checks if the memory is ready to be read/written. + * @returns non-zero if the memory is ready, 0 otherwise. + */ +int mscmem_Ready(void); + +#endif // EXAMPLES_MAX32690_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/project.mk b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/project.mk new file mode 100644 index 00000000000..24168f84b87 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_CDC/project.mk @@ -0,0 +1,33 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU, set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable MAXUSB library +LIB_MAXUSB = 1 diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.cproject b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.cproject similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.cproject rename to Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.cproject diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.project b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.project similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.project rename to Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.project diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.core.prefs similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.core.prefs rename to Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.settings/org.eclipse.cdt.core.prefs diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/README.md b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/launch.json b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/settings.json b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/settings.json new file mode 100644 index 00000000000..a22f5a12050 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/settings.json @@ -0,0 +1,89 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32690", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32690.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/Makefile b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/Makefile new file mode 100644 index 00000000000..d6ae4b890bf --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32690 +TARGET_UC := MAX32690 +TARGET_LC := max32690 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/README.md b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/README.md new file mode 100644 index 00000000000..a03d3d32010 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/README.md @@ -0,0 +1,36 @@ +## Description + +The example demonstartes the use of USB composite device with Mass Storage driver class and HID driver class. After doing the required connections given below, run the program and two new devices appear in the device manager, a Portable device and a HID keyboard device. The portable device can be read and written to. Open any text editor in the PC, pressing the switch SW1 on the evkit wil print out 'Maxim Integrated' in the editor one letter at a time. + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +(None - this project builds as a standard example) + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR/UART) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. +- Default EV kit hardware configuration. +- Connect Pin 0.7 to Pin 4.0 + +## Expected Output + +The Console UART of the device will output these messages: + +``` +Connect Port 0.7 to Port 4.0 +***** MAX32690 USB Composite Device (Keyboard and Mass Storage) Example ***** +Waiting for VBUS... +VBUS Connect +Suspended +Bus Reset +Bus Reset +Enumeration complete. Press SW2 to send character. +``` diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/USB_CompositeDevice_MSC_HID.launch b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/USB_CompositeDevice_MSC_HID.launch similarity index 100% rename from Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/USB_CompositeDevice_MSC_HID.launch rename to Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/USB_CompositeDevice_MSC_HID.launch diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/descriptors.h b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/descriptors.h new file mode 100644 index 00000000000..e2a5cd05ffe --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/descriptors.h @@ -0,0 +1,215 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32690_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ +#define EXAMPLES_MAX32690_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ + +#include +#include "usb.h" +#include "hid_kbd.h" + +MXC_USB_device_descriptor_t __attribute__((aligned(4))) composite_device_descriptor = { + 0x12, /* bLength */ + 0x01, /* bDescriptorType = Device */ + 0x0200, + /* bcdUSB USB spec rev (BCD) */ /// + 0x00, /* bDeviceClass = code specified by interface descriptors */ + 0x00, /* bDeviceSubClass = code specified by interface descriptors */ + 0x00, /* bDeviceProtocol = code specified by interface descriptors */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x0B6A, /* idVendor (Maxim Integrated) */ + 0x003C, + /* idProduct */ /// + 0x0100, /* bcdDevice */ + 0x01, /* iManufacturer Descriptor ID */ + 0x02, /* iProduct Descriptor ID */ + 0x03, /* iSerialNumber Descriptor ID */ + 0x01 /* bNumConfigurations */ +}; + +/* Device qualifier needed for high-speed operation */ +MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) +composite_device_qualifier_descriptor = { + 0x0A, /* bLength = 10 */ + 0x01, /* bDescriptorType = Device Qualifier */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x00, /* bDeviceClass = Unspecified */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x01, /* bNumConfigurations */ + 0x00 /* Reserved, must be 0 */ +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #1 HID Keyboard */ + MXC_USB_interface_descriptor_t hid_interface_descriptor; + hid_descriptor_t hid_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; + /* Interface #2 Mass Storage Device */ + MXC_USB_interface_descriptor_t msc_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; +} + +composite_config_descriptor = { + { + 0x09, /* bLength */ + 0x02, /* bDescriptorType = Config */ + 0x0039, /* wTotalLength(L/H) = 57 bytes */ + 0x02, /* bNumInterfaces */ + 0x01, /* bConfigurationValue */ + 0x02, /* iConfiguration */ + 0xA0, /* bmAttributes (bus-powered, remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + /********** Interface #0 : HID Keyboard **********/ + { + /* First Interface Descriptor */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x03, /* bInterfaceClass = HID */ + 0x00, /* bInterfaceSubClass */ + 0x00, /* bInterfaceProtocol */ + 0x04, /* iInterface */ + }, + { + /* HID Descriptor */ + 0x09, /* bFunctionalLength */ + 0x21, /* bDescriptorType = HID */ + 0x0110, /* bcdHID Rev 1.1 */ + 0x00, /* bCountryCode */ + 0x01, /* bNumDescriptors */ + 0x22, /* bDescriptorType = Report */ + 0x002b, /* wDescriptorLength */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0040, /* wMaxPacketSize */ + 0x0a /* bInterval (milliseconds) */ + }, + /********** Interface #1 : Mass Storage Device **********/ + { + /* Second Interface Descriptor For MSC Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x01, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints (one for IN one for OUT) */ + 0x08, /* bInterfaceClass = Mass Storage (8) */ + 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ + 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ + 0x05, /* iInterface */ + }, + { + /* OUT Endpoint 1 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00 /* bInterval (N/A) */ + }, +}; + +__attribute__((aligned(4))) uint8_t report_descriptor[] = { + 0x05, 0x01, /* Usage Page (generic desktop) */ + 0x09, 0x06, /* Usage (keyboard) */ + 0xa1, 0x01, /* Collection */ + 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ + 0x19, 0xe0, /* Usage Minimum = 224 */ + 0x29, 0xe7, /* Usage Maximum = 231 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x01, /* Logical Maximum = 1 */ + 0x75, 0x01, /* Report Size = 1 */ + 0x95, 0x08, /* Report Count = 8 */ + 0x81, 0x02, /* Input(Data,Variable,Absolute) */ + 0x95, 0x01, /* Report Count = 1 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x81, 0x01, /* Input(Constant) */ + 0x19, 0x00, /* Usage Minimum = 0 */ + 0x29, 0x65, /* Usage Maximum = 101 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x65, /* Logical Maximum = 101 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x95, 0x01, /* Report Count = 1 */ + 0x81, 0x00, /* Input(Data,Variable,Array) */ + 0xc0 /* End Collection */ +}; + +__attribute__((aligned(4))) uint8_t lang_id_desc[] = { + 0x04, /* bLength */ + 0x03, /* bDescriptorType */ + 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ +}; + +__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, + 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t prod_id_desc[] = { + 0x34, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', + 0, 'C', 0, 'o', 0, 'm', 0, 'p', 0, 'o', 0, 's', 0, 'i', 0, 't', 0, + 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, +}; + +__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ + 0x03, /* bDescriptorType */ + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, + '0', 0, '0', 0, '0', 0, '1', 0 }; + +__attribute__((aligned(4))) uint8_t hidkbd_func_desc[] = { + 0x24, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', + 0, 'K', 0, 'e', 0, 'y', 0, 'b', 0, 'o', 0, 'a', 0, 'r', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t msc_func_desc[] = { + 0x3A, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', 0, 'M', + 0, 'a', 0, 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, + 'g', 0, 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, +}; + +#endif // EXAMPLES_MAX32690_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/main.c b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/main.c new file mode 100644 index 00000000000..cd24e2dacae --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/main.c @@ -0,0 +1,455 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief USB composite device with Mass Storage driver class and HID driver class. +*/ + +#include +#include +#include "mxc_sys.h" +#include "led.h" +#include "pb.h" +#include "mxc_delay.h" +#include "mcr_regs.h" +#include "usb.h" +#include "usb_event.h" +#include "enumerate.h" +#include "hid_kbd.h" +#include "msc.h" +#include "descriptors.h" +#include "mscmem.h" +#include "nvic_table.h" + +/* **** Definitions **** */ +#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS +#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) + +/* **** Global Data **** */ +volatile int configured; +volatile int suspended; +volatile unsigned int event_flags; +int remote_wake_en; + +/* This EP assignment must match the Configuration Descriptor */ +static msc_cfg_t msc_cfg = { + 1, /* EP OUT */ + MXC_USBHS_MAX_PACKET, /* OUT max packet size */ + 2, /* EP IN */ + MXC_USBHS_MAX_PACKET, /* IN max packet size */ +}; + +static const msc_idstrings_t ids = { + "MAXIM", /* Vendor string. Maximum of 8 bytes */ + "MSC Example", /* Product string. Maximum of 16 bytes */ + "1.0" /* Version string. Maximum of 4 bytes */ +}; + +/* Functions to control "disk" memory. See msc.h for definitions. */ +static const msc_mem_t mem = { + mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, mscmem_Size, mscmem_Read, mscmem_Write, +}; + +/* **** Function Prototypes **** */ +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int eventCallback(maxusb_event_t evt, void *data); +static void usbAppSleep(void); +static void usbAppWakeup(void); +static void buttonCallback(void *pb); +int usbStartupCallback(void); +int usbShutdownCallback(void); + +const mxc_gpio_cfg_t hid_sw[] = { + // Even though SW2 in EVK defined at Port 4.0 but this goes not have GPIO interrupt + // Using P0.7 for SW2. Connect Port 4.0 to Port 0.7. + { MXC_GPIO0, MXC_GPIO_PIN_7, MXC_GPIO_FUNC_IN, MXC_GPIO_PAD_PULL_UP, MXC_GPIO_VSSEL_VDDIO }, +}; + +/******************************************************************************/ +int Hid_SW_Init(void) +{ + int retval = E_NO_ERROR; + + if (MXC_GPIO_Config(&hid_sw[0]) != E_NO_ERROR) { + retval = E_UNKNOWN; + } + + return retval; +} + +/******************************************************************************/ +void HID_SW_Handler(void) +{ + MXC_GPIO_Handler(MXC_GPIO_GET_IDX(hid_sw[0].port)); +} + +int Hid_SW_RegisterCallback(unsigned int pb, pb_callback callback) +{ + if (pb != 0) { + return E_INVALID; + } + + if (callback) { + // Register callback + MXC_GPIO_RegisterCallback(&hid_sw[pb], callback, (void *)pb); + + // Configure and enable interrupt + MXC_GPIO_IntConfig(&hid_sw[pb], MXC_GPIO_INT_FALLING); + MXC_GPIO_EnableInt(hid_sw[pb].port, hid_sw[pb].mask); + MXC_NVIC_SetVector(MXC_GPIO_GET_IRQ(MXC_GPIO_GET_IDX(hid_sw[pb].port)), HID_SW_Handler); + NVIC_EnableIRQ(MXC_GPIO_GET_IRQ(MXC_GPIO_GET_IDX(hid_sw[pb].port))); + } else { // Disable interrupt and clear callback + MXC_GPIO_DisableInt(hid_sw[pb].port, hid_sw[pb].mask); + MXC_GPIO_RegisterCallback(&hid_sw[pb], NULL, NULL); + } + + return E_NO_ERROR; +} + +int HID_SW_Get(unsigned int pb) +{ + return !MXC_GPIO_InGet(hid_sw[pb].port, hid_sw[pb].mask); +} + +/** + * User-supplied function to delay usec micro-seconds + * + * @param[in] usec The usec time to delay. + */ +void delay_us(unsigned int usec) +{ + /* mxc_delay() takes unsigned long, so can't use it directly */ + MXC_Delay(usec); +} + +/* ************************************************************************** */ + +void USB_IRQHandler(void) +{ + MXC_USB_EventHandler(); +} + +/* ************************************************************************** */ +int main(void) +{ + maxusb_cfg_options_t usb_opts; + + Hid_SW_Init(); + + printf("\n Connect Port 0.7 to Port 4.0"); + + printf("\n\n***** " TOSTRING( + TARGET) " USB Composite Device (Keyboard and Mass Storage) Example *****\n"); + printf("Waiting for VBUS...\n"); + + /* Initialize state */ + configured = 0; + suspended = 0; + event_flags = 0; + remote_wake_en = 0; + + /* Start out in full speed */ + usb_opts.enable_hs = 0; + usb_opts.delay_us = delay_us; /* Function which will be used for delays */ + usb_opts.init_callback = usbStartupCallback; + usb_opts.shutdown_callback = usbShutdownCallback; + + /* Initialize the usb module */ + if (MXC_USB_Init(&usb_opts) != 0) { + printf("usb_init() failed\n"); + + while (1) {} + } + + /* Initialize the enumeration module */ + if (enum_init() != 0) { + printf("enum_init() failed\n"); + + while (1) {} + } + + /* Register enumeration data */ + enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&composite_device_descriptor, 0); + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); + enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); + enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); + enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); + enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); + enum_register_descriptor(ENUM_DESC_STRING, hidkbd_func_desc, 4); + enum_register_descriptor(ENUM_DESC_STRING, msc_func_desc, 5); + + /* Handle configuration */ + enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); + + /* Handle feature set/clear */ + enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); + enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); + + /* Initialize the class driver */ + if (msc_init(&composite_config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { + printf("msc_init() failed\n"); + + while (1) {} + } + + if (hidkbd_init(&composite_config_descriptor.hid_interface_descriptor, + &composite_config_descriptor.hid_descriptor, report_descriptor) != 0) { + printf("hidkbd_init() failed\n"); + + while (1) {} + } + + /* Register callbacks */ + MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); + MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); + + /* Register callback for keyboard events */ + if (Hid_SW_RegisterCallback(0, buttonCallback) != E_NO_ERROR) { + printf("HID_SW_RegisterCallback() failed\n"); + + while (1) {} + } + + /* Start with USB in low power mode */ + usbAppSleep(); + NVIC_EnableIRQ(USB_IRQn); + + /* Wait for events */ + while (1) { + if (suspended || !configured) { + LED_Off(0); + } else { + LED_On(0); + } + + if (event_flags) { + /* Display events */ + if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); + printf("VBUS Disconnect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); + printf("VBUS Connect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); + printf("Bus Reset\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); + printf("Suspended\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); + printf("Resume\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { + MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); + printf("Enumeration complete. Press SW2 to send character.\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { + MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); + printf("Remote Wakeup\n"); + } + } + } +} + +/******************************************************************************/ +int usbStartupCallback(void) +{ + MXC_SYS_ClockSourceEnable(MXC_SYS_CLOCK_IPO); + MXC_MCR->ldoctrl |= MXC_F_MCR_LDOCTRL_0P9EN; + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + MXC_SYS_Reset_Periph(MXC_SYS_RESET0_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +int usbShutdownCallback(void) +{ + MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/* ************************************************************************** */ + +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 1; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/* ************************************************************************** */ + +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 0; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/* ************************************************************************** */ + +static void usbAppSleep(void) +{ + /* TODO: Place low-power code here */ + suspended = 1; +} + +/* ************************************************************************** */ + +static void usbAppWakeup(void) +{ + /* TODO: Place low-power code here */ + suspended = 0; +} + +/* ************************************************************************** */ + +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + /* Confirm the configuration value */ + if (sud->wValue == composite_config_descriptor.config_descriptor.bConfigurationValue) { + // on++; + configured = 1; + MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); + msc_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_1.bEndpointAddress & 0x7; + msc_cfg.out_maxpacket = composite_config_descriptor.endpoint_descriptor_1.wMaxPacketSize; + msc_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_2.bEndpointAddress & 0x7; + msc_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_2.wMaxPacketSize; + + msc_configure(&msc_cfg); + return hidkbd_configure(composite_config_descriptor.endpoint_descriptor_3.bEndpointAddress & + USB_EP_NUM_MASK); + } else if (sud->wValue == 0) { + configured = 0; + msc_deconfigure(); + return hidkbd_deconfigure(); + } + + return -1; +} + +/* ************************************************************************** */ + +static int eventCallback(maxusb_event_t evt, void *data) +{ + /* Set event flag */ + MXC_SETBIT(&event_flags, evt); + + switch (evt) { + case MAXUSB_EVENT_NOVBUS: + MXC_USB_EventDisable(MAXUSB_EVENT_BRST); + MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); + MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); + MXC_USB_Disconnect(); + configured = 0; + enum_clearconfig(); + hidkbd_deconfigure(); + msc_deconfigure(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_VBUS: + MXC_USB_EventClear(MAXUSB_EVENT_BRST); + MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_SUSP); + MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); + MXC_USB_Connect(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_BRST: + usbAppWakeup(); + enum_clearconfig(); + hidkbd_deconfigure(); + msc_deconfigure(); + configured = 0; + suspended = 0; + break; + + case MAXUSB_EVENT_SUSP: + usbAppSleep(); + break; + + case MAXUSB_EVENT_DPACT: + usbAppWakeup(); + break; + + default: + break; + } + + return 0; +} + +/* ************************************************************************** */ + +void buttonCallback(void *pb) +{ + static const uint8_t chars[] = "Maxim Integrated\n"; + static int i = 0; + int count = 0; + int button_pressed = 0; + + //determine if interrupt triggered by bounce or a true button press + while (HID_SW_Get(0) && !button_pressed) { + count++; + + if (count > 1000) { + button_pressed = 1; + } + } + + if (button_pressed) { + LED_Toggle(0); + + if (configured) { + if (suspended && remote_wake_en) { + /* The bus is suspended. Wake up the host */ + suspended = 0; + usbAppWakeup(); + MXC_USB_RemoteWakeup(); + MXC_SETBIT(&event_flags, EVENT_REMOTE_WAKE); + } else { + if (i >= (sizeof(chars) - 1)) { + i = 0; + } + + hidkbd_keypress(chars[i++]); + } + } + } +} diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.c b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.c new file mode 100644 index 00000000000..79ba24bfe75 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.c @@ -0,0 +1,310 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file mscmem.h + * @brief Memory routines used by the USB Mass Storage Class example. + * See the msc_mem_t structure in msc.h for function details. + * @details Functions are provided for using the internal RAM of the + * device or the external SPI flash memory. Use the SPIXF_DISK + * and RAM_DISK defines to select the desired memory at compile + * time. + */ + +#include "mscmem.h" +#include +#include +//#include "mx25.h" +//#include "spixf.h" + +/***** Definitions *****/ + +#define SPIXF_DISK 0 +#define RAM_DISK 1 + +#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ +#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ + +/***** Global Data *****/ + +/***** File Scope Variables *****/ + +static int initialized = 0; +static int running = 0; + +#if SPIXF_DISK + +#define MX25_BAUD 5000000 /* SPI clock rate to communicate with the MX25 */ + +#define MX25_SECTOR_SIZE 4096 /* Number of bytes in one sector of the MX25 */ +#define MX25_SECTOR_SIZE_SHIFT \ + 12 /* The shift value used to convert between addresses and block numbers */ +#define MX25_NUM_SECTORS 2048 /* Total number of sectors in the MX25 */ + +#define MXC_SPIXF_WIDTH MXC_SPIXF_WIDTH_1 /*Number of data lines*/ + +#define LBA_PER_SECTOR (MX25_SECTOR_SIZE >> LBA_SIZE_SHIFT) +#define INVALID_SECTOR \ + MX25_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ + +/***** File Scope Variables *****/ +static uint32_t sectorNum = INVALID_SECTOR; +static uint8_t sector[MX25_SECTOR_SIZE]; +static int sectorDirty = 0; + +/***** Function Prototypes *****/ +static uint32_t getSectorNum(uint32_t lba); +static uint32_t getSectorAddr(uint32_t lba); +static uint32_t getSector(uint32_t num); + +/******************************************************************************/ +static uint32_t getSectorNum(uint32_t lba) +{ + /* Absolute_address = lba * LBA_SIZE */ + /* Sector_num = Absolute_address / MX25_SECTOR_SIZE */ + /* Sector_num = lba * 512 / 4096 */ + return lba >> (MX25_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); +} + +/******************************************************************************/ +static uint32_t getSectorAddr(uint32_t lba) +{ + /* eight 512 byte blocks in each sector */ + return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; +} + +/******************************************************************************/ +static uint32_t getSector(uint32_t num) +{ + /* New sector requested? */ + if (sectorNum != num) { + /* Is the current sector real? */ + if (sectorNum != INVALID_SECTOR) { + /* Was it written to after it was read from memory? */ + if (sectorDirty) { + /* Erase the old data. */ + MX25_Erase(sectorNum << MX25_SECTOR_SIZE_SHIFT, MX25_Erase_4K); + /* Write the new */ + MX25_Program_Page(sectorNum << MX25_SECTOR_SIZE_SHIFT, sector, MX25_SECTOR_SIZE, + MXC_SPIXF_WIDTH); + /* Mark data as clean */ + sectorDirty = 0; + } + } + + /* Requesting a new valid sector? */ + if (num != INVALID_SECTOR) { + MX25_Read(num << MX25_SECTOR_SIZE_SHIFT, sector, MX25_SECTOR_SIZE, MXC_SPIXF_WIDTH); + sectorDirty = 0; + sectorNum = num; + } + } + + return 0; +} + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + MXC_SPIXF_SetSPIFrequency(MX25_BAUD); + MX25_Init(); + MX25_Reset(); + + if (MXC_SPIXF_WIDTH == MXC_SPIXF_WIDTH_4) { + MX25_Quad(1); + } else { + MX25_Quad(0); + } + + initialized = 1; + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + /* Get number of 512 byte chunks the MX25 contains. */ + return (MX25_SECTOR_SIZE >> LBA_SIZE_SHIFT) * MX25_NUM_SECTORS; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to MX25 sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from MX25 */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(buffer, sector + addr, LBA_SIZE); + + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to MX25 sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from MX25 */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(sector + addr, buffer, LBA_SIZE); + sectorDirty = 1; + + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Turn on the MX25 if it is not already. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the initialization succeeded. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* TODO - could shut down XIPF interface here. */ + + /* Flush the currently cached sector if necessary. */ + if (getSector(INVALID_SECTOR)) { + return 1; + } + + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#elif RAM_DISK + +#define NUM_PAGES 0x100 +static uint8_t mem[NUM_PAGES][LBA_SIZE]; + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + initialized = 1; +#if (ERASE_MEMORY_ON_INIT) + memset(mem, 0, sizeof(mem)); +#endif + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + return NUM_PAGES; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(buffer, mem[lba], LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(mem[lba], buffer, LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Not much to do for this implementation. The RAM is always ready. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the RAM has been initialized. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* Nothing to do for this implementation. All data is written as it is */ + /* received so there are no pending writes that need to be flushed. */ + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#else +#error "You must assign either RAM_DISK or SPIXF_DISK to 1." +#endif diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.h b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.h new file mode 100644 index 00000000000..99c6b31a889 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/mscmem.h @@ -0,0 +1,84 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file mscmem.h + * @brief Memory routines used by the USB Mass Storage Class example. + * See the msc_mem_t structure in msc.h for function details. + */ + +#ifndef EXAMPLES_MAX32690_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ +#define EXAMPLES_MAX32690_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ + +#include + +/* **** Definitions **** */ +#define ERASE_MEMORY_ON_INIT \ + 1 /* Configuration option to clear the memory (to 0s) on initialization. */ +/* Use 1 to clear or 0 to leave untouched. */ +/** + * @brief Perform any initialization necessary to prepare the memory for reading/writing data. + * @returns 0 if initialization is successful, non-zero if an error occurred. + */ +int mscmem_Init(void); + +/** + * @brief Activates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Start(void); + +/** + * @brief Deactivates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Stop(void); + +/** + * @brief Reports the total size of the mass-storage memory. + * @returns The number of 512 byte blocks contained in the memory. + */ +uint32_t mscmem_Size(void); + +/** + * @brief Reads 512 bytes of data from the memory. + * @param lba The index of the 512 byte block to read. + * @param buffer A byte array of at least 512 bytes to hold the values read. + * @returns 0 if reading is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Read(uint32_t lba, uint8_t *buffer); + +/** + * @brief Writes 512 bytes of data to the memory. + * @param lba The index of the 512 byte block to write. + * @param buffer A byte array of at least 512 bytes holding the values to write. + * @returns 0 if writing is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Write(uint32_t lba, uint8_t *buffer); + +/** + * @brief Checks if the memory is ready to be read/written. + * @returns non-zero if the memory is ready, 0 otherwise. + */ +int mscmem_Ready(void); + +#endif // EXAMPLES_MAX32690_USB_MAXUSB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ diff --git a/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/project.mk b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/project.mk new file mode 100644 index 00000000000..24168f84b87 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_CompositeDevice_MSC_HID/project.mk @@ -0,0 +1,33 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU, set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable MAXUSB library +LIB_MAXUSB = 1 diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/.cproject b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.cproject similarity index 100% rename from Examples/MAX32690/USB/USB_HIDKeyboard/.cproject rename to Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.cproject diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/.project b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.project similarity index 100% rename from Examples/MAX32690/USB/USB_HIDKeyboard/.project rename to Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.project diff --git a/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.settings/language.settings.xml b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.settings/org.eclipse.cdt.core.prefs similarity index 100% rename from Examples/MAX32690/USB/USB_HIDKeyboard/.settings/org.eclipse.cdt.core.prefs rename to Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.settings/org.eclipse.cdt.core.prefs diff --git a/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/README.md b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/c_cpp_properties.json b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/flash.gdb b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/launch.json b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/settings.json b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/settings.json new file mode 100644 index 00000000000..a22f5a12050 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/settings.json @@ -0,0 +1,89 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32690", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32690.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/tasks.json b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/Makefile b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/Makefile new file mode 100644 index 00000000000..d6ae4b890bf --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32690 +TARGET_UC := MAX32690 +TARGET_LC := max32690 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/README.md b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/README.md new file mode 100644 index 00000000000..0065b981b23 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/README.md @@ -0,0 +1,36 @@ +## Description + +The example demonstartes the use of USB HID driver class. After doing the required connections given below, run the program and a new HID keyboard device appears in the device manager. Open any text editor in the PC, pressing the switch SW1 on the evkit wil print out 'Maxin Integrated' in the editor one letter at a time. + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +(None - this project builds as a standard example) + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR/UART) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. +- Default EV kit hardware configuration. +- Connect Pin 0.7 to Pin 4.0 + +## Expected Output + +The Console UART of the device will output these messages: + +``` +Connect Port 0.7 to Port 4.0 +***** MAX32690 USB HID Keyboard Example ***** +Waiting for VBUS... +VBUS Connect +Suspended +Bus Reset +Bus Reset +Enumeration complete. Press SW2 to send character. +``` diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/USB_HIDKeyboard.launch b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/USB_HIDKeyboard.launch similarity index 100% rename from Examples/MAX32690/USB/USB_HIDKeyboard/USB_HIDKeyboard.launch rename to Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/USB_HIDKeyboard.launch diff --git a/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/descriptors.h b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/descriptors.h new file mode 100644 index 00000000000..ff58b177ccb --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/descriptors.h @@ -0,0 +1,142 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32690_USB_MAXUSB_USB_HIDKEYBOARD_DESCRIPTORS_H_ +#define EXAMPLES_MAX32690_USB_MAXUSB_USB_HIDKEYBOARD_DESCRIPTORS_H_ + +#include +#include "usb.h" +#include "hid_kbd.h" + +MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { + 0x12, /* bLength */ + 0x01, /* bDescriptorType = Device */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x00, /* bDeviceClass = Unspecified */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x0B6A, /* idVendor (Maxim Integrated) */ + 0x003C, /* idProduct */ + 0x0100, /* bcdDevice */ + 0x01, /* iManufacturer Descriptor ID */ + 0x02, /* iProduct Descriptor ID */ + 0x03, /* iSerialNumber Descriptor ID */ + 0x01 /* bNumConfigurations */ +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + MXC_USB_interface_descriptor_t interface_descriptor; + hid_descriptor_t hid_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor; +} config_descriptor = { { + 0x09, /* bLength */ + 0x02, /* bDescriptorType = Config */ + 0x0022, /* wTotalLength(L/H) = 34 bytes */ + 0x01, /* bNumInterfaces */ + 0x01, /* bConfigurationValue */ + 0x00, /* iConfiguration */ + 0xA0, /* bmAttributes (bus-powered, remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + { + /* First Interface Descriptor */ + 0x09, /* bLength */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x01, /* bNumEndpoints (one for OUT) */ + 0x03, /* bInterfaceClass = HID */ + 0x00, /* bInterfaceSubClass */ + 0x00, /* bInterfaceProtocol */ + 0x00, /* iInterface */ + }, + { + /* HID Descriptor */ + 0x09, /* bFunctionalLength */ + 0x21, /* bDescriptorType = HID */ + 0x0110, /* bcdHID Rev 1.1 */ + 0x00, /* bCountryCode */ + 0x01, /* bNumDescriptors */ + 0x22, /* bDescriptorType = Report */ + 0x002b, /* wDescriptorLength */ + }, + { + /* IN Endpoint 3 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x83, /* bEndpointAddress (EP3-IN) */ + 0x03, /* bmAttributes (interrupt) */ + 0x0040, /* wMaxPacketSize */ + 0x0a /* bInterval (milliseconds) */ + } }; + +__attribute__((aligned(4))) uint8_t report_descriptor[] = { + 0x05, 0x01, /* Usage Page (generic desktop) */ + 0x09, 0x06, /* Usage (keyboard) */ + 0xa1, 0x01, /* Collection */ + 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ + 0x19, 0xe0, /* Usage Minimum = 224 */ + 0x29, 0xe7, /* Usage Maximum = 231 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x01, /* Logical Maximum = 1 */ + 0x75, 0x01, /* Report Size = 1 */ + 0x95, 0x08, /* Report Count = 8 */ + 0x81, 0x02, /* Input(Data,Variable,Absolute) */ + 0x95, 0x01, /* Report Count = 1 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x81, 0x01, /* Input(Constant) */ + 0x19, 0x00, /* Usage Minimum = 0 */ + 0x29, 0x65, /* Usage Maximum = 101 */ + 0x15, 0x00, /* Logical Minimum = 0 */ + 0x25, 0x65, /* Logical Maximum = 101 */ + 0x75, 0x08, /* Report Size = 8 */ + 0x95, 0x01, /* Report Count = 1 */ + 0x81, 0x00, /* Input(Data,Variable,Array) */ + 0xc0 /* End Collection */ +}; + +__attribute__((aligned(4))) uint8_t lang_id_desc[] = { + 0x04, /* bLength */ + 0x03, /* bDescriptorType */ + 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ +}; + +__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, + 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t prod_id_desc[] = { + 0x2c, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', 0, ' ', 0, 'H', 0, 'I', 0, + 'D', 0, ' ', 0, 'K', 0, 'e', 0, 'y', 0, 'b', 0, 'o', 0, 'a', 0, 'r', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x20, /* bLength */ + 0x03, /* bDescriptorType */ + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, + '0', 0, '0', 0, '0', 0, '1', 0 }; + +#endif // EXAMPLES_MAX32690_USB_MAXUSB_USB_HIDKEYBOARD_DESCRIPTORS_H_ diff --git a/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/main.c b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/main.c new file mode 100644 index 00000000000..e33b9f9a43e --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/main.c @@ -0,0 +1,409 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Demonstrates how to configure a the USB device controller as a HID keyboard class device + * @details The EvKit should enumerate as a HID Keyboard device after loading the project and + * attaching a cable from the PC to the USB connector on the Evaluation Kit. + * 1. LED0 (P2.17) will illuminate once enumeration and configuration is complete. + * 2. Open a text editor on the PC host and place cursor in edit box. + * 3. Pressing pushbutton SW1 (P0.16) will cause a message to be typed in on a virtual keyboard one character at a time. + * + */ + +#include +#include +#include "mxc_sys.h" +#include "mcr_regs.h" +#include "led.h" +#include "pb.h" +#include "mxc_delay.h" +#include "usb.h" +#include "usb_event.h" +#include "enumerate.h" +#include "hid_kbd.h" +#include "descriptors.h" +#include "nvic_table.h" + +/***** Definitions *****/ +#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS +#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) + +/***** Global Data *****/ +int remoteWake; +volatile int configured; +volatile int suspended; +volatile unsigned int evtFlags; + +/***** Function Prototypes *****/ +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int eventCallback(maxusb_event_t evt, void *data); +static void usbAppSleep(void); +static void usbAppWakeup(void); +static void buttonCallback(void *pb); +void usDelay(unsigned int usec); +int usbStartupCallback(void); +int usbShutdownCallback(void); + +const mxc_gpio_cfg_t hid_sw[] = { + // Even though SW2 in EVK defined at Port 4.0 but this goes not have GPIO interrupt + // Using P0.7 for SW2. Connect Port 4.0 to Port 0.7. + { MXC_GPIO0, MXC_GPIO_PIN_7, MXC_GPIO_FUNC_IN, MXC_GPIO_PAD_PULL_UP, MXC_GPIO_VSSEL_VDDIO }, +}; + +/******************************************************************************/ +int Hid_SW_Init(void) +{ + int retval = E_NO_ERROR; + + if (MXC_GPIO_Config(&hid_sw[0]) != E_NO_ERROR) { + retval = E_UNKNOWN; + } + + return retval; +} + +/******************************************************************************/ +void HID_SW_Handler(void) +{ + MXC_GPIO_Handler(MXC_GPIO_GET_IDX(hid_sw[0].port)); +} + +int Hid_SW_RegisterCallback(unsigned int pb, pb_callback callback) +{ + if (pb != 0) { + return E_INVALID; + } + + if (callback) { + // Register callback + MXC_GPIO_RegisterCallback(&hid_sw[pb], callback, (void *)pb); + + // Configure and enable interrupt + MXC_GPIO_IntConfig(&hid_sw[pb], MXC_GPIO_INT_FALLING); + MXC_GPIO_EnableInt(hid_sw[pb].port, hid_sw[pb].mask); + MXC_NVIC_SetVector(MXC_GPIO_GET_IRQ(MXC_GPIO_GET_IDX(hid_sw[pb].port)), HID_SW_Handler); + NVIC_EnableIRQ(MXC_GPIO_GET_IRQ(MXC_GPIO_GET_IDX(hid_sw[pb].port))); + } else { // Disable interrupt and clear callback + MXC_GPIO_DisableInt(hid_sw[pb].port, hid_sw[pb].mask); + MXC_GPIO_RegisterCallback(&hid_sw[pb], NULL, NULL); + } + + return E_NO_ERROR; +} + +int HID_SW_Get(unsigned int pb) +{ + return !MXC_GPIO_InGet(hid_sw[pb].port, hid_sw[pb].mask); +} + +/******************************************************************************/ +void USB_IRQHandler(void) +{ + MXC_USB_EventHandler(); +} + +/******************************************************************************/ +int main(void) +{ + maxusb_cfg_options_t usb_opts; + Hid_SW_Init(); + + printf("\n Connect Port 0.7 to Port 4.0"); + printf("\n\n***** " TOSTRING(TARGET) " USB HID Keyboard Example *****\n"); + printf("Waiting for VBUS...\n"); + + /* Initialize state */ + configured = 0; + suspended = 0; + evtFlags = 0; + remoteWake = 0; + + /* Start out in full speed */ + usb_opts.enable_hs = 0; + usb_opts.delay_us = usDelay; /* Function which will be used for delays */ + usb_opts.init_callback = usbStartupCallback; + usb_opts.shutdown_callback = usbShutdownCallback; + + /* Initialize the usb module */ + if (MXC_USB_Init(&usb_opts) != 0) { + printf("MXC_USB_Init() failed\n"); + + while (1) {} + } + + /* Initialize the enumeration module */ + if (enum_init() != 0) { + printf("enum_init() failed\n"); + + while (1) {} + } + + /* Register enumeration data */ + enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); + enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); + enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); + enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); + enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); + + /* Handle configuration */ + enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); + + /* Handle feature set/clear */ + enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); + enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); + + /* Initialize the class driver */ + if (hidkbd_init(&config_descriptor.interface_descriptor, &config_descriptor.hid_descriptor, + report_descriptor) != 0) { + printf("hidkbd_init() failed\n"); + + while (1) {} + } + + /* Register callbacks */ + MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); + MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); + + /* Register callback for keyboard events */ + if (Hid_SW_RegisterCallback(0, buttonCallback) != E_NO_ERROR) { + printf("HID_SW_RegisterCallback() failed\n"); + + while (1) {} + } + + /* Start with USB in low power mode */ + usbAppSleep(); + NVIC_EnableIRQ(USB_IRQn); + + /* Wait for events */ + while (1) { + if (suspended || !configured) { + LED_Off(0); + } else { + LED_On(0); + } + + if (evtFlags) { + /* Display events */ + if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_NOVBUS)) { + MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_NOVBUS); + printf("VBUS Disconnect\n"); + } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_VBUS)) { + MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_VBUS); + printf("VBUS Connect\n"); + } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_BRST)) { + MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_BRST); + printf("Bus Reset\n"); + } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_SUSP)) { + MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_SUSP); + printf("Suspended\n"); + } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_DPACT)) { + MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_DPACT); + printf("Resume\n"); + } else if (MXC_GETBIT(&evtFlags, EVENT_ENUM_COMP)) { + MXC_CLRBIT(&evtFlags, EVENT_ENUM_COMP); + printf("Enumeration complete. Press SW2 to send character.\n"); + } else if (MXC_GETBIT(&evtFlags, EVENT_REMOTE_WAKE)) { + MXC_CLRBIT(&evtFlags, EVENT_REMOTE_WAKE); + printf("Remote Wakeup\n"); + } + } + } +} + +/******************************************************************************/ +int usbStartupCallback(void) +{ + MXC_SYS_ClockSourceEnable(MXC_SYS_CLOCK_IPO); + MXC_MCR->ldoctrl |= MXC_F_MCR_LDOCTRL_0P9EN; + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + MXC_SYS_Reset_Periph(MXC_SYS_RESET0_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +int usbShutdownCallback(void) +{ + MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +/* User-supplied function to delay usec micro-seconds */ +void usDelay(unsigned int usec) +{ + /* mxc_delay() takes unsigned long, so can't use it directly */ + MXC_Delay(usec); +} + +/******************************************************************************/ +static void usbAppSleep(void) +{ + /* TODO: Place low-power code here */ + suspended = 1; +} + +/******************************************************************************/ +static void usbAppWakeup(void) +{ + /* TODO: Place low-power code here */ + suspended = 0; +} + +/******************************************************************************/ +static void buttonCallback(void *pb) +{ + static const uint8_t chars[] = "Maxim Integrated\n"; + static int i = 0; + int count = 0; + int button_pressed = 0; + + //determine if interrupt triggered by bounce or a true button press + while (HID_SW_Get(0) && !button_pressed) { + count++; + + if (count > 1000) { + button_pressed = 1; + } + } + + if (button_pressed) { + LED_Toggle(0); + + if (configured) { + if (suspended && remoteWake) { + /* The bus is suspended. Wake up the host */ + suspended = 0; + usbAppWakeup(); + MXC_USB_RemoteWakeup(); + MXC_SETBIT(&evtFlags, EVENT_REMOTE_WAKE); + } else { + if (i >= (sizeof(chars) - 1)) { + i = 0; + } + + hidkbd_keypress(chars[i++]); + } + } + } +} + +/******************************************************************************/ +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + /* Confirm the configuration value */ + if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { + configured = 1; + MXC_SETBIT(&evtFlags, EVENT_ENUM_COMP); + return hidkbd_configure(config_descriptor.endpoint_descriptor.bEndpointAddress & + USB_EP_NUM_MASK); + } else if (sud->wValue == 0) { + configured = 0; + return hidkbd_deconfigure(); + } + + return -1; +} + +/******************************************************************************/ +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remoteWake = 1; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/******************************************************************************/ +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remoteWake = 0; + } else { + // Unknown callback + return -1; + } + + return 0; +} + +/******************************************************************************/ +static int eventCallback(maxusb_event_t evt, void *data) +{ + /* Set event flag */ + MXC_SETBIT(&evtFlags, evt); + + switch (evt) { + case MAXUSB_EVENT_NOVBUS: + MXC_USB_EventDisable(MAXUSB_EVENT_BRST); + MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); + MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); + MXC_USB_Disconnect(); + configured = 0; + enum_clearconfig(); + hidkbd_deconfigure(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_VBUS: + MXC_USB_EventClear(MAXUSB_EVENT_BRST); + MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_SUSP); + MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); + MXC_USB_Connect(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_BRST: + usbAppWakeup(); + enum_clearconfig(); + hidkbd_deconfigure(); + configured = 0; + suspended = 0; + break; + + case MAXUSB_EVENT_SUSP: + usbAppSleep(); + break; + + case MAXUSB_EVENT_DPACT: + usbAppWakeup(); + break; + + default: + break; + } + + return 0; +} diff --git a/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/project.mk b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/project.mk new file mode 100644 index 00000000000..24168f84b87 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_HIDKeyboard/project.mk @@ -0,0 +1,33 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU, set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable MAXUSB library +LIB_MAXUSB = 1 diff --git a/Examples/MAX32690/USB/USB_MassStorage/.cproject b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.cproject similarity index 100% rename from Examples/MAX32690/USB/USB_MassStorage/.cproject rename to Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.cproject diff --git a/Examples/MAX32690/USB/USB_MassStorage/.project b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.project similarity index 100% rename from Examples/MAX32690/USB/USB_MassStorage/.project rename to Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.project diff --git a/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.settings/language.settings.xml b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32690/USB/USB_MassStorage/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.settings/org.eclipse.cdt.core.prefs similarity index 100% rename from Examples/MAX32690/USB/USB_MassStorage/.settings/org.eclipse.cdt.core.prefs rename to Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.settings/org.eclipse.cdt.core.prefs diff --git a/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/README.md b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/c_cpp_properties.json b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/flash.gdb b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/launch.json b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/settings.json b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/settings.json new file mode 100644 index 00000000000..a22f5a12050 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/settings.json @@ -0,0 +1,89 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32690", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32690.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/tasks.json b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/Makefile b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/Makefile new file mode 100644 index 00000000000..d6ae4b890bf --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32690 +TARGET_UC := MAX32690 +TARGET_LC := max32690 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/README.md b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/README.md new file mode 100644 index 00000000000..8b9a4235426 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/README.md @@ -0,0 +1,43 @@ +## Description + +The example demonstates the use of USB Mass Storage driver class. After doing the required connections given below, run the program and a new portable device appears in the device manager. It will appear as a new drive which can be read and written to. + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +(None - this project builds as a standard example) + +## Required Connections + +If using the MAX32690EVKIT: +- Connect a USB cable between the PC and the CN2 (USB/PWR/UART) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. + +If using the MAX32690FTHR: +- Connect a USB cable between the PC and the J5 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. + +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + +## Expected Output + +The Console UART of the device will output these messages: + +``` +***** MAX32690 USB Mass Storage Example ***** +Waiting for VBUS... +VBUS Connect +Suspended +Bus Reset +Bus Reset Done: High speed +Enumeration complete. +``` diff --git a/Examples/MAX32690/USB/USB_MassStorage/USB_MassStorage.launch b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/USB_MassStorage.launch similarity index 100% rename from Examples/MAX32690/USB/USB_MassStorage/USB_MassStorage.launch rename to Examples/MAX32690/USB/MAXUSB/USB_MassStorage/USB_MassStorage.launch diff --git a/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/descriptors.h b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/descriptors.h new file mode 100644 index 00000000000..8ecc3d3ee85 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/descriptors.h @@ -0,0 +1,180 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +#ifndef EXAMPLES_MAX32690_USB_MAXUSB_USB_MASSSTORAGE_DESCRIPTORS_H_ +#define EXAMPLES_MAX32690_USB_MAXUSB_USB_MASSSTORAGE_DESCRIPTORS_H_ + +#include +#include "usb.h" +#include "hid_kbd.h" + +MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { + 0x12, /* bLength = 18 */ + 0x01, /* bDescriptorType = Device */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x00, /* bDeviceClass = Unspecified */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x0B6A, /* idVendor (Maxim Integrated) */ + 0x4402, /* idProduct */ + 0x0100, /* bcdDevice */ + 0x01, /* iManufacturer Descriptor ID */ + 0x02, /* iProduct Descriptor ID */ + 0x03, /* iSerialNumber = (0) No string */ + 0x01 /* bNumConfigurations */ +}; + +/* Device qualifier needed for high-speed operation */ +MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) device_qualifier_descriptor = { + 0x0A, /* bLength = 10 */ + 0x06, /* bDescriptorType = Device Qualifier */ + 0x0200, /* bcdUSB USB spec rev (BCD) */ + 0x00, /* bDeviceClass = Unspecified */ + 0x00, /* bDeviceSubClass */ + 0x00, /* bDeviceProtocol */ + 0x40, /* bMaxPacketSize0 is 64 bytes */ + 0x01, /* bNumConfigurations */ + 0x00 /* Reserved, must be 0 */ +}; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #0 Mass Storage Device */ + MXC_USB_interface_descriptor_t msc_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; +} config_descriptor = { { + 0x09, /* bLength = 9 */ + 0x02, /* bDescriptorType = Config (2) */ + 0x0020, /* wTotalLength(L/H) */ + 0x01, /* bNumInterfaces */ + 0x01, /* bConfigValue */ + 0x00, /* iConfiguration */ + 0xC0, /* bmAttributes (self-powered, no remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + { + /* First Interface Descriptor For MSC Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints (one for INm one for OUT) */ + 0x08, /* bInterfaceClass = Mass Storage (8) */ + 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ + 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ + 0x00, /* iInterface */ + }, + { + /* OUT Endpoint 1 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00, /* bInterval (N/A) */ + }, + { + /* IN Endpoint 2 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0040, /* wMaxPacketSize */ + 0x00 /* bInterval (N/A) */ + } }; + +__attribute__((aligned(4))) struct __attribute__((packed)) { + MXC_USB_configuration_descriptor_t config_descriptor; + /* Interface #0 Mass Storage Device */ + MXC_USB_interface_descriptor_t msc_interface_descriptor; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; + MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; +} config_descriptor_hs = { { + 0x09, /* bLength = 9 */ + 0x02, /* bDescriptorType = Config (2) */ + 0x0020, /* wTotalLength(L/H) */ + 0x01, /* bNumInterfaces */ + 0x01, /* bConfigValue */ + 0x00, /* iConfiguration */ + 0xC0, /* bmAttributes (self-powered, no remote wakeup) */ + 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ + }, + { + /* First Interface Descriptor For MSC Interface */ + 0x09, /* bLength = 9 */ + 0x04, /* bDescriptorType = Interface (4) */ + 0x00, /* bInterfaceNumber */ + 0x00, /* bAlternateSetting */ + 0x02, /* bNumEndpoints (one for INm one for OUT) */ + 0x08, /* bInterfaceClass = Mass Storage (8) */ + 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ + 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ + 0x00, /* iInterface */ + }, + { + /* OUT Endpoint 1 (Descriptor #1) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x01, /* bEndpointAddress (EP1-OUT) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x01, /* bInterval */ + }, + { + /* IN Endpoint 2 (Descriptor #2) */ + 0x07, /* bLength */ + 0x05, /* bDescriptorType (Endpoint) */ + 0x82, /* bEndpointAddress (EP2-IN) */ + 0x02, /* bmAttributes (bulk) */ + 0x0200, /* wMaxPacketSize */ + 0x01 /* bInterval */ + } }; + +__attribute__((aligned(4))) uint8_t lang_id_desc[] = { + 0x04, /* bLength */ + 0x03, /* bDescriptorType */ + 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ +}; + +__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { + 0x22, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, + 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, +}; + +__attribute__((aligned(4))) uint8_t prod_id_desc[] = { + 0x38, /* bLength */ + 0x03, /* bDescriptorType */ + 'M', 0, 'A', 0, 'X', 0, 'U', 0, 'S', 0, 'B', 0, ' ', 0, 'M', 0, 'a', 0, + 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, 'g', 0, + 'e', 0, ' ', 0, 'E', 0, 'x', 0, 'a', 0, 'm', 0, 'p', 0, 'l', 0, 'e', 0, +}; + +/* Not currently used (see device descriptor), but could be enabled if desired */ +__attribute__((aligned(4))) +uint8_t serial_id_desc[] = { 26, /* bLength */ + 0x03, /* bDescriptorType */ + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, + '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, '1', 0 }; + +#endif // EXAMPLES_MAX32690_USB_MAXUSB_USB_MASSSTORAGE_DESCRIPTORS_H_ diff --git a/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/main.c b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/main.c new file mode 100644 index 00000000000..98d1e23c164 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/main.c @@ -0,0 +1,360 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief USB Mass Storage Class example + * @details This project creates a mass storage device using either on-board RAM or + * external SPI flash memory. Load the project, connect a cable from the PC + * to the USB connector. A new external drive should appear than can be read + * and written. + */ + +#include +#include +#include "mxc_sys.h" +#include "mcr_regs.h" +#include "mxc_delay.h" +#include "board.h" +#include "led.h" +#include "usb.h" +#include "usb_event.h" +#include "enumerate.h" +#include "msc.h" +#include "descriptors.h" +#include "mscmem.h" + +/***** Definitions *****/ +#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS +#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) + +#define BUFFER_SIZE 64 + +#define STRINGIFY(x) #x +#define TOSTRING(x) STRINGIFY(x) + +/***** Global Data *****/ +volatile int configured; +volatile int suspended; +volatile unsigned int event_flags; +int remote_wake_en; + +/***** Function Prototypes *****/ +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); +static int eventCallback(maxusb_event_t evt, void *data); +static void usbAppSleep(void); +static void usbAppWakeup(void); +int usbStartupCallback(void); +int usbShutdownCallback(void); + +/***** File Scope Variables *****/ + +/* Defaults, which will be changed by the configuration code */ +static msc_cfg_t msc_cfg = { + 1, /* EP OUT */ + MXC_USBHS_MAX_PACKET, /* OUT max packet size */ + 2, /* EP IN */ + MXC_USBHS_MAX_PACKET, /* IN max packet size */ +}; + +static const msc_idstrings_t ids = { + "MAXIM", /* Vendor string. Maximum of 8 bytes */ + "MSC Example", /* Product string. Maximum of 16 bytes */ + "1.0" /* Version string. Maximum of 4 bytes */ +}; + +/* Functions to control "disk" memory. See msc.h for definitions. */ +static const msc_mem_t mem = { + mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, mscmem_Size, mscmem_Read, mscmem_Write, +}; + +/* User-supplied function to delay usec micro-seconds */ +void delay_us(unsigned int usec) +{ + /* mxc_delay() takes unsigned long, so can't use it directly */ + MXC_Delay(usec); +} + +/******************************************************************************/ +int main(void) +{ + maxusb_cfg_options_t usb_opts; + + printf("\n\n***** " TOSTRING(TARGET) " USB Mass Storage Example *****\n"); + printf("Waiting for VBUS...\n"); + + /* Initialize state */ + configured = 0; + suspended = 0; + event_flags = 0; + remote_wake_en = 0; + + /* Start out in full speed */ + usb_opts.enable_hs = 1; + usb_opts.delay_us = delay_us; /* Function which will be used for delays */ + usb_opts.init_callback = usbStartupCallback; + usb_opts.shutdown_callback = usbShutdownCallback; + + /* Initialize the usb module */ + if (MXC_USB_Init(&usb_opts) != 0) { + printf("usb_init() failed\n"); + while (1) {} + } + + /* Initialize the enumeration module */ + if (enum_init() != 0) { + printf("enum_init() failed\n"); + while (1) {} + } + + /* Register enumeration data */ + enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); + + if (usb_opts.enable_hs) { + /* Two additional descriptors needed for high-speed operation */ + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); + enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&device_qualifier_descriptor, 0); + } + + enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); + enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); + enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); + enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); + + /* Handle configuration */ + enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); + + /* Handle feature set/clear */ + enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); + enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); + + /* Initialize the class driver */ + if (msc_init(&config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { + printf("msc_init() failed\n"); + while (1) {} + } + + /* Register callbacks */ + MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); + MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); + + /* Start with USB in low power mode */ + usbAppSleep(); + NVIC_EnableIRQ(USB_IRQn); + + /* Wait for events */ + while (1) { + if (suspended || !configured) { + LED_Off(0); + } else { + LED_On(0); + } + + if (event_flags) { + /* Display events */ + if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); + printf("VBUS Disconnect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); + printf("VBUS Connect\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); + printf("Bus Reset\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); + printf("Bus Reset Done: %s speed\n", + (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); + printf("Suspended\n"); + } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { + MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); + printf("Resume\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { + MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); + printf("Enumeration complete.\n"); + } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { + MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); + printf("Remote Wakeup\n"); + } + } + } +} + +/******************************************************************************/ +static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + /* Confirm the configuration value */ + if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { + configured = 1; + MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); + + if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { + msc_cfg.out_ep = config_descriptor_hs.endpoint_descriptor_1.bEndpointAddress & 0x7; + msc_cfg.out_maxpacket = config_descriptor_hs.endpoint_descriptor_1.wMaxPacketSize; + msc_cfg.in_ep = config_descriptor_hs.endpoint_descriptor_2.bEndpointAddress & 0x7; + msc_cfg.in_maxpacket = config_descriptor_hs.endpoint_descriptor_2.wMaxPacketSize; + } else { + msc_cfg.out_ep = config_descriptor.endpoint_descriptor_1.bEndpointAddress & 0x7; + msc_cfg.out_maxpacket = config_descriptor.endpoint_descriptor_1.wMaxPacketSize; + msc_cfg.in_ep = config_descriptor.endpoint_descriptor_2.bEndpointAddress & 0x7; + msc_cfg.in_maxpacket = config_descriptor.endpoint_descriptor_2.wMaxPacketSize; + } + + return msc_configure(&msc_cfg); /* Configure the device class */ + + } else if (sud->wValue == 0) { + configured = 0; + return msc_deconfigure(); + } + + return -1; +} + +/******************************************************************************/ +int usbStartupCallback(void) +{ + MXC_SYS_ClockSourceEnable(MXC_SYS_CLOCK_IPO); + MXC_MCR->ldoctrl |= MXC_F_MCR_LDOCTRL_0P9EN; + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + MXC_SYS_Reset_Periph(MXC_SYS_RESET0_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +int usbShutdownCallback(void) +{ + MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); + + return E_NO_ERROR; +} + +/******************************************************************************/ +static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 1; + } else { + /* Unknown callback */ + return -1; + } + + return 0; +} + +/******************************************************************************/ +static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) +{ + if (sud->wValue == FEAT_REMOTE_WAKE) { + remote_wake_en = 0; + } else { + /* Unknown callback */ + return -1; + } + + return 0; +} + +/******************************************************************************/ +static void usbAppSleep(void) +{ + /* TODO: Place low-power code here */ + suspended = 1; +} + +/******************************************************************************/ +static void usbAppWakeup(void) +{ + /* TODO: Place low-power code here */ + suspended = 0; +} + +/******************************************************************************/ +static int eventCallback(maxusb_event_t evt, void *data) +{ + /* Set event flag */ + MXC_SETBIT(&event_flags, evt); + + switch (evt) { + case MAXUSB_EVENT_NOVBUS: + MXC_USB_EventDisable(MAXUSB_EVENT_BRST); + MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); + MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); + MXC_USB_Disconnect(); + configured = 0; + enum_clearconfig(); + msc_deconfigure(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_VBUS: + MXC_USB_EventClear(MAXUSB_EVENT_BRST); + MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); + MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, eventCallback, NULL); + MXC_USB_EventClear(MAXUSB_EVENT_SUSP); + MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); + MXC_USB_Connect(); + usbAppSleep(); + break; + + case MAXUSB_EVENT_BRST: + usbAppWakeup(); + enum_clearconfig(); + msc_deconfigure(); + configured = 0; + suspended = 0; + break; + + case MAXUSB_EVENT_BRSTDN: + if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor_hs, 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor, 0); + } else { + enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); + enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); + } + break; + + case MAXUSB_EVENT_SUSP: + usbAppSleep(); + break; + + case MAXUSB_EVENT_DPACT: + usbAppWakeup(); + break; + + default: + break; + } + + return 0; +} + +/******************************************************************************/ +void USB_IRQHandler(void) +{ + MXC_USB_EventHandler(); +} diff --git a/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/mscmem.c b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/mscmem.c new file mode 100644 index 00000000000..91d1c898007 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/mscmem.c @@ -0,0 +1,312 @@ +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file mscmem.h + * @brief Memory routines used by the USB Mass Storage Class example. + * See the msc_mem_t structure in msc.h for function details. + * @details Functions are provided for using the internal RAM of the + * device or the external SPI flash memory. Use the SPIXF_DISK + * and RAM_DISK defines to select the desired memory at compile + * time. + */ + +#include "mscmem.h" +#include +#include +//#include "Ext_Flash.h" +//#include "spixf.h" + +/***** Definitions *****/ + +#define SPIXF_DISK 0 +#define RAM_DISK 1 + +#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ +#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ + +/***** Global Data *****/ + +/***** File Scope Variables *****/ + +static int initialized = 0; +static int running = 0; + +#if SPIXF_DISK + +#undef EXT_FLASH_BAUD +#define EXT_FLASH_BAUD 5000000 /* SPI clock rate to communicate with the external flash */ + +#define EXT_FLASH_SECTOR_SIZE 4096 /* Number of bytes in one sector of the external flash */ +#define EXT_FLASH_SECTOR_SIZE_SHIFT \ + 12 /* The shift value used to convert between addresses and block numbers */ +#define EXT_FLASH_NUM_SECTORS 2048 /* Total number of sectors in the external flash */ + +#define MXC_SPIXF_WIDTH Ext_Flash_DataLine_Single /*Number of data lines*/ + +#define LBA_PER_SECTOR (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) +#define INVALID_SECTOR \ + EXT_FLASH_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ + +/***** File Scope Variables *****/ +static uint32_t sectorNum = INVALID_SECTOR; +static uint8_t sector[EXT_FLASH_SECTOR_SIZE]; +static int sectorDirty = 0; + +/***** Function Prototypes *****/ +static uint32_t getSectorNum(uint32_t lba); +static uint32_t getSectorAddr(uint32_t lba); +static uint32_t getSector(uint32_t num); + +/******************************************************************************/ +static uint32_t getSectorNum(uint32_t lba) +{ + /* Absolute_address = lba * LBA_SIZE */ + /* Sector_num = Absolute_address / EXT_FLASH_SECTOR_SIZE */ + /* Sector_num = lba * 512 / 4096 */ + return lba >> (EXT_FLASH_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); +} + +/******************************************************************************/ +static uint32_t getSectorAddr(uint32_t lba) +{ + /* eight 512 byte blocks in each sector */ + return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; +} + +/******************************************************************************/ +static uint32_t getSector(uint32_t num) +{ + /* New sector requested? */ + if (sectorNum != num) { + /* Is the current sector real? */ + if (sectorNum != INVALID_SECTOR) { + /* Was it written to after it was read from memory? */ + if (sectorDirty) { + /* Erase the old data. */ + Ext_Flash_Erase(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, Ext_Flash_Erase_4K); + /* Write the new */ + Ext_Flash_Program_Page(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, + EXT_FLASH_SECTOR_SIZE, MXC_SPIXF_WIDTH); + /* Mark data as clean */ + sectorDirty = 0; + } + } + + /* Requesting a new valid sector? */ + if (num != INVALID_SECTOR) { + Ext_Flash_Read(num << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, EXT_FLASH_SECTOR_SIZE, + MXC_SPIXF_WIDTH); + sectorDirty = 0; + sectorNum = num; + } + } + + return 0; +} + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + MXC_SPIXF_SetSPIFrequency(EXT_FLASH_BAUD); + Ext_Flash_Init(); + Ext_Flash_Reset(); + + if (MXC_SPIXF_WIDTH == Ext_Flash_DataLine_Quad) { + Ext_Flash_Quad(1); + } else { + Ext_Flash_Quad(0); + } + + initialized = 1; + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + /* Get number of 512 byte chunks the external flash contains. */ + return (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) * EXT_FLASH_NUM_SECTORS; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to external flash sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from external flash */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(buffer, sector + addr, LBA_SIZE); + + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + uint32_t addr; + + /* Convert to external flash sector number. */ + uint32_t sNum = getSectorNum(lba); + + if (getSector(sNum)) { + /* Failed to write/read from external flash */ + return 1; + } + + /* Get the offset into the current sector */ + addr = getSectorAddr(lba); + + memcpy(sector + addr, buffer, LBA_SIZE); + sectorDirty = 1; + + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Turn on the external flash if it is not already. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the initialization succeeded. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* TODO - could shut down XIPF interface here. */ + + /* Flush the currently cached sector if necessary. */ + if (getSector(INVALID_SECTOR)) { + return 1; + } + + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#elif RAM_DISK + +#define NUM_PAGES 0x100 +static uint8_t mem[NUM_PAGES][LBA_SIZE]; + +/******************************************************************************/ +int mscmem_Init() +{ + if (!initialized) { + initialized = 1; +#if (ERASE_MEMORY_ON_INIT) + memset(mem, 0, sizeof(mem)); +#endif + } + + return 0; +} + +/******************************************************************************/ +uint32_t mscmem_Size(void) +{ + return NUM_PAGES; +} + +/******************************************************************************/ +int mscmem_Read(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(buffer, mem[lba], LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Write(uint32_t lba, uint8_t *buffer) +{ + if (lba >= NUM_PAGES) { + return 1; + } + + memcpy(mem[lba], buffer, LBA_SIZE); + return 0; +} + +/******************************************************************************/ +int mscmem_Start() +{ + /* Not much to do for this implementation. The RAM is always ready. */ + if (!initialized) { + mscmem_Init(); + } + + /* Check if the RAM has been initialized. If it has, start running. */ + if (initialized) { + running = 1; + } + + /* Start should return fail (non-zero) if the memory cannot be initialized. */ + return !initialized; +} + +/******************************************************************************/ +int mscmem_Stop() +{ + /* Nothing to do for this implementation. All data is written as it is */ + /* received so there are no pending writes that need to be flushed. */ + running = 0; + return 0; +} + +/******************************************************************************/ +int mscmem_Ready(void) +{ + return running; +} + +#else +#error "You must assign either RAM_DISK or SPIXF_DISK to 1." +#endif diff --git a/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/mscmem.h b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/mscmem.h new file mode 100644 index 00000000000..18c7ece9e8e --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/mscmem.h @@ -0,0 +1,84 @@ +/** + * @file + * @brief Memory routines used by the USB Mass Storage Class example. + * See the @ref msc_mem_t structure in msc.h for function details. + */ + +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#ifndef EXAMPLES_MAX32690_USB_MAXUSB_USB_MASSSTORAGE_MSCMEM_H_ +#define EXAMPLES_MAX32690_USB_MAXUSB_USB_MASSSTORAGE_MSCMEM_H_ + +/* **** Include Files **** */ +#include + +/* **** Definitions **** */ +#define ERASE_MEMORY_ON_INIT \ + 1 /* Configuration option to clear the memory (to 0s) on initialization. */ +/* Use 1 to clear or 0 to leave untouched. */ +/** + * @brief Perform any initialization necessary to prepare the memory for reading/writing data. + * @returns 0 if initialization is successful, non-zero if an error occurred. + */ +int mscmem_Init(void); + +/** + * @brief Activates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Start(void); + +/** + * @brief Deactivates the memory. + * @returns 0 if activation is successful, non-zero if an error occurred. + */ +int mscmem_Stop(void); + +/** + * @brief Reports the total size of the mass-storage memory. + * @returns The number of 512 byte blocks contained in the memory. + */ +uint32_t mscmem_Size(void); + +/** + * @brief Reads 512 bytes of data from the memory. + * @param lba The index of the 512 byte block to read. + * @param buffer A byte array of at least 512 bytes to hold the values read. + * @returns 0 if reading is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Read(uint32_t lba, uint8_t *buffer); + +/** + * @brief Writes 512 bytes of data to the memory. + * @param lba The index of the 512 byte block to write. + * @param buffer A byte array of at least 512 bytes holding the values to write. + * @returns 0 if writing is successful, non-zero if an error occurred. + * @returns + */ +int mscmem_Write(uint32_t lba, uint8_t *buffer); + +/** + * @brief Checks if the memory is ready to be read/written. + * @returns non-zero if the memory is ready, 0 otherwise. + */ +int mscmem_Ready(void); + +#endif // EXAMPLES_MAX32690_USB_MAXUSB_USB_MASSSTORAGE_MSCMEM_H_ diff --git a/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/project.mk b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/project.mk new file mode 100644 index 00000000000..24168f84b87 --- /dev/null +++ b/Examples/MAX32690/USB/MAXUSB/USB_MassStorage/project.mk @@ -0,0 +1,33 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU, set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable MAXUSB library +LIB_MAXUSB = 1 diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/.cproject b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.cproject new file mode 100644 index 00000000000..d51853c0242 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.cproject @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/.project b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.project new file mode 100644 index 00000000000..fa23f214065 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.project @@ -0,0 +1,26 @@ + + + cdc_msc + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/.settings/language.settings.xml b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..2557d198abc --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=cdc_msc +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32690 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/README.md b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/c_cpp_properties.json b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/flash.gdb b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/launch.json b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/settings.json b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/settings.json new file mode 100644 index 00000000000..a22f5a12050 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/settings.json @@ -0,0 +1,89 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32690", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32690.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/tasks.json b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/Makefile b/Examples/MAX32690/USB/TinyUSB/cdc_msc/Makefile new file mode 100644 index 00000000000..83cdb608d37 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32690 +TARGET_UC := MAX32690 +TARGET_LC := max32690 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/README.md b/Examples/MAX32690/USB/TinyUSB/cdc_msc/README.md new file mode 100644 index 00000000000..ce57c619a79 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/README.md @@ -0,0 +1,52 @@ +## Description + +The example demonstrates the use of USB composite device with Mass Storage driver class and CDC-ACM driver class using the TinyUSB stack +on a bare-metal system +. After doing the required connections given below, run the program and two new devices appear in the device manager, a Portable device and COM Port. The README.TXT file on the portable device can be read. Open a terminal application on the PC at 115200 baud rate, and echo the characters on the terminal. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +tusb_config.h by default has logging disabled via the CFG_TUSB_DEBUG definition. +For TinyUSB console logging, set the debug level to 1, 2, or 3, with a higher value +indicating more verbose logging. + +## Required Connections + +If using the MAX32690EVKIT: +- Connect a USB cable between the PC and the CN2 (USB/PWR/UART) connector. +- Install JP7(RX_EN) and JP8(TX_EN) headers. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. + +If using the MAX32690FTHR: +- Connect a USB cable between the PC and the J5 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. + +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + +## Expected Output + +By default, the console UART does not output any message. With CFG_TUSB_DEBUG set +to '2', the Console UART of the device will output these messages: + +``` +USBD init on controller 0, Highspeed = 1024 +sizeof(usbd_device_t) = 69 +sizeof(dcd_event_t) = 12 +sizeof(tu_fifo_t) = 20 +sizeof(tu_edpt_stream_t) = 112 +CDC init +MSC init +USBD Bus Reset : High Speed +``` + diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/cdc_msc.launch b/Examples/MAX32690/USB/TinyUSB/cdc_msc/cdc_msc.launch new file mode 100644 index 00000000000..6ce9c10e84c --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/cdc_msc.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/main.c b/Examples/MAX32690/USB/TinyUSB/cdc_msc/main.c new file mode 100644 index 00000000000..7255fc64510 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/main.c @@ -0,0 +1,209 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * Copyright (c) 2024 Analog Devices, Inc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" +#include "led.h" +#include "mxc_device.h" +#include "gcr_regs.h" +#include "mcr_regs.h" +#include "mxc_sys.h" + +//--------------------------------------------------------------------+ +// MACRO CONSTANT TYPEDEF PROTOTYPES +//--------------------------------------------------------------------+ + +/* Blink pattern + * - 250 ms : device not mounted + * - 1000 ms : device mounted + * - 2500 ms : device is suspended + */ +enum { + BLINK_NOT_MOUNTED = 250, + BLINK_MOUNTED = 1000, + BLINK_SUSPENDED = 2500, +}; + +static uint32_t blink_interval_ms = BLINK_NOT_MOUNTED; + +void led_blinking_task(void); +void cdc_task(void); + +/*------------- MAIN -------------*/ +int main(void) +{ + board_init(); + + // init device stack on configured roothub port + tud_init(BOARD_TUD_RHPORT); + + if (board_init_after_tusb) { + board_init_after_tusb(); + } + + while (1) { + tud_task(); // tinyusb device task + led_blinking_task(); + + cdc_task(); + } +} + +//--------------------------------------------------------------------+ +// Device callbacks +//--------------------------------------------------------------------+ + +// Invoked when device is mounted +void tud_mount_cb(void) +{ + blink_interval_ms = BLINK_MOUNTED; +} + +// Invoked when device is unmounted +void tud_umount_cb(void) +{ + blink_interval_ms = BLINK_NOT_MOUNTED; +} + +// Invoked when usb bus is suspended +// remote_wakeup_en : if host allow us to perform remote wakeup +// Within 7ms, device must draw an average of current less than 2.5 mA from bus +void tud_suspend_cb(bool remote_wakeup_en) +{ + (void)remote_wakeup_en; + blink_interval_ms = BLINK_SUSPENDED; +} + +// Invoked when usb bus is resumed +void tud_resume_cb(void) +{ + blink_interval_ms = tud_mounted() ? BLINK_MOUNTED : BLINK_NOT_MOUNTED; +} + +//--------------------------------------------------------------------+ +// USB CDC +//--------------------------------------------------------------------+ +void cdc_task(void) +{ + // connected() check for DTR bit + // Most but not all terminal client set this when making connection + // if ( tud_cdc_connected() ) + { + // connected and there are data available + if (tud_cdc_available()) { + // read data + char buf[64]; + uint32_t count = tud_cdc_read(buf, sizeof(buf)); + (void)count; + + // Echo back + // Note: Skip echo by commenting out write() and write_flush() + // for throughput test e.g + // $ dd if=/dev/zero of=/dev/ttyACM0 count=10000 + tud_cdc_write(buf, count); + tud_cdc_write_flush(); + } + } +} + +// Invoked when cdc when line state changed e.g connected/disconnected +void tud_cdc_line_state_cb(uint8_t itf, bool dtr, bool rts) +{ + (void)itf; + (void)rts; + + if (dtr) { + // Terminal connected + } else { + // Terminal disconnected + } +} + +// Invoked when CDC interface received data from host +void tud_cdc_rx_cb(uint8_t itf) +{ + (void)itf; +} + +//--------------------------------------------------------------------+ +// BLINKING TASK +//--------------------------------------------------------------------+ +void led_blinking_task(void) +{ + static uint32_t start_ms = 0; + static bool led_state = false; + + // Blink every interval ms + if (board_millis() - start_ms < blink_interval_ms) + return; // not enough time + start_ms += blink_interval_ms; + + board_led_write(led_state); + led_state = 1 - led_state; // toggle +} + +//------------------------------------------------------------------------------ +// Wrapper functions to bridge TinyUSB BSP with MSDK BSP +//------------------------------------------------------------------------------ +void board_init(void) +{ + // 1ms tick timer + SysTick_Config(SystemCoreClock / 1000); + + MXC_SYS_ClockSourceEnable(MXC_SYS_CLOCK_IPO); + MXC_MCR->ldoctrl |= MXC_F_MCR_LDOCTRL_0P9EN; + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + MXC_SYS_Reset_Periph(MXC_SYS_RESET0_USB); +} + +void board_led_write(bool state) +{ + if (state) { + LED_On(0); + } else { + LED_Off(0); + } +} + +//--------------------------------------------------------------------+ +// Forward USB interrupt events to TinyUSB IRQ Handler +//--------------------------------------------------------------------+ +void USB_IRQHandler(void) +{ + tud_int_handler(0); +} + +volatile uint32_t system_ticks = 0; + +void SysTick_Handler(void) +{ + system_ticks++; +} + +uint32_t board_millis(void) +{ + return system_ticks; +} diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/msc_disk.c b/Examples/MAX32690/USB/TinyUSB/cdc_msc/msc_disk.c new file mode 100644 index 00000000000..c4d220423e8 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/msc_disk.c @@ -0,0 +1,276 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +#if CFG_TUD_MSC + +// whether host does safe-eject +static bool ejected = false; + +// Some MCU doesn't have enough 8KB SRAM to store the whole disk +// We will use Flash as read-only disk with board that has +// CFG_EXAMPLE_MSC_READONLY defined + +#define README_CONTENTS \ + "This is tinyusb's MassStorage Class demo.\r\n\r\n" \ + "If you find any bugs or get any questions, feel free to file an\r\n" \ + "issue at github.com/hathach/tinyusb" + +enum { + DISK_BLOCK_NUM = 16, // 8KB is the smallest size that windows allow to mount + DISK_BLOCK_SIZE = 512 +}; + +#ifdef CFG_EXAMPLE_MSC_READONLY +const +#endif + uint8_t msc_disk[DISK_BLOCK_NUM][DISK_BLOCK_SIZE] = { + //------------- Block0: Boot Sector -------------// + // byte_per_sector = DISK_BLOCK_SIZE; fat12_sector_num_16 = DISK_BLOCK_NUM; + // sector_per_cluster = 1; reserved_sectors = 1; + // fat_num = 1; fat12_root_entry_num = 16; + // sector_per_fat = 1; sector_per_track = 1; head_num = 1; hidden_sectors = 0; + // drive_number = 0x80; media_type = 0xf8; extended_boot_signature = 0x29; + // filesystem_type = "FAT12 "; volume_serial_number = 0x1234; volume_label = "TinyUSB MSC"; + // FAT magic code at offset 510-511 + { 0xEB, 0x3C, 0x90, 0x4D, 0x53, 0x44, 0x4F, 0x53, 0x35, 0x2E, 0x30, 0x00, 0x02, 0x01, 0x01, + 0x00, 0x01, 0x10, 0x00, 0x10, 0x00, 0xF8, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x29, 0x34, 0x12, 0x00, 0x00, 'T', 'i', + 'n', 'y', 'U', 'S', 'B', ' ', 'M', 'S', 'C', 0x46, 0x41, 0x54, 0x31, 0x32, 0x20, 0x20, + 0x20, 0x00, 0x00, + + // Zero up to 2 last bytes of FAT magic code + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x55, 0xAA }, + + //------------- Block1: FAT12 Table -------------// + { + 0xF8, 0xFF, 0xFF, 0xFF, + 0x0F // // first 2 entries must be F8FF, third entry is cluster end of readme file + }, + + //------------- Block2: Root Directory -------------// + { + // first entry is volume label + 'T', 'i', 'n', 'y', 'U', 'S', 'B', ' ', 'M', 'S', 'C', 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x6D, 0x65, 0x43, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, + // second entry is readme file + 'R', 'E', 'A', 'D', 'M', 'E', ' ', ' ', 'T', 'X', 'T', 0x20, 0x00, 0xC6, 0x52, 0x6D, + 0x65, 0x43, 0x65, 0x43, 0x00, 0x00, 0x88, 0x6D, 0x65, 0x43, 0x02, 0x00, + sizeof(README_CONTENTS) - 1, 0x00, 0x00, 0x00 // readme's files size (4 Bytes) + }, + + //------------- Block3: Readme Content -------------// + README_CONTENTS + }; + +// Invoked when received SCSI_CMD_INQUIRY +// Application fill vendor id, product id and revision with string up to 8, 16, 4 characters respectively +void tud_msc_inquiry_cb(uint8_t lun, uint8_t vendor_id[8], uint8_t product_id[16], + uint8_t product_rev[4]) +{ + (void)lun; + + const char vid[] = "TinyUSB"; + const char pid[] = "Mass Storage"; + const char rev[] = "1.0"; + + memcpy(vendor_id, vid, strlen(vid)); + memcpy(product_id, pid, strlen(pid)); + memcpy(product_rev, rev, strlen(rev)); +} + +// Invoked when received Test Unit Ready command. +// return true allowing host to read/write this LUN e.g SD card inserted +bool tud_msc_test_unit_ready_cb(uint8_t lun) +{ + (void)lun; + + // RAM disk is ready until ejected + if (ejected) { + // Additional Sense 3A-00 is NOT_FOUND + tud_msc_set_sense(lun, SCSI_SENSE_NOT_READY, 0x3a, 0x00); + return false; + } + + return true; +} + +// Invoked when received SCSI_CMD_READ_CAPACITY_10 and SCSI_CMD_READ_FORMAT_CAPACITY to determine the disk size +// Application update block count and block size +void tud_msc_capacity_cb(uint8_t lun, uint32_t *block_count, uint16_t *block_size) +{ + (void)lun; + + *block_count = DISK_BLOCK_NUM; + *block_size = DISK_BLOCK_SIZE; +} + +// Invoked when received Start Stop Unit command +// - Start = 0 : stopped power mode, if load_eject = 1 : unload disk storage +// - Start = 1 : active mode, if load_eject = 1 : load disk storage +bool tud_msc_start_stop_cb(uint8_t lun, uint8_t power_condition, bool start, bool load_eject) +{ + (void)lun; + (void)power_condition; + + if (load_eject) { + if (start) { + // load disk storage + } else { + // unload disk storage + ejected = true; + } + } + + return true; +} + +// Callback invoked when received READ10 command. +// Copy disk's data to buffer (up to bufsize) and return number of copied bytes. +int32_t tud_msc_read10_cb(uint8_t lun, uint32_t lba, uint32_t offset, void *buffer, + uint32_t bufsize) +{ + (void)lun; + + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + + uint8_t const *addr = msc_disk[lba] + offset; + memcpy(buffer, addr, bufsize); + + return (int32_t)bufsize; +} + +bool tud_msc_is_writable_cb(uint8_t lun) +{ + (void)lun; + +#ifdef CFG_EXAMPLE_MSC_READONLY + return false; +#else + return true; +#endif +} + +// Callback invoked when received WRITE10 command. +// Process data in buffer to disk's storage and return number of written bytes +int32_t tud_msc_write10_cb(uint8_t lun, uint32_t lba, uint32_t offset, uint8_t *buffer, + uint32_t bufsize) +{ + (void)lun; + + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + +#ifndef CFG_EXAMPLE_MSC_READONLY + uint8_t *addr = msc_disk[lba] + offset; + memcpy(addr, buffer, bufsize); +#else + (void)lba; + (void)offset; + (void)buffer; +#endif + + return (int32_t)bufsize; +} + +// Callback invoked when received an SCSI command not in built-in list below +// - READ_CAPACITY10, READ_FORMAT_CAPACITY, INQUIRY, MODE_SENSE6, REQUEST_SENSE +// - READ10 and WRITE10 has their own callbacks +int32_t tud_msc_scsi_cb(uint8_t lun, uint8_t const scsi_cmd[16], void *buffer, uint16_t bufsize) +{ + // read10 & write10 has their own callback and MUST not be handled here + + void const *response = NULL; + int32_t resplen = 0; + + // most scsi handled is input + bool in_xfer = true; + + switch (scsi_cmd[0]) { + default: + // Set Sense = Invalid Command Operation + tud_msc_set_sense(lun, SCSI_SENSE_ILLEGAL_REQUEST, 0x20, 0x00); + + // negative means error -> tinyusb could stall and/or response with failed status + resplen = -1; + break; + } + + // return resplen must not larger than bufsize + if (resplen > bufsize) + resplen = bufsize; + + if (response && (resplen > 0)) { + if (in_xfer) { + memcpy(buffer, response, (size_t)resplen); + } else { + // SCSI output + } + } + + return (int32_t)resplen; +} + +#endif diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/project.mk b/Examples/MAX32690/USB/TinyUSB/cdc_msc/project.mk new file mode 100644 index 00000000000..c99b1e1e3ea --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/project.mk @@ -0,0 +1,17 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU, set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable TINYUSB library +LIB_TINYUSB=1 +TINYUSB_CONFIG_DIR = ./ diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/tusb_config.h b/Examples/MAX32690/USB/TinyUSB/cdc_msc/tusb_config.h new file mode 100644 index 00000000000..9e9e6f5fe08 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/tusb_config.h @@ -0,0 +1,114 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#ifndef EXAMPLES_MAX32690_USB_TINYUSB_CDC_MSC_TUSB_CONFIG_H_ +#define EXAMPLES_MAX32690_USB_TINYUSB_CDC_MSC_TUSB_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +//--------------------------------------------------------------------+ +// Board Specific Configuration +//--------------------------------------------------------------------+ + +// RHPort number used for device can be defined by board.mk, default to port 0 +#ifndef BOARD_TUD_RHPORT +#define BOARD_TUD_RHPORT 0 +#endif + +// RHPort max operational speed can defined by board.mk +#ifndef BOARD_TUD_MAX_SPEED +#define BOARD_TUD_MAX_SPEED OPT_MODE_DEFAULT_SPEED +#endif + +//-------------------------------------------------------------------- +// Common Configuration +//-------------------------------------------------------------------- + +// defined by compiler flags for flexibility +#ifndef CFG_TUSB_MCU +#error CFG_TUSB_MCU must be defined +#endif + +#ifndef CFG_TUSB_OS +#define CFG_TUSB_OS OPT_OS_NONE +#endif + +#ifndef CFG_TUSB_DEBUG +#define CFG_TUSB_DEBUG 0 +#endif + +// Enable Device stack +#define CFG_TUD_ENABLED 1 + +// Default is max speed that hardware controller could support with on-chip PHY +#define CFG_TUD_MAX_SPEED BOARD_TUD_MAX_SPEED + +/* USB DMA on some MCUs can only access a specific SRAM region with restriction on alignment. + * Tinyusb use follows macros to declare transferring memory so that they can be put + * into those specific section. + * e.g + * - CFG_TUSB_MEM SECTION : __attribute__ (( section(".usb_ram") )) + * - CFG_TUSB_MEM_ALIGN : __attribute__ ((aligned(4))) + */ +#ifndef CFG_TUSB_MEM_SECTION +#define CFG_TUSB_MEM_SECTION +#endif + +#ifndef CFG_TUSB_MEM_ALIGN +#define CFG_TUSB_MEM_ALIGN __attribute__((aligned(4))) +#endif + +//-------------------------------------------------------------------- +// DEVICE CONFIGURATION +//-------------------------------------------------------------------- + +#ifndef CFG_TUD_ENDPOINT0_SIZE +#define CFG_TUD_ENDPOINT0_SIZE 64 +#endif + +//------------- CLASS -------------// +#define CFG_TUD_CDC 1 +#define CFG_TUD_MSC 1 +#define CFG_TUD_HID 0 +#define CFG_TUD_MIDI 0 +#define CFG_TUD_VENDOR 0 + +// CDC FIFO size of TX and RX +#define CFG_TUD_CDC_RX_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) +#define CFG_TUD_CDC_TX_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) + +// CDC Endpoint transfer buffer size, more is faster +#define CFG_TUD_CDC_EP_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) + +// MSC Buffer size of Device Mass storage +#define CFG_TUD_MSC_EP_BUFSIZE 512 + +#ifdef __cplusplus +} +#endif + +#endif // EXAMPLES_MAX32690_USB_TINYUSB_CDC_MSC_TUSB_CONFIG_H_ diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc/usb_descriptors.c b/Examples/MAX32690/USB/TinyUSB/cdc_msc/usb_descriptors.c new file mode 100644 index 00000000000..2f35cebc140 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc/usb_descriptors.c @@ -0,0 +1,305 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +/* A combination of interfaces must have a unique product id, since PC will save device driver after the first plug. + * Same VID/PID with different interface e.g MSC (first), then CDC (later) will possibly cause system error on PC. + * + * Auto ProductID layout's Bitmap: + * [MSB] HID | MSC | CDC [LSB] + */ +#define _PID_MAP(itf, n) ((CFG_TUD_##itf) << (n)) +#define USB_PID \ + (0x4000 | _PID_MAP(CDC, 0) | _PID_MAP(MSC, 1) | _PID_MAP(HID, 2) | _PID_MAP(MIDI, 3) | \ + _PID_MAP(VENDOR, 4)) + +#define USB_VID 0xCafe +#define USB_BCD 0x0200 + +//--------------------------------------------------------------------+ +// Device Descriptors +//--------------------------------------------------------------------+ +tusb_desc_device_t const desc_device = { + .bLength = sizeof(tusb_desc_device_t), + .bDescriptorType = TUSB_DESC_DEVICE, + .bcdUSB = USB_BCD, + + // Use Interface Association Descriptor (IAD) for CDC + // As required by USB Specs IAD's subclass must be common class (2) and protocol must be IAD (1) + .bDeviceClass = TUSB_CLASS_MISC, + .bDeviceSubClass = MISC_SUBCLASS_COMMON, + .bDeviceProtocol = MISC_PROTOCOL_IAD, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + + .idVendor = USB_VID, + .idProduct = USB_PID, + .bcdDevice = 0x0100, + + .iManufacturer = 0x01, + .iProduct = 0x02, + .iSerialNumber = 0x03, + + .bNumConfigurations = 0x01 +}; + +// Invoked when received GET DEVICE DESCRIPTOR +// Application return pointer to descriptor +uint8_t const *tud_descriptor_device_cb(void) +{ + return (uint8_t const *)&desc_device; +} + +//--------------------------------------------------------------------+ +// Configuration Descriptor +//--------------------------------------------------------------------+ + +enum { ITF_NUM_CDC = 0, ITF_NUM_CDC_DATA, ITF_NUM_MSC, ITF_NUM_TOTAL }; + +#if CFG_TUSB_MCU == OPT_MCU_LPC175X_6X || CFG_TUSB_MCU == OPT_MCU_LPC177X_8X || \ + CFG_TUSB_MCU == OPT_MCU_LPC40XX +// LPC 17xx and 40xx endpoint type (bulk/interrupt/iso) are fixed by its number +// 0 control, 1 In, 2 Bulk, 3 Iso, 4 In, 5 Bulk etc ... +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x82 + +#define EPNUM_MSC_OUT 0x05 +#define EPNUM_MSC_IN 0x85 + +#elif CFG_TUSB_MCU == OPT_MCU_SAMG || CFG_TUSB_MCU == OPT_MCU_SAMX7X +// SAMG & SAME70 don't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x83 + +#define EPNUM_MSC_OUT 0x04 +#define EPNUM_MSC_IN 0x85 + +#elif CFG_TUSB_MCU == OPT_MCU_CXD56 +// CXD56 doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +// CXD56 USB driver has fixed endpoint type (bulk/interrupt/iso) and direction (IN/OUT) by its number +// 0 control (IN/OUT), 1 Bulk (IN), 2 Bulk (OUT), 3 In (IN), 4 Bulk (IN), 5 Bulk (OUT), 6 In (IN) +#define EPNUM_CDC_NOTIF 0x83 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x81 + +#define EPNUM_MSC_OUT 0x05 +#define EPNUM_MSC_IN 0x84 + +#elif CFG_TUSB_MCU == OPT_MCU_FT90X || CFG_TUSB_MCU == OPT_MCU_FT93X +// FT9XX doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x83 + +#define EPNUM_MSC_OUT 0x04 +#define EPNUM_MSC_IN 0x85 + +#elif CFG_TUSB_MCU == OPT_MCU_MAX32690 || CFG_TUSB_MCU == OPT_MCU_MAX32650 || \ + CFG_TUSB_MCU == OPT_MCU_MAX32666 || CFG_TUSB_MCU == OPT_MCU_MAX78002 +// MAX32 doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x83 + +#define EPNUM_MSC_OUT 0x04 +#define EPNUM_MSC_IN 0x85 + +#else +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x82 + +#define EPNUM_MSC_OUT 0x03 +#define EPNUM_MSC_IN 0x83 + +#endif + +#define CONFIG_TOTAL_LEN (TUD_CONFIG_DESC_LEN + TUD_CDC_DESC_LEN + TUD_MSC_DESC_LEN) + +// full speed configuration +uint8_t const desc_fs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP notification address and size, EP data address (out, in) and size. + TUD_CDC_DESCRIPTOR(ITF_NUM_CDC, 4, EPNUM_CDC_NOTIF, 8, EPNUM_CDC_OUT, EPNUM_CDC_IN, 64), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 5, EPNUM_MSC_OUT, EPNUM_MSC_IN, 64), +}; + +#if TUD_OPT_HIGH_SPEED +// Per USB specs: high speed capable device must report device_qualifier and other_speed_configuration + +// high speed configuration +uint8_t const desc_hs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP notification address and size, EP data address (out, in) and size. + TUD_CDC_DESCRIPTOR(ITF_NUM_CDC, 4, EPNUM_CDC_NOTIF, 8, EPNUM_CDC_OUT, EPNUM_CDC_IN, 512), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 5, EPNUM_MSC_OUT, EPNUM_MSC_IN, 512), +}; + +// other speed configuration +uint8_t desc_other_speed_config[CONFIG_TOTAL_LEN]; + +// device qualifier is mostly similar to device descriptor since we don't change configuration based on speed +tusb_desc_device_qualifier_t const desc_device_qualifier = { + .bLength = sizeof(tusb_desc_device_qualifier_t), + .bDescriptorType = TUSB_DESC_DEVICE_QUALIFIER, + .bcdUSB = USB_BCD, + + .bDeviceClass = TUSB_CLASS_MISC, + .bDeviceSubClass = MISC_SUBCLASS_COMMON, + .bDeviceProtocol = MISC_PROTOCOL_IAD, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + .bNumConfigurations = 0x01, + .bReserved = 0x00 +}; + +// Invoked when received GET DEVICE QUALIFIER DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete. +// device_qualifier descriptor describes information about a high-speed capable device that would +// change if the device were operating at the other speed. If not highspeed capable stall this request. +uint8_t const *tud_descriptor_device_qualifier_cb(void) +{ + return (uint8_t const *)&desc_device_qualifier; +} + +// Invoked when received GET OTHER SEED CONFIGURATION DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +// Configuration descriptor in the other speed e.g if high speed then this is for full speed and vice versa +uint8_t const *tud_descriptor_other_speed_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + + // if link speed is high return fullspeed config, and vice versa + // Note: the descriptor type is OHER_SPEED_CONFIG instead of CONFIG + memcpy(desc_other_speed_config, + (tud_speed_get() == TUSB_SPEED_HIGH) ? desc_fs_configuration : desc_hs_configuration, + CONFIG_TOTAL_LEN); + + desc_other_speed_config[1] = TUSB_DESC_OTHER_SPEED_CONFIG; + + return desc_other_speed_config; +} + +#endif // highspeed + +// Invoked when received GET CONFIGURATION DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const *tud_descriptor_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + +#if TUD_OPT_HIGH_SPEED + // Although we are highspeed, host may be fullspeed. + return (tud_speed_get() == TUSB_SPEED_HIGH) ? desc_hs_configuration : desc_fs_configuration; +#else + return desc_fs_configuration; +#endif +} + +//--------------------------------------------------------------------+ +// String Descriptors +//--------------------------------------------------------------------+ + +// String Descriptor Index +enum { + STRID_LANGID = 0, + STRID_MANUFACTURER, + STRID_PRODUCT, + STRID_SERIAL, +}; + +// array of pointer to string descriptors +char const *string_desc_arr[] = { + (const char[]){ 0x09, 0x04 }, // 0: is supported language is English (0x0409) + "TinyUSB", // 1: Manufacturer + "TinyUSB Device", // 2: Product + NULL, // 3: Serials will use unique ID if possible + "TinyUSB CDC", // 4: CDC Interface + "TinyUSB MSC", // 5: MSC Interface +}; + +static uint16_t _desc_str[32 + 1]; + +// Invoked when received GET STRING DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +uint16_t const *tud_descriptor_string_cb(uint8_t index, uint16_t langid) +{ + (void)langid; + size_t chr_count; + + switch (index) { + case STRID_LANGID: + memcpy(&_desc_str[1], string_desc_arr[0], 2); + chr_count = 1; + break; + + case STRID_SERIAL: + chr_count = board_usb_get_serial(_desc_str + 1, 32); + break; + + default: + // Note: the 0xEE index string is a Microsoft OS 1.0 Descriptors. + // https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/microsoft-defined-usb-descriptors + + if (!(index < sizeof(string_desc_arr) / sizeof(string_desc_arr[0]))) + return NULL; + + const char *str = string_desc_arr[index]; + + // Cap at max char + chr_count = strlen(str); + size_t const max_count = sizeof(_desc_str) / sizeof(_desc_str[0]) - 1; // -1 for string type + if (chr_count > max_count) + chr_count = max_count; + + // Convert ASCII string into UTF-16 + for (size_t i = 0; i < chr_count; i++) { + _desc_str[1 + i] = str[i]; + } + break; + } + + // first byte is length (including header), second byte is string type + _desc_str[0] = (uint16_t)((TUSB_DESC_STRING << 8) | (2 * chr_count + 2)); + + return _desc_str; +} diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.cproject b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.cproject new file mode 100644 index 00000000000..65e48174639 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.cproject @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.project b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.project new file mode 100644 index 00000000000..8a770c213dc --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.project @@ -0,0 +1,26 @@ + + + cdc_msc_freertos + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.settings/language.settings.xml b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..cfe5cc20153 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=cdc_msc_freertos +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32690 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/README.md b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/c_cpp_properties.json b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/flash.gdb b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/launch.json b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/settings.json b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/settings.json new file mode 100644 index 00000000000..ca4d859f2f4 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/settings.json @@ -0,0 +1,89 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32690", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32690.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/tasks.json b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/FreeRTOSConfig.h b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/FreeRTOSConfig.h new file mode 100644 index 00000000000..ec8383c5459 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/FreeRTOSConfig.h @@ -0,0 +1,123 @@ +/** + * @file FreeRTOSConfig.h + * @brief FreeRTOSCOnfig function prototypes and data types. + */ + +/****************************************************************************** + * + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/* Define to prevent redundant inclusion */ +#ifndef EXAMPLES_MAX32690_USB_TINYUSB_CDC_MSC_FREERTOS_FREERTOSCONFIG_H_ +#define EXAMPLES_MAX32690_USB_TINYUSB_CDC_MSC_FREERTOS_FREERTOSCONFIG_H_ + +/* **** Includes **** */ +#include +#include "max32690.h" + +/** + * @brief Application specific definitions. + * @details These definitions should be adjusted for your particular hardware and + * application requirements. + * @note THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE + * FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE. + * + * @details See http://www.freertos.org/a00110.html. + */ + +/* CMSIS keeps a global updated with current system clock in Hz */ +#define configCPU_CLOCK_HZ ((uint32_t)IPO_FREQ) + +/* Tick-less idle forces a 32768 Hz RTC-derived SysTick source, and a 256 Hz task tick */ +//#define configUSE_TICKLESS_IDLE 1 +#ifdef configUSE_TICKLESS_IDLE +#define configSYSTICK_CLK_HZ ((uint32_t)32768) +#define configTICK_RATE_HZ ((portTickType)256) +#else +#define configTICK_RATE_HZ ((portTickType)1000) +#endif + +#define configTOTAL_HEAP_SIZE ((size_t)(26 * 1024)) + +#define configMINIMAL_STACK_SIZE ((uint16_t)256) + +#define configMAX_PRIORITIES 5 +#define configUSE_PREEMPTION 0 +#define configUSE_IDLE_HOOK 0 +#define configUSE_TICK_HOOK 0 +#define configUSE_CO_ROUTINES 0 +#define configUSE_16_BIT_TICKS 0 +#define configUSE_MUTEXES 1 +#define configSUPPORT_STATIC_ALLOCATION 1 + +/* Run time and task stats gathering related definitions. */ +#define configUSE_TRACE_FACILITY 1 +#define configUSE_STATS_FORMATTING_FUNCTIONS 1 + +/* Software timer related definitions. */ +#define configUSE_TIMERS 1 +#define configTIMER_TASK_PRIORITY (configMAX_PRIORITIES - 2) +#define configTIMER_QUEUE_LENGTH 32 +#define configTIMER_TASK_STACK_DEPTH configMINIMAL_STACK_SIZE + +/* Set the following definitions to 1 to include the API function, or zero +to exclude the API function. */ +#define INCLUDE_vTaskPrioritySet 0 +#define INCLUDE_vTaskDelete 0 +#define INCLUDE_vTaskSuspend 1 +#define INCLUDE_vTaskDelayUntil 1 +#define INCLUDE_uxTaskPriorityGet 0 +#define INCLUDE_vTaskDelay 1 + +/* # of priority bits (configured in hardware) is provided by CMSIS */ +#define configPRIO_BITS __NVIC_PRIO_BITS + +/* Priority 7, or 255 as only the top three bits are implemented. This is the lowest priority. */ +#define configKERNEL_INTERRUPT_PRIORITY ((unsigned char)7 << (8 - configPRIO_BITS)) + +/* Priority 5, or 160 as only the top three bits are implemented. */ +#define configMAX_SYSCALL_INTERRUPT_PRIORITY ((unsigned char)5 << (8 - configPRIO_BITS)) + +/* The lowest interrupt priority that can be used in a call to a "set priority" function. */ +#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY ((1 << configPRIO_BITS) - 1) + +/* The highest interrupt priority that can be used by any interrupt service +routine that makes calls to interrupt safe FreeRTOS API functions. DO NOT CALL +INTERRUPT SAFE FREERTOS API FUNCTIONS FROM ANY INTERRUPT THAT HAS A HIGHER +PRIORITY THAN THIS! (higher priorities are lower numeric values. */ +#define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 2 + +/* Alias the default handler names to match CMSIS weak symbols */ +#define vPortSVCHandler SVC_Handler +#define xPortPendSVHandler PendSV_Handler +#define xPortSysTickHandler SysTick_Handler + +#ifdef configUSE_TICKLESS_IDLE +#define configRTC_TICK_RATE_HZ ((portTickType)256) +/* Provide routines for tickless idle pre- and post- processing */ +void vPreSleepProcessing(uint32_t *); +void vPostSleepProcessing(uint32_t); +#define configPRE_SLEEP_PROCESSING(idletime) vPreSleepProcessing(&idletime); +#define configPOST_SLEEP_PROCESSING(idletime) vPostSleepProcessing(idletime); +#endif + +/* FreeRTOS+CLI requires this size to be defined, but we do not use it */ +#define configCOMMAND_INT_MAX_OUTPUT_SIZE 1 + +#endif // EXAMPLES_MAX32690_USB_TINYUSB_CDC_MSC_FREERTOS_FREERTOSCONFIG_H_ diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/Makefile b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/Makefile new file mode 100644 index 00000000000..83cdb608d37 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32690 +TARGET_UC := MAX32690 +TARGET_LC := max32690 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/README.md b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/README.md new file mode 100644 index 00000000000..ee8eb574818 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/README.md @@ -0,0 +1,51 @@ +## Description + +The example demonstrates the use of USB composite device with Mass Storage driver class and CDC-ACM driver class using the TinyUSB stack +and FreeRTOS operating system. After doing the required connections given below, run the program and two new devices appear in the device manager, a Portable device and COM Port. The README.TXT file on the portable device can be read. Open a terminal application on the PC at 115200 baud rate, and echo the characters on the terminal. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +tusb_config.h by default has logging disabled via the CFG_TUSB_DEBUG definition. +For TinyUSB console logging, set the debug level to 1, 2, or 3, with a higher value +indicating more verbose logging. + +## Required Connections + +If using the MAX32690EVKIT: +- Connect a USB cable between the PC and the CN2 (USB/PWR/UART) connector. +- Install JP7(RX_EN) and JP8(TX_EN) headers. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. + +If using the MAX32690FTHR: +- Connect a USB cable between the PC and the J5 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. + +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + +## Expected Output + +By default, the console UART does not output any message. With CFG_TUSB_DEBUG set +to '2', the Console UART of the device will output these messages: + +``` +USBD init on controller 0, Highspeed = 1024 +sizeof(usbd_device_t) = 69 +sizeof(dcd_event_t) = 12 +sizeof(tu_fifo_t) = 20 +sizeof(tu_edpt_stream_t) = 112 +CDC init +MSC init +USBD Bus Reset : High Speed +``` + diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/cdc_msc_freertos.launch b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/cdc_msc_freertos.launch new file mode 100644 index 00000000000..b89b9052156 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/cdc_msc_freertos.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/freertos_hook.c b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/freertos_hook.c new file mode 100644 index 00000000000..ea3141d2a58 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/freertos_hook.c @@ -0,0 +1,99 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * Copyright (c) 2024 Analog Devices, Inc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +//--------------------------------------------------------------------+ +// INCLUDE +//--------------------------------------------------------------------+ +#include "FreeRTOS.h" +#include "task.h" +#include "common/tusb_common.h" + +void vApplicationMallocFailedHook(void) +{ + taskDISABLE_INTERRUPTS(); + while (1) {} +} + +void vApplicationStackOverflowHook(xTaskHandle pxTask, char *pcTaskName) +{ + (void)pxTask; + (void)pcTaskName; + + taskDISABLE_INTERRUPTS(); + while (1) {} +} + +/* configSUPPORT_STATIC_ALLOCATION is set to 1, so the application must provide an + * implementation of vApplicationGetIdleTaskMemory() to provide the memory that is + * used by the Idle task. */ +void vApplicationGetIdleTaskMemory(StaticTask_t **ppxIdleTaskTCBBuffer, + StackType_t **ppxIdleTaskStackBuffer, + uint32_t *pulIdleTaskStackSize) +{ + /* If the buffers to be provided to the Idle task are declared inside this + * function then they must be declared static - otherwise they will be allocated on + * the stack and so not exists after this function exits. */ + static StaticTask_t xIdleTaskTCB; + static StackType_t uxIdleTaskStack[configMINIMAL_STACK_SIZE]; + + /* Pass out a pointer to the StaticTask_t structure in which the Idle task's + state will be stored. */ + *ppxIdleTaskTCBBuffer = &xIdleTaskTCB; + + /* Pass out the array that will be used as the Idle task's stack. */ + *ppxIdleTaskStackBuffer = uxIdleTaskStack; + + /* Pass out the size of the array pointed to by *ppxIdleTaskStackBuffer. + Note that, as the array is necessarily of type StackType_t, + configMINIMAL_STACK_SIZE is specified in words, not bytes. */ + *pulIdleTaskStackSize = configMINIMAL_STACK_SIZE; +} + +/* configSUPPORT_STATIC_ALLOCATION and configUSE_TIMERS are both set to 1, so the + * application must provide an implementation of vApplicationGetTimerTaskMemory() + * to provide the memory that is used by the Timer service task. */ +void vApplicationGetTimerTaskMemory(StaticTask_t **ppxTimerTaskTCBBuffer, + StackType_t **ppxTimerTaskStackBuffer, + uint32_t *pulTimerTaskStackSize) +{ + /* If the buffers to be provided to the Timer task are declared inside this + * function then they must be declared static - otherwise they will be allocated on + * the stack and so not exists after this function exits. */ + static StaticTask_t xTimerTaskTCB; + static StackType_t uxTimerTaskStack[configTIMER_TASK_STACK_DEPTH]; + + /* Pass out a pointer to the StaticTask_t structure in which the Timer + task's state will be stored. */ + *ppxTimerTaskTCBBuffer = &xTimerTaskTCB; + + /* Pass out the array that will be used as the Timer task's stack. */ + *ppxTimerTaskStackBuffer = uxTimerTaskStack; + + /* Pass out the size of the array pointed to by *ppxTimerTaskStackBuffer. + Note that, as the array is necessarily of type StackType_t, + configTIMER_TASK_STACK_DEPTH is specified in words, not bytes. */ + *pulTimerTaskStackSize = configTIMER_TASK_STACK_DEPTH; +} diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/main.c b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/main.c new file mode 100644 index 00000000000..014f5decd4c --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/main.c @@ -0,0 +1,298 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * Copyright (c) 2024 Analog Devices, Inc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include +#include +#include + +#include "bsp/board_api.h" +#include "tusb.h" +#include "led.h" +#include "mxc_device.h" +#include "gcr_regs.h" +#include "mcr_regs.h" +#include "mxc_sys.h" + +#if TUP_MCU_ESPRESSIF +// ESP-IDF need "freertos/" prefix in include path. +// CFG_TUSB_OS_INC_PATH should be defined accordingly. +#include "freertos/FreeRTOS.h" +#include "freertos/semphr.h" +#include "freertos/queue.h" +#include "freertos/task.h" +#include "freertos/timers.h" + +#define USBD_STACK_SIZE 4096 +#else + +#include "FreeRTOS.h" +#include "semphr.h" +#include "queue.h" +#include "task.h" +#include "timers.h" + +// Increase stack size when debug log is enabled +#define USBD_STACK_SIZE (3 * configMINIMAL_STACK_SIZE / 2) * (CFG_TUSB_DEBUG ? 2 : 1) +#endif + +// Use the USBD_STACK_SIZE to account for option CFG_TUSB_DEBUG settings +#define CDC_STACK_SIZE USBD_STACK_SIZE +#define BLINKY_STACK_SIZE USBD_STACK_SIZE + +//--------------------------------------------------------------------+ +// MACRO CONSTANT TYPEDEF PROTOTYPES +//--------------------------------------------------------------------+ + +/* Blink pattern + * - 250 ms : device not mounted + * - 1000 ms : device mounted + * - 2500 ms : device is suspended + */ +enum { + BLINK_NOT_MOUNTED = 250, + BLINK_MOUNTED = 1000, + BLINK_SUSPENDED = 2500, +}; + +// static task +#if configSUPPORT_STATIC_ALLOCATION +StackType_t blinky_stack[BLINKY_STACK_SIZE]; +StaticTask_t blinky_taskdef; + +StackType_t usb_device_stack[USBD_STACK_SIZE]; +StaticTask_t usb_device_taskdef; + +StackType_t cdc_stack[CDC_STACK_SIZE]; +StaticTask_t cdc_taskdef; +#endif + +static uint32_t blink_interval_ms = BLINK_NOT_MOUNTED; + +static void usb_device_task(void *param); +void led_blinking_task(void *param); +void cdc_task(void *params); + +//--------------------------------------------------------------------+ +// Main +//--------------------------------------------------------------------+ + +int main(void) +{ + board_init(); + +#if configSUPPORT_STATIC_ALLOCATION + // blinky task + xTaskCreateStatic(led_blinking_task, "blinky", BLINKY_STACK_SIZE, NULL, 1, blinky_stack, + &blinky_taskdef); + + // Create a task for tinyusb device stack + xTaskCreateStatic(usb_device_task, "usbd", USBD_STACK_SIZE, NULL, configMAX_PRIORITIES - 1, + usb_device_stack, &usb_device_taskdef); + + // Create CDC task + xTaskCreateStatic(cdc_task, "cdc", CDC_STACK_SIZE, NULL, configMAX_PRIORITIES - 2, cdc_stack, + &cdc_taskdef); +#else + xTaskCreate(led_blinking_task, "blinky", BLINKY_STACK_SIZE, NULL, 1, NULL); + xTaskCreate(usb_device_task, "usbd", USBD_STACK_SIZE, NULL, configMAX_PRIORITIES - 1, NULL); + xTaskCreate(cdc_task, "cdc", CDC_STACK_SZIE, NULL, configMAX_PRIORITIES - 2, NULL); +#endif + + // skip starting scheduler (and return) for ESP32-S2 or ESP32-S3 +#if !TUP_MCU_ESPRESSIF + vTaskStartScheduler(); +#endif + + return 0; +} + +#if TUP_MCU_ESPRESSIF +void app_main(void) +{ + main(); +} +#endif + +// USB Device Driver task +// This top level thread process all usb events and invoke callbacks +static void usb_device_task(void *param) +{ + (void)param; + + // init device stack on configured roothub port + // This should be called after scheduler/kernel is started. + // Otherwise it could cause kernel issue since USB IRQ handler does use RTOS queue API. + tud_init(BOARD_TUD_RHPORT); + + if (board_init_after_tusb) { + board_init_after_tusb(); + } + + // RTOS forever loop + while (1) { + // put this thread to waiting state until there is new events + tud_task(); + + // following code only run if tud_task() process at least 1 event + tud_cdc_write_flush(); + } +} + +//--------------------------------------------------------------------+ +// Device callbacks +//--------------------------------------------------------------------+ + +// Invoked when device is mounted +void tud_mount_cb(void) +{ + blink_interval_ms = BLINK_MOUNTED; +} + +// Invoked when device is unmounted +void tud_umount_cb(void) +{ + blink_interval_ms = BLINK_NOT_MOUNTED; +} + +// Invoked when usb bus is suspended +// remote_wakeup_en : if host allow us to perform remote wakeup +// Within 7ms, device must draw an average of current less than 2.5 mA from bus +void tud_suspend_cb(bool remote_wakeup_en) +{ + (void)remote_wakeup_en; + blink_interval_ms = BLINK_SUSPENDED; +} + +// Invoked when usb bus is resumed +void tud_resume_cb(void) +{ + blink_interval_ms = tud_mounted() ? BLINK_MOUNTED : BLINK_NOT_MOUNTED; +} + +//--------------------------------------------------------------------+ +// USB CDC +//--------------------------------------------------------------------+ +void cdc_task(void *params) +{ + (void)params; + + // RTOS forever loop + while (1) { + // connected() check for DTR bit + // Most but not all terminal client set this when making connection + // if ( tud_cdc_connected() ) + { + // There are data available + while (tud_cdc_available()) { + uint8_t buf[64]; + + // read and echo back + uint32_t count = tud_cdc_read(buf, sizeof(buf)); + (void)count; + + // Echo back + // Note: Skip echo by commenting out write() and write_flush() + // for throughput test e.g + // $ dd if=/dev/zero of=/dev/ttyACM0 count=10000 + tud_cdc_write(buf, count); + } + + tud_cdc_write_flush(); + } + + // For ESP32-Sx this delay is essential to allow idle how to run and reset watchdog + vTaskDelay(1); + } +} + +// Invoked when cdc when line state changed e.g connected/disconnected +void tud_cdc_line_state_cb(uint8_t itf, bool dtr, bool rts) +{ + (void)itf; + (void)rts; + + if (dtr) { + // Terminal connected + } else { + // Terminal disconnected + } +} + +// Invoked when CDC interface received data from host +void tud_cdc_rx_cb(uint8_t itf) +{ + (void)itf; +} + +//--------------------------------------------------------------------+ +// BLINKING TASK +//--------------------------------------------------------------------+ +void led_blinking_task(void *param) +{ + (void)param; + static uint32_t start_ms = 0; + static bool led_state = false; + + while (1) { + // Blink every interval ms + vTaskDelay(blink_interval_ms / portTICK_PERIOD_MS); + start_ms += blink_interval_ms; + + board_led_write(led_state); + led_state = 1 - led_state; // toggle + } +} + +//------------------------------------------------------------------------------ +// Wrapper functions to bridge TinyUSB BSP with MSDK BSP +//------------------------------------------------------------------------------ +void board_init(void) +{ + // If freeRTOS is used, IRQ priority is limit by max syscall ( smaller is higher ) + NVIC_SetPriority(USB_IRQn, configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY); + + MXC_SYS_ClockSourceEnable(MXC_SYS_CLOCK_IPO); + MXC_MCR->ldoctrl |= MXC_F_MCR_LDOCTRL_0P9EN; + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + MXC_SYS_Reset_Periph(MXC_SYS_RESET0_USB); +} + +void board_led_write(bool state) +{ + if (state) { + LED_On(0); + } else { + LED_Off(0); + } +} + +//--------------------------------------------------------------------+ +// Forward USB interrupt events to TinyUSB IRQ Handler +//--------------------------------------------------------------------+ +void USB_IRQHandler(void) +{ + tud_int_handler(0); +} diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/msc_disk.c b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/msc_disk.c new file mode 100644 index 00000000000..532e4651377 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/msc_disk.c @@ -0,0 +1,254 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +#if CFG_TUD_MSC + +// Some MCU doesn't have enough 8KB SRAM to store the whole disk +// We will use Flash as read-only disk with board that has +// CFG_EXAMPLE_MSC_READONLY defined + +#define README_CONTENTS \ + "This is tinyusb's MassStorage Class demo.\r\n\r\n" \ + "If you find any bugs or get any questions, feel free to file an\r\n" \ + "issue at github.com/hathach/tinyusb" + +enum { + DISK_BLOCK_NUM = 16, // 8KB is the smallest size that windows allow to mount + DISK_BLOCK_SIZE = 512 +}; + +#ifdef CFG_EXAMPLE_MSC_READONLY +const +#endif + uint8_t msc_disk[DISK_BLOCK_NUM][DISK_BLOCK_SIZE] = { + //------------- Block0: Boot Sector -------------// + // byte_per_sector = DISK_BLOCK_SIZE; fat12_sector_num_16 = DISK_BLOCK_NUM; + // sector_per_cluster = 1; reserved_sectors = 1; + // fat_num = 1; fat12_root_entry_num = 16; + // sector_per_fat = 1; sector_per_track = 1; head_num = 1; hidden_sectors = 0; + // drive_number = 0x80; media_type = 0xf8; extended_boot_signature = 0x29; + // filesystem_type = "FAT12 "; volume_serial_number = 0x1234; volume_label = "TinyUSB MSC"; + // FAT magic code at offset 510-511 + { 0xEB, 0x3C, 0x90, 0x4D, 0x53, 0x44, 0x4F, 0x53, 0x35, 0x2E, 0x30, 0x00, 0x02, 0x01, 0x01, + 0x00, 0x01, 0x10, 0x00, 0x10, 0x00, 0xF8, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x29, 0x34, 0x12, 0x00, 0x00, 'T', 'i', + 'n', 'y', 'U', 'S', 'B', ' ', 'M', 'S', 'C', 0x46, 0x41, 0x54, 0x31, 0x32, 0x20, 0x20, + 0x20, 0x00, 0x00, + + // Zero up to 2 last bytes of FAT magic code + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x55, 0xAA }, + + //------------- Block1: FAT12 Table -------------// + { + 0xF8, 0xFF, 0xFF, 0xFF, + 0x0F // // first 2 entries must be F8FF, third entry is cluster end of readme file + }, + + //------------- Block2: Root Directory -------------// + { + // first entry is volume label + 'T', 'i', 'n', 'y', 'U', 'S', 'B', ' ', 'M', 'S', 'C', 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x6D, 0x65, 0x43, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, + // second entry is readme file + 'R', 'E', 'A', 'D', 'M', 'E', ' ', ' ', 'T', 'X', 'T', 0x20, 0x00, 0xC6, 0x52, 0x6D, + 0x65, 0x43, 0x65, 0x43, 0x00, 0x00, 0x88, 0x6D, 0x65, 0x43, 0x02, 0x00, + sizeof(README_CONTENTS) - 1, 0x00, 0x00, 0x00 // readme's files size (4 Bytes) + }, + + //------------- Block3: Readme Content -------------// + README_CONTENTS + }; + +// Invoked when received SCSI_CMD_INQUIRY +// Application fill vendor id, product id and revision with string up to 8, 16, 4 characters respectively +void tud_msc_inquiry_cb(uint8_t lun, uint8_t vendor_id[8], uint8_t product_id[16], + uint8_t product_rev[4]) +{ + (void)lun; + + const char vid[] = "TinyUSB"; + const char pid[] = "Mass Storage"; + const char rev[] = "1.0"; + + memcpy(vendor_id, vid, strlen(vid)); + memcpy(product_id, pid, strlen(pid)); + memcpy(product_rev, rev, strlen(rev)); +} + +// Invoked when received Test Unit Ready command. +// return true allowing host to read/write this LUN e.g SD card inserted +bool tud_msc_test_unit_ready_cb(uint8_t lun) +{ + (void)lun; + + return true; // RAM disk is always ready +} + +// Invoked when received SCSI_CMD_READ_CAPACITY_10 and SCSI_CMD_READ_FORMAT_CAPACITY to determine the disk size +// Application update block count and block size +void tud_msc_capacity_cb(uint8_t lun, uint32_t *block_count, uint16_t *block_size) +{ + (void)lun; + + *block_count = DISK_BLOCK_NUM; + *block_size = DISK_BLOCK_SIZE; +} + +// Invoked when received Start Stop Unit command +// - Start = 0 : stopped power mode, if load_eject = 1 : unload disk storage +// - Start = 1 : active mode, if load_eject = 1 : load disk storage +bool tud_msc_start_stop_cb(uint8_t lun, uint8_t power_condition, bool start, bool load_eject) +{ + (void)lun; + (void)power_condition; + + if (load_eject) { + if (start) { + // load disk storage + } else { + // unload disk storage + } + } + + return true; +} + +// Callback invoked when received READ10 command. +// Copy disk's data to buffer (up to bufsize) and return number of copied bytes. +int32_t tud_msc_read10_cb(uint8_t lun, uint32_t lba, uint32_t offset, void *buffer, + uint32_t bufsize) +{ + (void)lun; + + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + + uint8_t const *addr = msc_disk[lba] + offset; + memcpy(buffer, addr, bufsize); + + return (int32_t)bufsize; +} + +// Callback invoked when received WRITE10 command. +// Process data in buffer to disk's storage and return number of written bytes +int32_t tud_msc_write10_cb(uint8_t lun, uint32_t lba, uint32_t offset, uint8_t *buffer, + uint32_t bufsize) +{ + (void)lun; + + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + +#ifndef CFG_EXAMPLE_MSC_READONLY + uint8_t *addr = msc_disk[lba] + offset; + memcpy(addr, buffer, bufsize); +#else + (void)lba; + (void)offset; + (void)buffer; +#endif + + return (int32_t)bufsize; +} + +// Callback invoked when received an SCSI command not in built-in list below +// - READ_CAPACITY10, READ_FORMAT_CAPACITY, INQUIRY, MODE_SENSE6, REQUEST_SENSE +// - READ10 and WRITE10 has their own callbacks +int32_t tud_msc_scsi_cb(uint8_t lun, uint8_t const scsi_cmd[16], void *buffer, uint16_t bufsize) +{ + // read10 & write10 has their own callback and MUST not be handled here + + void const *response = NULL; + int32_t resplen = 0; + + // most scsi handled is input + bool in_xfer = true; + + switch (scsi_cmd[0]) { + default: + // Set Sense = Invalid Command Operation + tud_msc_set_sense(lun, SCSI_SENSE_ILLEGAL_REQUEST, 0x20, 0x00); + + // negative means error -> tinyusb could stall and/or response with failed status + resplen = -1; + break; + } + + // return resplen must not larger than bufsize + if (resplen > bufsize) + resplen = bufsize; + + if (response && (resplen > 0)) { + if (in_xfer) { + memcpy(buffer, response, (size_t)resplen); + } else { + // SCSI output + } + } + + return (int32_t)resplen; +} + +#endif diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/project.mk b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/project.mk new file mode 100644 index 00000000000..b55b69d8159 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/project.mk @@ -0,0 +1,20 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU, set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable TINYUSB library +LIB_TINYUSB=1 +TINYUSB_CONFIG_DIR = ./ + +# Enable FreeRTOS library +LIB_FREERTOS=1 diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/tusb_config.h b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/tusb_config.h new file mode 100644 index 00000000000..746b2428ea2 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/tusb_config.h @@ -0,0 +1,121 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#ifndef EXAMPLES_MAX32690_USB_TINYUSB_CDC_MSC_FREERTOS_TUSB_CONFIG_H_ +#define EXAMPLES_MAX32690_USB_TINYUSB_CDC_MSC_FREERTOS_TUSB_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +//--------------------------------------------------------------------+ +// Board Specific Configuration +//--------------------------------------------------------------------+ + +// RHPort number used for device can be defined by board.mk, default to port 0 +#ifndef BOARD_TUD_RHPORT +#define BOARD_TUD_RHPORT 0 +#endif + +// RHPort max operational speed can defined by board.mk +#ifndef BOARD_TUD_MAX_SPEED +#define BOARD_TUD_MAX_SPEED OPT_MODE_DEFAULT_SPEED +#endif + +//-------------------------------------------------------------------- +// COMMON CONFIGURATION +//-------------------------------------------------------------------- + +// defined by board.mk +#ifndef CFG_TUSB_MCU +#error CFG_TUSB_MCU must be defined +#endif + +// This examples use FreeRTOS +#ifndef CFG_TUSB_OS +#define CFG_TUSB_OS OPT_OS_FREERTOS +#endif + +// Espressif IDF requires "freertos/" prefix in include path +#if TUP_MCU_ESPRESSIF +#define CFG_TUSB_OS_INC_PATH freertos / +#endif + +// can be defined by compiler in DEBUG build +#ifndef CFG_TUSB_DEBUG +#define CFG_TUSB_DEBUG 0 +#endif + +// Enable Device stack +#define CFG_TUD_ENABLED 1 + +// Default is max speed that hardware controller could support with on-chip PHY +#define CFG_TUD_MAX_SPEED BOARD_TUD_MAX_SPEED + +/* USB DMA on some MCUs can only access a specific SRAM region with restriction on alignment. + * Tinyusb use follows macros to declare transferring memory so that they can be put + * into those specific section. + * e.g + * - CFG_TUSB_MEM SECTION : __attribute__ (( section(".usb_ram") )) + * - CFG_TUSB_MEM_ALIGN : __attribute__ ((aligned(4))) + */ +#ifndef CFG_TUSB_MEM_SECTION +#define CFG_TUSB_MEM_SECTION +#endif + +#ifndef CFG_TUSB_MEM_ALIGN +#define CFG_TUSB_MEM_ALIGN __attribute__((aligned(4))) +#endif + +//-------------------------------------------------------------------- +// DEVICE CONFIGURATION +//-------------------------------------------------------------------- + +#ifndef CFG_TUD_ENDPOINT0_SIZE +#define CFG_TUD_ENDPOINT0_SIZE 64 +#endif + +//------------- CLASS -------------// +#define CFG_TUD_CDC 1 +#define CFG_TUD_MSC 1 +#define CFG_TUD_HID 0 +#define CFG_TUD_MIDI 0 +#define CFG_TUD_VENDOR 0 + +// CDC FIFO size of TX and RX +#define CFG_TUD_CDC_RX_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) +#define CFG_TUD_CDC_TX_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) + +// CDC Endpoint transfer buffer size, more is faster +#define CFG_TUD_CDC_EP_BUFSIZE (TUD_OPT_HIGH_SPEED ? 512 : 64) + +// MSC Buffer size of Device Mass storage +#define CFG_TUD_MSC_EP_BUFSIZE 512 + +#ifdef __cplusplus +} +#endif + +#endif // EXAMPLES_MAX32690_USB_TINYUSB_CDC_MSC_FREERTOS_TUSB_CONFIG_H_ diff --git a/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/usb_descriptors.c b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/usb_descriptors.c new file mode 100644 index 00000000000..80664f0329d --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/cdc_msc_freertos/usb_descriptors.c @@ -0,0 +1,282 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +/* A combination of interfaces must have a unique product id, since PC will save device driver after the first plug. + * Same VID/PID with different interface e.g MSC (first), then CDC (later) will possibly cause system error on PC. + * + * Auto ProductID layout's Bitmap: + * [MSB] HID | MSC | CDC [LSB] + */ +#define _PID_MAP(itf, n) ((CFG_TUD_##itf) << (n)) +#define USB_PID \ + (0x4000 | _PID_MAP(CDC, 0) | _PID_MAP(MSC, 1) | _PID_MAP(HID, 2) | _PID_MAP(MIDI, 3) | \ + _PID_MAP(VENDOR, 4)) + +#define USB_VID 0xCafe +#define USB_BCD 0x0200 + +//--------------------------------------------------------------------+ +// Device Descriptors +//--------------------------------------------------------------------+ +tusb_desc_device_t const desc_device = { + .bLength = sizeof(tusb_desc_device_t), + .bDescriptorType = TUSB_DESC_DEVICE, + .bcdUSB = USB_BCD, + + // Use Interface Association Descriptor (IAD) for CDC + // As required by USB Specs IAD's subclass must be common class (2) and protocol must be IAD (1) + .bDeviceClass = TUSB_CLASS_MISC, + .bDeviceSubClass = MISC_SUBCLASS_COMMON, + .bDeviceProtocol = MISC_PROTOCOL_IAD, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + + .idVendor = USB_VID, + .idProduct = USB_PID, + .bcdDevice = 0x0100, + + .iManufacturer = 0x01, + .iProduct = 0x02, + .iSerialNumber = 0x03, + + .bNumConfigurations = 0x01 +}; + +// Invoked when received GET DEVICE DESCRIPTOR +// Application return pointer to descriptor +uint8_t const *tud_descriptor_device_cb(void) +{ + return (uint8_t const *)&desc_device; +} + +//--------------------------------------------------------------------+ +// Configuration Descriptor +//--------------------------------------------------------------------+ + +enum { ITF_NUM_CDC = 0, ITF_NUM_CDC_DATA, ITF_NUM_MSC, ITF_NUM_TOTAL }; + +#if CFG_TUSB_MCU == OPT_MCU_LPC175X_6X || CFG_TUSB_MCU == OPT_MCU_LPC177X_8X || \ + CFG_TUSB_MCU == OPT_MCU_LPC40XX +// LPC 17xx and 40xx endpoint type (bulk/interrupt/iso) are fixed by its number +// 0 control, 1 In, 2 Bulk, 3 Iso, 4 In, 5 Bulk etc ... +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x82 + +#define EPNUM_MSC_OUT 0x05 +#define EPNUM_MSC_IN 0x85 + +#elif CFG_TUSB_MCU == OPT_MCU_SAMG +// SAMG doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x83 + +#define EPNUM_MSC_OUT 0x04 +#define EPNUM_MSC_IN 0x85 + +#elif CFG_TUSB_MCU == OPT_MCU_MAX32690 || CFG_TUSB_MCU == OPT_MCU_MAX32650 || \ + CFG_TUSB_MCU == OPT_MCU_MAX32666 || CFG_TUSB_MCU == OPT_MCU_MAX78002 +// MAX32 doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x83 + +#define EPNUM_MSC_OUT 0x04 +#define EPNUM_MSC_IN 0x85 + +#else +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x82 + +#define EPNUM_MSC_OUT 0x03 +#define EPNUM_MSC_IN 0x83 + +#endif + +#define CONFIG_TOTAL_LEN (TUD_CONFIG_DESC_LEN + TUD_CDC_DESC_LEN + TUD_MSC_DESC_LEN) + +uint8_t const desc_fs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP notification address and size, EP data address (out, in) and size. + TUD_CDC_DESCRIPTOR(ITF_NUM_CDC, 4, EPNUM_CDC_NOTIF, 8, EPNUM_CDC_OUT, EPNUM_CDC_IN, 64), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 5, EPNUM_MSC_OUT, EPNUM_MSC_IN, 64), +}; + +#if TUD_OPT_HIGH_SPEED +// Per USB specs: high speed capable device must report device_qualifier and other_speed_configuration + +// high speed configuration +uint8_t const desc_hs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP notification address and size, EP data address (out, in) and size. + TUD_CDC_DESCRIPTOR(ITF_NUM_CDC, 4, EPNUM_CDC_NOTIF, 8, EPNUM_CDC_OUT, EPNUM_CDC_IN, 512), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 5, EPNUM_MSC_OUT, EPNUM_MSC_IN, 512), +}; + +// other speed configuration +uint8_t desc_other_speed_config[CONFIG_TOTAL_LEN]; + +// device qualifier is mostly similar to device descriptor since we don't change configuration based on speed +tusb_desc_device_qualifier_t const desc_device_qualifier = { + .bLength = sizeof(tusb_desc_device_qualifier_t), + .bDescriptorType = TUSB_DESC_DEVICE_QUALIFIER, + .bcdUSB = USB_BCD, + + .bDeviceClass = TUSB_CLASS_MISC, + .bDeviceSubClass = MISC_SUBCLASS_COMMON, + .bDeviceProtocol = MISC_PROTOCOL_IAD, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + .bNumConfigurations = 0x01, + .bReserved = 0x00 +}; + +// Invoked when received GET DEVICE QUALIFIER DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete. +// device_qualifier descriptor describes information about a high-speed capable device that would +// change if the device were operating at the other speed. If not highspeed capable stall this request. +uint8_t const *tud_descriptor_device_qualifier_cb(void) +{ + return (uint8_t const *)&desc_device_qualifier; +} + +// Invoked when received GET OTHER SEED CONFIGURATION DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +// Configuration descriptor in the other speed e.g if high speed then this is for full speed and vice versa +uint8_t const *tud_descriptor_other_speed_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + + // if link speed is high return fullspeed config, and vice versa + // Note: the descriptor type is OHER_SPEED_CONFIG instead of CONFIG + memcpy(desc_other_speed_config, + (tud_speed_get() == TUSB_SPEED_HIGH) ? desc_fs_configuration : desc_hs_configuration, + CONFIG_TOTAL_LEN); + + desc_other_speed_config[1] = TUSB_DESC_OTHER_SPEED_CONFIG; + + return desc_other_speed_config; +} + +#endif // highspeed + +// Invoked when received GET CONFIGURATION DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const *tud_descriptor_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + +#if TUD_OPT_HIGH_SPEED + // Although we are highspeed, host may be fullspeed. + return (tud_speed_get() == TUSB_SPEED_HIGH) ? desc_hs_configuration : desc_fs_configuration; +#else + return desc_fs_configuration; +#endif +} + +//--------------------------------------------------------------------+ +// String Descriptors +//--------------------------------------------------------------------+ + +// String Descriptor Index +enum { + STRID_LANGID = 0, + STRID_MANUFACTURER, + STRID_PRODUCT, + STRID_SERIAL, +}; + +// array of pointer to string descriptors +char const *string_desc_arr[] = { + (const char[]){ 0x09, 0x04 }, // 0: is supported language is English (0x0409) + "TinyUSB", // 1: Manufacturer + "TinyUSB Device", // 2: Product + NULL, // 3: Serials will use unique ID if possible + "TinyUSB CDC", // 4: CDC Interface + "TinyUSB MSC", // 5: MSC Interface +}; + +static uint16_t _desc_str[32 + 1]; + +// Invoked when received GET STRING DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +uint16_t const *tud_descriptor_string_cb(uint8_t index, uint16_t langid) +{ + (void)langid; + size_t chr_count; + + switch (index) { + case STRID_LANGID: + memcpy(&_desc_str[1], string_desc_arr[0], 2); + chr_count = 1; + break; + + case STRID_SERIAL: + chr_count = board_usb_get_serial(_desc_str + 1, 32); + break; + + default: + // Note: the 0xEE index string is a Microsoft OS 1.0 Descriptors. + // https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/microsoft-defined-usb-descriptors + + if (!(index < sizeof(string_desc_arr) / sizeof(string_desc_arr[0]))) + return NULL; + + const char *str = string_desc_arr[index]; + + // Cap at max char + chr_count = strlen(str); + size_t const max_count = sizeof(_desc_str) / sizeof(_desc_str[0]) - 1; // -1 for string type + if (chr_count > max_count) + chr_count = max_count; + + // Convert ASCII string into UTF-16 + for (size_t i = 0; i < chr_count; i++) { + _desc_str[1 + i] = str[i]; + } + break; + } + + // first byte is length (including header), second byte is string type + _desc_str[0] = (uint16_t)((TUSB_DESC_STRING << 8) | (2 * chr_count + 2)); + + return _desc_str; +} diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/.cproject b/Examples/MAX32690/USB/TinyUSB/hid_composite/.cproject new file mode 100644 index 00000000000..8d8b13d4a77 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/.cproject @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/.project b/Examples/MAX32690/USB/TinyUSB/hid_composite/.project new file mode 100644 index 00000000000..691dbf6d42e --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/.project @@ -0,0 +1,26 @@ + + + hid_composite + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/.settings/language.settings.xml b/Examples/MAX32690/USB/TinyUSB/hid_composite/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32690/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32690/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..21ad6812cd7 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=hid_composite +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32690 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/README.md b/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/c_cpp_properties.json b/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/flash.gdb b/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/launch.json b/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/settings.json b/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/settings.json new file mode 100644 index 00000000000..a22f5a12050 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/settings.json @@ -0,0 +1,89 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32690", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32690.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/tasks.json b/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/Makefile b/Examples/MAX32690/USB/TinyUSB/hid_composite/Makefile new file mode 100644 index 00000000000..83cdb608d37 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32690 +TARGET_UC := MAX32690 +TARGET_LC := max32690 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/README.md b/Examples/MAX32690/USB/TinyUSB/hid_composite/README.md new file mode 100644 index 00000000000..d0bad23a10c --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/README.md @@ -0,0 +1,51 @@ +## Description + +The example demonstrates the use of USB composite HID driver class. After doing the required connections given below, run the program and a new composite +HID device appears in the device manager, with keyboard, joystick, mouse and consumer control support. Pressing the switch SW2 on the EV Kit will result +in the 'a' key being pressed by the keyboard, the mouse moving down and right, joystick button A, and volume down. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +tusb_config.h by default has logging disabled via the CFG_TUSB_DEBUG definition. +For TinyUSB console logging, set the debug level to 1, 2, or 3, with a higher value +indicating more verbose logging. + +## Required Connections + +If using the MAX32690EVKIT: +- Connect a USB cable between the PC and the CN2 (USB/PWR/UART) connector. +- Install JP7(RX_EN) and JP8(TX_EN) headers. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. + +If using the MAX32690FTHR: +- Connect a USB cable between the PC and the J5 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. + +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + +## Expected Output + +By default, the console UART does not output any message. With CFG_TUSB_DEBUG set +to '2', the Console UART of the device will output these messages: + +``` +USBD init on controller 0, Highspeed = 1024 +sizeof(usbd_device_t) = 69 +sizeof(dcd_event_t) = 12 +sizeof(tu_fifo_t) = 12 +sizeof(tu_edpt_stream_t) = 24 +HID init +``` + + diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/hid_composite.launch b/Examples/MAX32690/USB/TinyUSB/hid_composite/hid_composite.launch new file mode 100644 index 00000000000..177f17a3191 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/hid_composite.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/main.c b/Examples/MAX32690/USB/TinyUSB/hid_composite/main.c new file mode 100644 index 00000000000..cdcf93845a9 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/main.c @@ -0,0 +1,345 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * Copyright (c) 2024 Analog Devices, Inc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include +#include +#include + +#include "bsp/board_api.h" +#include "tusb.h" +#include "led.h" +#include "pb.h" +#include "mxc_device.h" +#include "gcr_regs.h" +#include "mcr_regs.h" +#include "mxc_sys.h" +#include "usb_descriptors.h" + +//--------------------------------------------------------------------+ +// MACRO CONSTANT TYPEDEF PROTYPES +//--------------------------------------------------------------------+ + +/* Blink pattern + * - 250 ms : device not mounted + * - 1000 ms : device mounted + * - 2500 ms : device is suspended + */ +enum { + BLINK_NOT_MOUNTED = 250, + BLINK_MOUNTED = 1000, + BLINK_SUSPENDED = 2500, +}; + +static uint32_t blink_interval_ms = BLINK_NOT_MOUNTED; + +void led_blinking_task(void); +void hid_task(void); + +/*------------- MAIN -------------*/ +int main(void) +{ + board_init(); + + // init device stack on configured roothub port + tud_init(BOARD_TUD_RHPORT); + + if (board_init_after_tusb) { + board_init_after_tusb(); + } + + while (1) { + tud_task(); // tinyusb device task + led_blinking_task(); + + hid_task(); + } +} + +//--------------------------------------------------------------------+ +// Device callbacks +//--------------------------------------------------------------------+ + +// Invoked when device is mounted +void tud_mount_cb(void) +{ + blink_interval_ms = BLINK_MOUNTED; +} + +// Invoked when device is unmounted +void tud_umount_cb(void) +{ + blink_interval_ms = BLINK_NOT_MOUNTED; +} + +// Invoked when usb bus is suspended +// remote_wakeup_en : if host allow us to perform remote wakeup +// Within 7ms, device must draw an average of current less than 2.5 mA from bus +void tud_suspend_cb(bool remote_wakeup_en) +{ + (void)remote_wakeup_en; + blink_interval_ms = BLINK_SUSPENDED; +} + +// Invoked when usb bus is resumed +void tud_resume_cb(void) +{ + blink_interval_ms = tud_mounted() ? BLINK_MOUNTED : BLINK_NOT_MOUNTED; +} + +//--------------------------------------------------------------------+ +// USB HID +//--------------------------------------------------------------------+ + +static void send_hid_report(uint8_t report_id, uint32_t btn) +{ + // skip if hid is not ready yet + if (!tud_hid_ready()) + return; + + switch (report_id) { + case REPORT_ID_KEYBOARD: { + // use to avoid send multiple consecutive zero report for keyboard + static bool has_keyboard_key = false; + + if (btn) { + uint8_t keycode[6] = { 0 }; + keycode[0] = HID_KEY_A; + + tud_hid_keyboard_report(REPORT_ID_KEYBOARD, 0, keycode); + has_keyboard_key = true; + } else { + // send empty key report if previously has key pressed + if (has_keyboard_key) + tud_hid_keyboard_report(REPORT_ID_KEYBOARD, 0, NULL); + has_keyboard_key = false; + } + } break; + + case REPORT_ID_MOUSE: { + int8_t const delta = 5; + + // no button, right + down, no scroll, no pan + tud_hid_mouse_report(REPORT_ID_MOUSE, 0x00, delta, delta, 0, 0); + } break; + + case REPORT_ID_CONSUMER_CONTROL: { + // use to avoid send multiple consecutive zero report + static bool has_consumer_key = false; + + if (btn) { + // volume down + uint16_t volume_down = HID_USAGE_CONSUMER_VOLUME_DECREMENT; + tud_hid_report(REPORT_ID_CONSUMER_CONTROL, &volume_down, 2); + has_consumer_key = true; + } else { + // send empty key report (release key) if previously has key pressed + uint16_t empty_key = 0; + if (has_consumer_key) + tud_hid_report(REPORT_ID_CONSUMER_CONTROL, &empty_key, 2); + has_consumer_key = false; + } + } break; + + case REPORT_ID_GAMEPAD: { + // use to avoid send multiple consecutive zero report for keyboard + static bool has_gamepad_key = false; + + hid_gamepad_report_t report = { + .x = 0, .y = 0, .z = 0, .rz = 0, .rx = 0, .ry = 0, .hat = 0, .buttons = 0 + }; + + if (btn) { + report.hat = GAMEPAD_HAT_UP; + report.buttons = GAMEPAD_BUTTON_A; + tud_hid_report(REPORT_ID_GAMEPAD, &report, sizeof(report)); + + has_gamepad_key = true; + } else { + report.hat = GAMEPAD_HAT_CENTERED; + report.buttons = 0; + if (has_gamepad_key) + tud_hid_report(REPORT_ID_GAMEPAD, &report, sizeof(report)); + has_gamepad_key = false; + } + } break; + + default: + break; + } +} + +// Every 10ms, we will sent 1 report for each HID profile (keyboard, mouse etc ..) +// tud_hid_report_complete_cb() is used to send the next report after previous one is complete +void hid_task(void) +{ + // Poll every 10ms + const uint32_t interval_ms = 10; + static uint32_t start_ms = 0; + + if (board_millis() - start_ms < interval_ms) + return; // not enough time + start_ms += interval_ms; + + uint32_t const btn = board_button_read(); + + // Remote wakeup + if (tud_suspended() && btn) { + // Wake up host if we are in suspend mode + // and REMOTE_WAKEUP feature is enabled by host + tud_remote_wakeup(); + } else { + // Send the 1st of report chain, the rest will be sent by tud_hid_report_complete_cb() + send_hid_report(REPORT_ID_KEYBOARD, btn); + } +} + +// Invoked when sent REPORT successfully to host +// Application can use this to send the next report +// Note: For composite reports, report[0] is report ID +void tud_hid_report_complete_cb(uint8_t instance, uint8_t const *report, uint16_t len) +{ + (void)instance; + (void)len; + + uint8_t next_report_id = report[0] + 1u; + + if (next_report_id < REPORT_ID_COUNT) { + send_hid_report(next_report_id, board_button_read()); + } +} + +// Invoked when received GET_REPORT control request +// Application must fill buffer report's content and return its length. +// Return zero will cause the stack to STALL request +uint16_t tud_hid_get_report_cb(uint8_t instance, uint8_t report_id, hid_report_type_t report_type, + uint8_t *buffer, uint16_t reqlen) +{ + (void)instance; + (void)report_id; + (void)report_type; + (void)buffer; + (void)reqlen; + + return 0; +} + +// Invoked when received SET_REPORT control request or +// received data on OUT endpoint ( Report ID = 0, Type = 0 ) +void tud_hid_set_report_cb(uint8_t instance, uint8_t report_id, hid_report_type_t report_type, + uint8_t const *buffer, uint16_t bufsize) +{ + (void)instance; + + if (report_type == HID_REPORT_TYPE_OUTPUT) { + // Set keyboard LED e.g Capslock, Numlock etc... + if (report_id == REPORT_ID_KEYBOARD) { + // bufsize should be (at least) 1 + if (bufsize < 1) + return; + + uint8_t const kbd_leds = buffer[0]; + + if (kbd_leds & KEYBOARD_LED_CAPSLOCK) { + // Capslock On: disable blink, turn led on + blink_interval_ms = 0; + board_led_write(true); + } else { + // Caplocks Off: back to normal blink + board_led_write(false); + blink_interval_ms = BLINK_MOUNTED; + } + } + } +} + +//--------------------------------------------------------------------+ +// BLINKING TASK +//--------------------------------------------------------------------+ +void led_blinking_task(void) +{ + static uint32_t start_ms = 0; + static bool led_state = false; + + // blink is disabled + if (!blink_interval_ms) + return; + + // Blink every interval ms + if (board_millis() - start_ms < blink_interval_ms) + return; // not enough time + start_ms += blink_interval_ms; + + board_led_write(led_state); + led_state = 1 - led_state; // toggle +} + +//------------------------------------------------------------------------------ +// Wrapper functions to bridge TinyUSB BSP with MSDK BSP +//------------------------------------------------------------------------------ +void board_init(void) +{ + // 1ms tick timer + SysTick_Config(SystemCoreClock / 1000); + + MXC_SYS_ClockSourceEnable(MXC_SYS_CLOCK_IPO); + MXC_MCR->ldoctrl |= MXC_F_MCR_LDOCTRL_0P9EN; + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + MXC_SYS_Reset_Periph(MXC_SYS_RESET0_USB); +} + +void board_led_write(bool state) +{ + if (state) { + LED_On(0); + } else { + LED_Off(0); + } +} + +uint32_t board_button_read(void) +{ + return PB_Get(0); +} + +//--------------------------------------------------------------------+ +// Forward USB interrupt events to TinyUSB IRQ Handler +//--------------------------------------------------------------------+ +void USB_IRQHandler(void) +{ + tud_int_handler(0); +} + +volatile uint32_t system_ticks = 0; + +void SysTick_Handler(void) +{ + system_ticks++; +} + +uint32_t board_millis(void) +{ + return system_ticks; +} diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/project.mk b/Examples/MAX32690/USB/TinyUSB/hid_composite/project.mk new file mode 100644 index 00000000000..c99b1e1e3ea --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/project.mk @@ -0,0 +1,17 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU, set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable TINYUSB library +LIB_TINYUSB=1 +TINYUSB_CONFIG_DIR = ./ diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/tusb_config.h b/Examples/MAX32690/USB/TinyUSB/hid_composite/tusb_config.h new file mode 100644 index 00000000000..f3b8602e2f0 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/tusb_config.h @@ -0,0 +1,107 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#ifndef EXAMPLES_MAX32690_USB_TINYUSB_HID_COMPOSITE_TUSB_CONFIG_H_ +#define EXAMPLES_MAX32690_USB_TINYUSB_HID_COMPOSITE_TUSB_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +//--------------------------------------------------------------------+ +// Board Specific Configuration +//--------------------------------------------------------------------+ + +// RHPort number used for device can be defined by board.mk, default to port 0 +#ifndef BOARD_TUD_RHPORT +#define BOARD_TUD_RHPORT 0 +#endif + +// RHPort max operational speed can defined by board.mk +#ifndef BOARD_TUD_MAX_SPEED +#define BOARD_TUD_MAX_SPEED OPT_MODE_DEFAULT_SPEED +#endif + +//-------------------------------------------------------------------- +// COMMON CONFIGURATION +//-------------------------------------------------------------------- + +// defined by compiler flags for flexibility +#ifndef CFG_TUSB_MCU +#error CFG_TUSB_MCU must be defined +#endif + +#ifndef CFG_TUSB_OS +#define CFG_TUSB_OS OPT_OS_NONE +#endif + +#ifndef CFG_TUSB_DEBUG +#define CFG_TUSB_DEBUG 0 +#endif + +// Enable Device stack +#define CFG_TUD_ENABLED 1 + +// Default is max speed that hardware controller could support with on-chip PHY +#define CFG_TUD_MAX_SPEED BOARD_TUD_MAX_SPEED + +/* USB DMA on some MCUs can only access a specific SRAM region with restriction on alignment. + * Tinyusb use follows macros to declare transferring memory so that they can be put + * into those specific section. + * e.g + * - CFG_TUSB_MEM SECTION : __attribute__ (( section(".usb_ram") )) + * - CFG_TUSB_MEM_ALIGN : __attribute__ ((aligned(4))) + */ +#ifndef CFG_TUSB_MEM_SECTION +#define CFG_TUSB_MEM_SECTION +#endif + +#ifndef CFG_TUSB_MEM_ALIGN +#define CFG_TUSB_MEM_ALIGN __attribute__((aligned(4))) +#endif + +//-------------------------------------------------------------------- +// DEVICE CONFIGURATION +//-------------------------------------------------------------------- + +#ifndef CFG_TUD_ENDPOINT0_SIZE +#define CFG_TUD_ENDPOINT0_SIZE 64 +#endif + +//------------- CLASS -------------// +#define CFG_TUD_HID 1 +#define CFG_TUD_CDC 0 +#define CFG_TUD_MSC 0 +#define CFG_TUD_MIDI 0 +#define CFG_TUD_VENDOR 0 + +// HID buffer size Should be sufficient to hold ID (if any) + Data +#define CFG_TUD_HID_EP_BUFSIZE 16 + +#ifdef __cplusplus +} +#endif + +#endif // EXAMPLES_MAX32690_USB_TINYUSB_HID_COMPOSITE_TUSB_CONFIG_H_ diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/usb_descriptors.c b/Examples/MAX32690/USB/TinyUSB/hid_composite/usb_descriptors.c new file mode 100644 index 00000000000..83793abd40e --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/usb_descriptors.c @@ -0,0 +1,234 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" +#include "usb_descriptors.h" + +/* A combination of interfaces must have a unique product id, since PC will save device driver after the first plug. + * Same VID/PID with different interface e.g MSC (first), then CDC (later) will possibly cause system error on PC. + * + * Auto ProductID layout's Bitmap: + * [MSB] HID | MSC | CDC [LSB] + */ +#define _PID_MAP(itf, n) ((CFG_TUD_##itf) << (n)) +#define USB_PID \ + (0x4000 | _PID_MAP(CDC, 0) | _PID_MAP(MSC, 1) | _PID_MAP(HID, 2) | _PID_MAP(MIDI, 3) | \ + _PID_MAP(VENDOR, 4)) + +#define USB_VID 0xCafe +#define USB_BCD 0x0200 + +//--------------------------------------------------------------------+ +// Device Descriptors +//--------------------------------------------------------------------+ +tusb_desc_device_t const desc_device = { .bLength = sizeof(tusb_desc_device_t), + .bDescriptorType = TUSB_DESC_DEVICE, + .bcdUSB = USB_BCD, + .bDeviceClass = 0x00, + .bDeviceSubClass = 0x00, + .bDeviceProtocol = 0x00, + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + + .idVendor = USB_VID, + .idProduct = USB_PID, + .bcdDevice = 0x0100, + + .iManufacturer = 0x01, + .iProduct = 0x02, + .iSerialNumber = 0x03, + + .bNumConfigurations = 0x01 }; + +// Invoked when received GET DEVICE DESCRIPTOR +// Application return pointer to descriptor +uint8_t const *tud_descriptor_device_cb(void) +{ + return (uint8_t const *)&desc_device; +} + +//--------------------------------------------------------------------+ +// HID Report Descriptor +//--------------------------------------------------------------------+ + +uint8_t const desc_hid_report[] = { TUD_HID_REPORT_DESC_KEYBOARD(HID_REPORT_ID(REPORT_ID_KEYBOARD)), + TUD_HID_REPORT_DESC_MOUSE(HID_REPORT_ID(REPORT_ID_MOUSE)), + TUD_HID_REPORT_DESC_CONSUMER( + HID_REPORT_ID(REPORT_ID_CONSUMER_CONTROL)), + TUD_HID_REPORT_DESC_GAMEPAD(HID_REPORT_ID(REPORT_ID_GAMEPAD)) }; + +// Invoked when received GET HID REPORT DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const *tud_hid_descriptor_report_cb(uint8_t instance) +{ + (void)instance; + return desc_hid_report; +} + +//--------------------------------------------------------------------+ +// Configuration Descriptor +//--------------------------------------------------------------------+ + +enum { ITF_NUM_HID, ITF_NUM_TOTAL }; + +#define CONFIG_TOTAL_LEN (TUD_CONFIG_DESC_LEN + TUD_HID_DESC_LEN) + +#define EPNUM_HID 0x81 + +uint8_t const desc_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, TUSB_DESC_CONFIG_ATT_REMOTE_WAKEUP, + 100), + + // Interface number, string index, protocol, report descriptor len, EP In address, size & polling interval + TUD_HID_DESCRIPTOR(ITF_NUM_HID, 0, HID_ITF_PROTOCOL_NONE, sizeof(desc_hid_report), EPNUM_HID, + CFG_TUD_HID_EP_BUFSIZE, 5) +}; + +#if TUD_OPT_HIGH_SPEED +// Per USB specs: high speed capable device must report device_qualifier and other_speed_configuration + +// other speed configuration +uint8_t desc_other_speed_config[CONFIG_TOTAL_LEN]; + +// device qualifier is mostly similar to device descriptor since we don't change configuration based on speed +tusb_desc_device_qualifier_t const desc_device_qualifier = { + .bLength = sizeof(tusb_desc_device_qualifier_t), + .bDescriptorType = TUSB_DESC_DEVICE_QUALIFIER, + .bcdUSB = USB_BCD, + + .bDeviceClass = 0x00, + .bDeviceSubClass = 0x00, + .bDeviceProtocol = 0x00, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + .bNumConfigurations = 0x01, + .bReserved = 0x00 +}; + +// Invoked when received GET DEVICE QUALIFIER DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete. +// device_qualifier descriptor describes information about a high-speed capable device that would +// change if the device were operating at the other speed. If not highspeed capable stall this request. +uint8_t const *tud_descriptor_device_qualifier_cb(void) +{ + return (uint8_t const *)&desc_device_qualifier; +} + +// Invoked when received GET OTHER SEED CONFIGURATION DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +// Configuration descriptor in the other speed e.g if high speed then this is for full speed and vice versa +uint8_t const *tud_descriptor_other_speed_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + + // other speed config is basically configuration with type = OHER_SPEED_CONFIG + memcpy(desc_other_speed_config, desc_configuration, CONFIG_TOTAL_LEN); + desc_other_speed_config[1] = TUSB_DESC_OTHER_SPEED_CONFIG; + + // this example use the same configuration for both high and full speed mode + return desc_other_speed_config; +} + +#endif // highspeed + +// Invoked when received GET CONFIGURATION DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const *tud_descriptor_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + + // This example use the same configuration for both high and full speed mode + return desc_configuration; +} + +//--------------------------------------------------------------------+ +// String Descriptors +//--------------------------------------------------------------------+ + +// String Descriptor Index +enum { + STRID_LANGID = 0, + STRID_MANUFACTURER, + STRID_PRODUCT, + STRID_SERIAL, +}; + +// array of pointer to string descriptors +char const *string_desc_arr[] = { + (const char[]){ 0x09, 0x04 }, // 0: is supported language is English (0x0409) + "TinyUSB", // 1: Manufacturer + "TinyUSB Device", // 2: Product + NULL, // 3: Serials will use unique ID if possible +}; + +static uint16_t _desc_str[32 + 1]; + +// Invoked when received GET STRING DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +uint16_t const *tud_descriptor_string_cb(uint8_t index, uint16_t langid) +{ + (void)langid; + size_t chr_count; + + switch (index) { + case STRID_LANGID: + memcpy(&_desc_str[1], string_desc_arr[0], 2); + chr_count = 1; + break; + + case STRID_SERIAL: + chr_count = board_usb_get_serial(_desc_str + 1, 32); + break; + + default: + // Note: the 0xEE index string is a Microsoft OS 1.0 Descriptors. + // https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/microsoft-defined-usb-descriptors + + if (!(index < sizeof(string_desc_arr) / sizeof(string_desc_arr[0]))) + return NULL; + + const char *str = string_desc_arr[index]; + + // Cap at max char + chr_count = strlen(str); + size_t const max_count = sizeof(_desc_str) / sizeof(_desc_str[0]) - 1; // -1 for string type + if (chr_count > max_count) + chr_count = max_count; + + // Convert ASCII string into UTF-16 + for (size_t i = 0; i < chr_count; i++) { + _desc_str[1 + i] = str[i]; + } + break; + } + + // first byte is length (including header), second byte is string type + _desc_str[0] = (uint16_t)((TUSB_DESC_STRING << 8) | (2 * chr_count + 2)); + + return _desc_str; +} diff --git a/Examples/MAX32690/USB/TinyUSB/hid_composite/usb_descriptors.h b/Examples/MAX32690/USB/TinyUSB/hid_composite/usb_descriptors.h new file mode 100644 index 00000000000..d5e4fa9fc77 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/hid_composite/usb_descriptors.h @@ -0,0 +1,36 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef EXAMPLES_MAX32690_USB_TINYUSB_HID_COMPOSITE_USB_DESCRIPTORS_H_ +#define EXAMPLES_MAX32690_USB_TINYUSB_HID_COMPOSITE_USB_DESCRIPTORS_H_ + +enum { + REPORT_ID_KEYBOARD = 1, + REPORT_ID_MOUSE, + REPORT_ID_CONSUMER_CONTROL, + REPORT_ID_GAMEPAD, + REPORT_ID_COUNT +}; + +#endif // EXAMPLES_MAX32690_USB_TINYUSB_HID_COMPOSITE_USB_DESCRIPTORS_H_ diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.cproject b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.cproject new file mode 100644 index 00000000000..d08cd87e658 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.cproject @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.project b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.project new file mode 100644 index 00000000000..4c572f75f0f --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.project @@ -0,0 +1,26 @@ + + + msc_dual_lun + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.settings/language.settings.xml b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..a4fa489f3c8 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=msc_dual_lun +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX32690 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/README.md b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/README.md new file mode 100644 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/c_cpp_properties.json b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/flash.gdb b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/launch.json b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/settings.json b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/settings.json new file mode 100644 index 00000000000..a22f5a12050 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/settings.json @@ -0,0 +1,89 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX32690", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max32690.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", + "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", + "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/tasks.json b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/Makefile b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/Makefile new file mode 100644 index 00000000000..83cdb608d37 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX32690 +TARGET_UC := MAX32690 +TARGET_LC := max32690 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -Og + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/README.md b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/README.md new file mode 100644 index 00000000000..724ec5c446a --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/README.md @@ -0,0 +1,47 @@ +## Description + +The example demonstrates the use of USB Mass Storage driver class with TinyUSB. After doing the required connections given below, run the program and two new portable device appears in the device manager. It will appear as a new drives which can be read from. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +tusb_config.h by default has logging disabled via the CFG_TUSB_DEBUG definition. +For TinyUSB console logging, set the debug level to 1, 2, or 3, with a higher value +indicating more verbose logging. + +## Required Connections + +If using the MAX32690EVKIT: +- Connect a USB cable between the PC and the CN2 (USB/PWR/UART) connector. +- Install JP7(RX_EN) and JP8(TX_EN) headers. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. + +If using the MAX32690FTHR: +- Connect a USB cable between the PC and the J5 (USB/PWR) connector. +- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. + +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + +## Expected Output + +By default, the console UART does not output any message. With CFG_TUSB_DEBUG set +to '2', the Console UART of the device will output these messages: + +``` +USBD init on controller 0, Highspeed = 1024 +sizeof(usbd_device_t) = 69 +sizeof(dcd_event_t) = 12 +sizeof(tu_fifo_t) = 12 +sizeof(tu_edpt_stream_t) = 24 +MSC init +``` diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/main.c b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/main.c new file mode 100644 index 00000000000..27b904096f4 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/main.c @@ -0,0 +1,171 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * Copyright (c) 2024 Analog Devices, Inc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include +#include +#include + +#include "bsp/board_api.h" +#include "tusb.h" +#include "led.h" +#include "pb.h" +#include "mxc_device.h" +#include "gcr_regs.h" +#include "mcr_regs.h" +#include "mxc_sys.h" + +//--------------------------------------------------------------------+ +// MACRO CONSTANT TYPEDEF PROTYPES +//--------------------------------------------------------------------+ + +/* Blink pattern + * - 250 ms : device not mounted + * - 1000 ms : device mounted + * - 2500 ms : device is suspended + */ +enum { + BLINK_NOT_MOUNTED = 250, + BLINK_MOUNTED = 1000, + BLINK_SUSPENDED = 2500, +}; + +static uint32_t blink_interval_ms = BLINK_NOT_MOUNTED; + +void led_blinking_task(void); + +/*------------- MAIN -------------*/ +int main(void) +{ + board_init(); + + // init device stack on configured roothub port + tud_init(BOARD_TUD_RHPORT); + + if (board_init_after_tusb) { + board_init_after_tusb(); + } + + while (1) { + tud_task(); // tinyusb device task + led_blinking_task(); + } +} + +//--------------------------------------------------------------------+ +// Device callbacks +//--------------------------------------------------------------------+ + +// Invoked when device is mounted +void tud_mount_cb(void) +{ + blink_interval_ms = BLINK_MOUNTED; +} + +// Invoked when device is unmounted +void tud_umount_cb(void) +{ + blink_interval_ms = BLINK_NOT_MOUNTED; +} + +// Invoked when usb bus is suspended +// remote_wakeup_en : if host allow us to perform remote wakeup +// Within 7ms, device must draw an average of current less than 2.5 mA from bus +void tud_suspend_cb(bool remote_wakeup_en) +{ + (void)remote_wakeup_en; + blink_interval_ms = BLINK_SUSPENDED; +} + +// Invoked when usb bus is resumed +void tud_resume_cb(void) +{ + blink_interval_ms = tud_mounted() ? BLINK_MOUNTED : BLINK_NOT_MOUNTED; +} + +//--------------------------------------------------------------------+ +// BLINKING TASK +//--------------------------------------------------------------------+ +void led_blinking_task(void) +{ + static uint32_t start_ms = 0; + static bool led_state = false; + + // Blink every interval ms + if (board_millis() - start_ms < blink_interval_ms) + return; // not enough time + start_ms += blink_interval_ms; + + board_led_write(led_state); + led_state = 1 - led_state; // toggle +} + +//------------------------------------------------------------------------------ +// Wrapper functions to bridge TinyUSB BSP with MSDK BSP +//------------------------------------------------------------------------------ +void board_init(void) +{ + // 1ms tick timer + SysTick_Config(SystemCoreClock / 1000); + + MXC_SYS_ClockSourceEnable(MXC_SYS_CLOCK_IPO); + MXC_MCR->ldoctrl |= MXC_F_MCR_LDOCTRL_0P9EN; + MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); + MXC_SYS_Reset_Periph(MXC_SYS_RESET0_USB); +} + +void board_led_write(bool state) +{ + if (state) { + LED_On(0); + } else { + LED_Off(0); + } +} + +uint32_t board_button_read(void) +{ + return PB_Get(0); +} + +//--------------------------------------------------------------------+ +// Forward USB interrupt events to TinyUSB IRQ Handler +//--------------------------------------------------------------------+ +void USB_IRQHandler(void) +{ + tud_int_handler(0); +} + +volatile uint32_t system_ticks = 0; + +void SysTick_Handler(void) +{ + system_ticks++; +} + +uint32_t board_millis(void) +{ + return system_ticks; +} diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/msc_disk_dual.c b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/msc_disk_dual.c new file mode 100644 index 00000000000..1045f332e8b --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/msc_disk_dual.c @@ -0,0 +1,354 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +#if CFG_TUD_MSC + +// When button is pressed, LUN1 will be set to not ready to simulate +// medium not present (e.g SD card removed) + +// Some MCU doesn't have enough 8KB SRAM to store the whole disk +// We will use Flash as read-only disk with board that has +// CFG_EXAMPLE_MSC_READONLY defined +#if defined(CFG_EXAMPLE_MSC_READONLY) || defined(CFG_EXAMPLE_MSC_DUAL_READONLY) +#define MSC_CONST const +#else +#define MSC_CONST +#endif + +enum { + DISK_BLOCK_NUM = 16, // 8KB is the smallest size that windows allow to mount + DISK_BLOCK_SIZE = 512 +}; + +//--------------------------------------------------------------------+ +// LUN 0 +//--------------------------------------------------------------------+ +#define README0_CONTENTS \ + "LUN0: This is tinyusb's MassStorage Class demo.\r\n\r\n" \ + "If you find any bugs or get any questions, feel free to file an\r\n" \ + "issue at github.com/hathach/tinyusb" + +MSC_CONST uint8_t msc_disk0[DISK_BLOCK_NUM][DISK_BLOCK_SIZE] = { + //------------- Block0: Boot Sector -------------// + // byte_per_sector = DISK_BLOCK_SIZE; fat12_sector_num_16 = DISK_BLOCK_NUM; + // sector_per_cluster = 1; reserved_sectors = 1; + // fat_num = 1; fat12_root_entry_num = 16; + // sector_per_fat = 1; sector_per_track = 1; head_num = 1; hidden_sectors = 0; + // drive_number = 0x80; media_type = 0xf8; extended_boot_signature = 0x29; + // filesystem_type = "FAT12 "; volume_serial_number = 0x1234; volume_label = "TinyUSB 0 "; + // FAT magic code at offset 510-511 + { 0xEB, 0x3C, 0x90, 0x4D, 0x53, 0x44, 0x4F, 0x53, 0x35, 0x2E, 0x30, 0x00, 0x02, 0x01, 0x01, + 0x00, 0x01, 0x10, 0x00, 0x10, 0x00, 0xF8, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x29, 0x34, 0x12, 0x00, 0x00, 'T', 'i', 'n', + 'y', 'U', 'S', 'B', ' ', '0', ' ', ' ', 0x46, 0x41, 0x54, 0x31, 0x32, 0x20, 0x20, 0x20, 0x00, + 0x00, + + // Zero up to 2 last bytes of FAT magic code + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x55, 0xAA }, + + //------------- Block1: FAT12 Table -------------// + { + 0xF8, 0xFF, 0xFF, 0xFF, + 0x0F // // first 2 entries must be F8FF, third entry is cluster end of readme file + }, + + //------------- Block2: Root Directory -------------// + { + // first entry is volume label + 'T', 'i', 'n', 'y', 'U', 'S', 'B', ' ', '0', ' ', ' ', 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x6D, 0x65, 0x43, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // second entry is readme file + 'R', 'E', 'A', 'D', 'M', 'E', '0', ' ', 'T', 'X', 'T', 0x20, 0x00, 0xC6, 0x52, 0x6D, 0x65, + 0x43, 0x65, 0x43, 0x00, 0x00, 0x88, 0x6D, 0x65, 0x43, 0x02, 0x00, + sizeof(README0_CONTENTS) - 1, 0x00, 0x00, 0x00 // readme's files size (4 Bytes) + }, + + //------------- Block3: Readme Content -------------// + README0_CONTENTS +}; + +//--------------------------------------------------------------------+ +// LUN 1 +//--------------------------------------------------------------------+ +#define README1_CONTENTS \ + "LUN1: This is tinyusb's MassStorage Class demo.\r\n\r\n" \ + "If you find any bugs or get any questions, feel free to file an\r\n" \ + "issue at github.com/hathach/tinyusb" + +MSC_CONST uint8_t msc_disk1[DISK_BLOCK_NUM][DISK_BLOCK_SIZE] = { + //------------- Block0: Boot Sector -------------// + // byte_per_sector = DISK_BLOCK_SIZE; fat12_sector_num_16 = DISK_BLOCK_NUM; + // sector_per_cluster = 1; reserved_sectors = 1; + // fat_num = 1; fat12_root_entry_num = 16; + // sector_per_fat = 1; sector_per_track = 1; head_num = 1; hidden_sectors = 0; + // drive_number = 0x80; media_type = 0xf8; extended_boot_signature = 0x29; + // filesystem_type = "FAT12 "; volume_serial_number = 0x5678; volume_label = "TinyUSB 1 "; + // FAT magic code at offset 510-511 + { 0xEB, 0x3C, 0x90, 0x4D, 0x53, 0x44, 0x4F, 0x53, 0x35, 0x2E, 0x30, 0x00, 0x02, 0x01, 0x01, + 0x00, 0x01, 0x10, 0x00, 0x10, 0x00, 0xF8, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x29, 0x78, 0x56, 0x00, 0x00, 'T', 'i', 'n', + 'y', 'U', 'S', 'B', ' ', '1', ' ', ' ', 0x46, 0x41, 0x54, 0x31, 0x32, 0x20, 0x20, 0x20, 0x00, + 0x00, + + // Zero up to 2 last bytes of FAT magic code + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x55, 0xAA }, + + //------------- Block1: FAT12 Table -------------// + { + 0xF8, 0xFF, 0xFF, 0xFF, + 0x0F // // first 2 entries must be F8FF, third entry is cluster end of readme file + }, + + //------------- Block2: Root Directory -------------// + { + // first entry is volume label + 'T', 'i', 'n', 'y', 'U', 'S', 'B', ' ', '1', ' ', ' ', 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x4F, 0x6D, 0x65, 0x43, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + // second entry is readme file + 'R', 'E', 'A', 'D', 'M', 'E', '1', ' ', 'T', 'X', 'T', 0x20, 0x00, 0xC6, 0x52, 0x6D, 0x65, + 0x43, 0x65, 0x43, 0x00, 0x00, 0x88, 0x6D, 0x65, 0x43, 0x02, 0x00, + sizeof(README1_CONTENTS) - 1, 0x00, 0x00, 0x00 // readme's files size (4 Bytes) + }, + + //------------- Block3: Readme Content -------------// + README1_CONTENTS +}; + +// Invoked to determine max LUN +uint8_t tud_msc_get_maxlun_cb(void) +{ + return 2; // dual LUN +} + +// Invoked when received SCSI_CMD_INQUIRY +// Application fill vendor id, product id and revision with string up to 8, 16, 4 characters respectively +void tud_msc_inquiry_cb(uint8_t lun, uint8_t vendor_id[8], uint8_t product_id[16], + uint8_t product_rev[4]) +{ + (void)lun; // use same ID for both LUNs + + const char vid[] = "TinyUSB"; + const char pid[] = "Mass Storage"; + const char rev[] = "1.0"; + + memcpy(vendor_id, vid, strlen(vid)); + memcpy(product_id, pid, strlen(pid)); + memcpy(product_rev, rev, strlen(rev)); +} + +// Invoked when received Test Unit Ready command. +// return true allowing host to read/write this LUN e.g SD card inserted +bool tud_msc_test_unit_ready_cb(uint8_t lun) +{ + if (lun == 1 && board_button_read()) + return false; + + return true; // RAM disk is always ready +} + +// Invoked when received SCSI_CMD_READ_CAPACITY_10 and SCSI_CMD_READ_FORMAT_CAPACITY to determine the disk size +// Application update block count and block size +void tud_msc_capacity_cb(uint8_t lun, uint32_t *block_count, uint16_t *block_size) +{ + (void)lun; + + *block_count = DISK_BLOCK_NUM; + *block_size = DISK_BLOCK_SIZE; +} + +// Invoked when received Start Stop Unit command +// - Start = 0 : stopped power mode, if load_eject = 1 : unload disk storage +// - Start = 1 : active mode, if load_eject = 1 : load disk storage +bool tud_msc_start_stop_cb(uint8_t lun, uint8_t power_condition, bool start, bool load_eject) +{ + (void)lun; + (void)power_condition; + + if (load_eject) { + if (start) { + // load disk storage + } else { + // unload disk storage + } + } + + return true; +} + +// Callback invoked when received READ10 command. +// Copy disk's data to buffer (up to bufsize) and return number of copied bytes. +int32_t tud_msc_read10_cb(uint8_t lun, uint32_t lba, uint32_t offset, void *buffer, + uint32_t bufsize) +{ + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + + uint8_t const *addr = (lun ? msc_disk1[lba] : msc_disk0[lba]) + offset; + memcpy(buffer, addr, bufsize); + + return (int32_t)bufsize; +} + +bool tud_msc_is_writable_cb(uint8_t lun) +{ + (void)lun; + +#if defined(CFG_EXAMPLE_MSC_READONLY) || defined(CFG_EXAMPLE_MSC_DUAL_READONLY) + return false; +#else + return true; +#endif +} + +// Callback invoked when received WRITE10 command. +// Process data in buffer to disk's storage and return number of written bytes +int32_t tud_msc_write10_cb(uint8_t lun, uint32_t lba, uint32_t offset, uint8_t *buffer, + uint32_t bufsize) +{ + // out of ramdisk + if (lba >= DISK_BLOCK_NUM) + return -1; + +#if defined(CFG_EXAMPLE_MSC_READONLY) || defined(CFG_EXAMPLE_MSC_DUAL_READONLY) + (void)lun; + (void)lba; + (void)offset; + (void)buffer; +#else + uint8_t *addr = (lun ? msc_disk1[lba] : msc_disk0[lba]) + offset; + memcpy(addr, buffer, bufsize); +#endif + + return (int32_t)bufsize; +} + +// Callback invoked when received an SCSI command not in built-in list below +// - READ_CAPACITY10, READ_FORMAT_CAPACITY, INQUIRY, MODE_SENSE6, REQUEST_SENSE +// - READ10 and WRITE10 has their own callbacks (MUST not be handled here) +int32_t tud_msc_scsi_cb(uint8_t lun, uint8_t const scsi_cmd[16], void *buffer, uint16_t bufsize) +{ + void const *response = NULL; + int32_t resplen = 0; + + // most scsi handled is input + bool in_xfer = true; + + switch (scsi_cmd[0]) { + default: + // Set Sense = Invalid Command Operation + tud_msc_set_sense(lun, SCSI_SENSE_ILLEGAL_REQUEST, 0x20, 0x00); + + // negative means error -> tinyusb could stall and/or response with failed status + return -1; + } + + // return resplen must not larger than bufsize + if (resplen > bufsize) + resplen = bufsize; + + if (response && (resplen > 0)) { + if (in_xfer) { + memcpy(buffer, response, (size_t)resplen); + } else { + // SCSI output + } + } + + return resplen; +} + +#endif diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/msc_dual_lun.launch b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/msc_dual_lun.launch new file mode 100644 index 00000000000..4400dbad9c7 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/msc_dual_lun.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/project.mk b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/project.mk new file mode 100644 index 00000000000..c99b1e1e3ea --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/project.mk @@ -0,0 +1,17 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +# ********************************************************** + +# If you have secure version of MCU, set SBT=1 to generate signed binary +# For more information on how sing process works, see +# https://www.analog.com/en/education/education-library/videos/6313214207112.html +SBT=0 + +# Enable TINYUSB library +LIB_TINYUSB=1 +TINYUSB_CONFIG_DIR = ./ diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/tusb_config.h b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/tusb_config.h new file mode 100644 index 00000000000..85ad34d8903 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/tusb_config.h @@ -0,0 +1,107 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#ifndef EXAMPLES_MAX32690_USB_TINYUSB_MSC_DUAL_LUN_TUSB_CONFIG_H_ +#define EXAMPLES_MAX32690_USB_TINYUSB_MSC_DUAL_LUN_TUSB_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +//--------------------------------------------------------------------+ +// Board Specific Configuration +//--------------------------------------------------------------------+ + +// RHPort number used for device can be defined by board.mk, default to port 0 +#ifndef BOARD_TUD_RHPORT +#define BOARD_TUD_RHPORT 0 +#endif + +// RHPort max operational speed can defined by board.mk +#ifndef BOARD_TUD_MAX_SPEED +#define BOARD_TUD_MAX_SPEED OPT_MODE_DEFAULT_SPEED +#endif + +//-------------------------------------------------------------------- +// COMMON CONFIGURATION +//-------------------------------------------------------------------- + +// defined by compiler flags for flexibility +#ifndef CFG_TUSB_MCU +#error CFG_TUSB_MCU must be defined +#endif + +#ifndef CFG_TUSB_OS +#define CFG_TUSB_OS OPT_OS_NONE +#endif + +#ifndef CFG_TUSB_DEBUG +#define CFG_TUSB_DEBUG 0 +#endif + +// Enable Device stack +#define CFG_TUD_ENABLED 1 + +// Default is max speed that hardware controller could support with on-chip PHY +#define CFG_TUD_MAX_SPEED BOARD_TUD_MAX_SPEED + +/* USB DMA on some MCUs can only access a specific SRAM region with restriction on alignment. + * Tinyusb use follows macros to declare transferring memory so that they can be put + * into those specific section. + * e.g + * - CFG_TUSB_MEM SECTION : __attribute__ (( section(".usb_ram") )) + * - CFG_TUSB_MEM_ALIGN : __attribute__ ((aligned(4))) + */ +#ifndef CFG_TUSB_MEM_SECTION +#define CFG_TUSB_MEM_SECTION +#endif + +#ifndef CFG_TUSB_MEM_ALIGN +#define CFG_TUSB_MEM_ALIGN __attribute__((aligned(4))) +#endif + +//-------------------------------------------------------------------- +// DEVICE CONFIGURATION +//-------------------------------------------------------------------- + +#ifndef CFG_TUD_ENDPOINT0_SIZE +#define CFG_TUD_ENDPOINT0_SIZE 64 +#endif + +//------------- CLASS -------------// +#define CFG_TUD_CDC 0 +#define CFG_TUD_MSC 1 +#define CFG_TUD_HID 0 +#define CFG_TUD_MIDI 0 +#define CFG_TUD_VENDOR 0 + +// MSC Buffer size of Device Mass storage +#define CFG_TUD_MSC_EP_BUFSIZE 512 + +#ifdef __cplusplus +} +#endif + +#endif // EXAMPLES_MAX32690_USB_TINYUSB_MSC_DUAL_LUN_TUSB_CONFIG_H_ diff --git a/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/usb_descriptors.c b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/usb_descriptors.c new file mode 100644 index 00000000000..0c6bfd7fa64 --- /dev/null +++ b/Examples/MAX32690/USB/TinyUSB/msc_dual_lun/usb_descriptors.c @@ -0,0 +1,206 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "bsp/board_api.h" +#include "tusb.h" + +/* A combination of interfaces must have a unique product id, since PC will save device driver after the first plug. + * Same VID/PID with different interface e.g MSC (first), then CDC (later) will possibly cause system error on PC. + * + * Auto ProductID layout's Bitmap: + * [MSB] HID | MSC | CDC [LSB] + */ +#define _PID_MAP(itf, n) ((CFG_TUD_##itf) << (n)) +#define USB_PID \ + (0x4000 | _PID_MAP(CDC, 0) | _PID_MAP(MSC, 1) | _PID_MAP(HID, 2) | _PID_MAP(MIDI, 3) | \ + _PID_MAP(VENDOR, 4)) + +//--------------------------------------------------------------------+ +// Device Descriptors +//--------------------------------------------------------------------+ +tusb_desc_device_t const desc_device = { .bLength = sizeof(tusb_desc_device_t), + .bDescriptorType = TUSB_DESC_DEVICE, + .bcdUSB = 0x0200, + .bDeviceClass = 0x00, + .bDeviceSubClass = 0x00, + .bDeviceProtocol = 0x00, + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + + .idVendor = 0xCafe, + .idProduct = USB_PID, + .bcdDevice = 0x0100, + + .iManufacturer = 0x01, + .iProduct = 0x02, + .iSerialNumber = 0x03, + + .bNumConfigurations = 0x01 }; + +// Invoked when received GET DEVICE DESCRIPTOR +// Application return pointer to descriptor +uint8_t const *tud_descriptor_device_cb(void) +{ + return (uint8_t const *)&desc_device; +} + +//--------------------------------------------------------------------+ +// Configuration Descriptor +//--------------------------------------------------------------------+ + +enum { ITF_NUM_MSC, ITF_NUM_TOTAL }; + +#define CONFIG_TOTAL_LEN (TUD_CONFIG_DESC_LEN + TUD_MSC_DESC_LEN) + +#if CFG_TUSB_MCU == OPT_MCU_LPC175X_6X || CFG_TUSB_MCU == OPT_MCU_LPC177X_8X || \ + CFG_TUSB_MCU == OPT_MCU_LPC40XX +// LPC 17xx and 40xx endpoint type (bulk/interrupt/iso) are fixed by its number +// 0 control, 1 In, 2 Bulk, 3 Iso, 4 In, 5 Bulk etc ... +#define EPNUM_MSC_OUT 0x02 +#define EPNUM_MSC_IN 0x82 + +#elif CFG_TUSB_MCU == OPT_MCU_SAMG +// SAMG doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_MSC_OUT 0x01 +#define EPNUM_MSC_IN 0x82 + +#elif CFG_TUSB_MCU == OPT_MCU_FT90X || CFG_TUSB_MCU == OPT_MCU_FT93X +// FT9XX doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_MSC_OUT 0x01 +#define EPNUM_MSC_IN 0x82 + +#elif CFG_TUSB_MCU == OPT_MCU_MAX32690 || CFG_TUSB_MCU == OPT_MCU_MAX32650 || \ + CFG_TUSB_MCU == OPT_MCU_MAX32666 || CFG_TUSB_MCU == OPT_MCU_MAX78002 +// MAX32 doesn't support a same endpoint number with different direction IN and OUT +// e.g EP1 OUT & EP1 IN cannot exist together +#define EPNUM_MSC_OUT 0x01 +#define EPNUM_MSC_IN 0x82 + +#else +#define EPNUM_MSC_OUT 0x01 +#define EPNUM_MSC_IN 0x81 + +#endif + +uint8_t const desc_fs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 0, EPNUM_MSC_OUT, EPNUM_MSC_IN, 64), +}; + +#if TUD_OPT_HIGH_SPEED +uint8_t const desc_hs_configuration[] = { + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, EP Out & EP In address, EP size + TUD_MSC_DESCRIPTOR(ITF_NUM_MSC, 0, EPNUM_MSC_OUT, EPNUM_MSC_IN, 512), +}; +#endif + +// Invoked when received GET CONFIGURATION DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const *tud_descriptor_configuration_cb(uint8_t index) +{ + (void)index; // for multiple configurations + +#if TUD_OPT_HIGH_SPEED + // Although we are highspeed, host may be fullspeed. + return (tud_speed_get() == TUSB_SPEED_HIGH) ? desc_hs_configuration : desc_fs_configuration; +#else + return desc_fs_configuration; +#endif +} + +//--------------------------------------------------------------------+ +// String Descriptors +//--------------------------------------------------------------------+ + +// String Descriptor Index +enum { + STRID_LANGID = 0, + STRID_MANUFACTURER, + STRID_PRODUCT, + STRID_SERIAL, +}; + +// array of pointer to string descriptors +char const *string_desc_arr[] = { + (const char[]){ 0x09, 0x04 }, // 0: is supported language is English (0x0409) + "TinyUSB", // 1: Manufacturer + "TinyUSB Device", // 2: Product + NULL, // 3: Serials will use unique ID if possible +}; + +static uint16_t _desc_str[32 + 1]; + +// Invoked when received GET STRING DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +uint16_t const *tud_descriptor_string_cb(uint8_t index, uint16_t langid) +{ + (void)langid; + size_t chr_count; + + switch (index) { + case STRID_LANGID: + memcpy(&_desc_str[1], string_desc_arr[0], 2); + chr_count = 1; + break; + + case STRID_SERIAL: + chr_count = board_usb_get_serial(_desc_str + 1, 32); + break; + + default: + // Note: the 0xEE index string is a Microsoft OS 1.0 Descriptors. + // https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/microsoft-defined-usb-descriptors + + if (!(index < sizeof(string_desc_arr) / sizeof(string_desc_arr[0]))) + return NULL; + + const char *str = string_desc_arr[index]; + + // Cap at max char + chr_count = strlen(str); + size_t const max_count = sizeof(_desc_str) / sizeof(_desc_str[0]) - 1; // -1 for string type + if (chr_count > max_count) + chr_count = max_count; + + // Convert ASCII string into UTF-16 + for (size_t i = 0; i < chr_count; i++) { + _desc_str[1 + i] = str[i]; + } + break; + } + + // first byte is length (including header), second byte is string type + _desc_str[0] = (uint16_t)((TUSB_DESC_STRING << 8) | (2 * chr_count + 2)); + + return _desc_str; +} diff --git a/Examples/MAX32690/USB/USB_CDCACM/.vscode/README.md b/Examples/MAX32690/USB/USB_CDCACM/.vscode/README.md deleted file mode 100755 index 90fbcefc65d..00000000000 --- a/Examples/MAX32690/USB/USB_CDCACM/.vscode/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# VSCode-Maxim - -_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ - -## Quick Links - -* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) - -## Introduction - -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). - -The following features are supported: - -* Code editing with intellisense down to the register level -* Code compilation with the ability to easily re-target a project for different microcontrollers and boards -* Flashing programs -* GUI and command-line debugging - -## Dependencies - -* [Visual Studio Code](https://code.visualstudio.com/) - * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) -* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) - -## Installation - -Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. - -See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. - -## Usage - -See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. - -## Issue Tracker - -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. - -New issues should contain _at minimum_ the following information: - -* Visual Studio Code version #s (see `Help -> About`) -* C/C++ Extension version # -* Target microcontroller and evaluation platform -* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/USB_CDCACM/.vscode/settings.json b/Examples/MAX32690/USB/USB_CDCACM/.vscode/settings.json deleted file mode 100755 index 0d29e091c62..00000000000 --- a/Examples/MAX32690/USB/USB_CDCACM/.vscode/settings.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32690", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32690.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32690/USB/USB_CDCACM/Makefile b/Examples/MAX32690/USB/USB_CDCACM/Makefile deleted file mode 100644 index 082a6783d23..00000000000 --- a/Examples/MAX32690/USB/USB_CDCACM/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32690 -TARGET_UC := MAX32690 -TARGET_LC := max32690 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32690/USB/USB_CDCACM/README.md b/Examples/MAX32690/USB/USB_CDCACM/README.md deleted file mode 100644 index 3299c143912..00000000000 --- a/Examples/MAX32690/USB/USB_CDCACM/README.md +++ /dev/null @@ -1,39 +0,0 @@ -## Description - -The example demonstartes the use of USB CDC-ACM driver class. After doing the required connections given below, run the program and a new serial terminal (COM port) appears in the device manager. Open a terminal application on the PC at 9600 baud rate, and echo the characters on the terminal. - -## Software - -### Project Usage - -Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. - -### Project-Specific Build Notes - -(None - this project builds as a standard example) - -## Required Connections - -If using the MAX32690EVKIT: -- Connect a USB cable between the PC and the CN2 (USB/PWR/UART) connector. -- Install JP7(RX_EN) and JP8(TX_EN) headers. -- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. -- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. - -If using the MAX32690FTHR: -- Connect a USB cable between the PC and the J5 (USB/PWR) connector. -- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - -## Expected Output - -The Console UART of the device will output these messages: - -``` -***** MAX32690 USB CDC-ACM Example ***** -Waiting for VBUS... -VBUS Connect -Suspended -Bus Reset -Bus Reset Done: High speed -Enumeration complete... -``` diff --git a/Examples/MAX32690/USB/USB_CDCACM/descriptors.h b/Examples/MAX32690/USB/USB_CDCACM/descriptors.h deleted file mode 100644 index 2a9df9eda10..00000000000 --- a/Examples/MAX32690/USB/USB_CDCACM/descriptors.h +++ /dev/null @@ -1,329 +0,0 @@ -/** - * @file descriptors.h - * @brief descriptors listed here - */ - -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/* Define to prevent redundant inclusion */ -#ifndef EXAMPLES_MAX32690_USB_USB_CDCACM_DESCRIPTORS_H_ -#define EXAMPLES_MAX32690_USB_USB_CDCACM_DESCRIPTORS_H_ - -/* **** Includes **** */ -#include -#include "usb.h" -#include "hid_kbd.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* **** Definitions **** */ - -MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { - 0x12, /* bLength = 18 */ - 0x01, /* bDescriptorType = Device */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x02, /* bDeviceClass = comm class (2) */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x0B6A, /* idVendor (Maxim Integrated) */ - 0x003C, /* idProduct */ - 0x0100, /* bcdDevice */ - 0x01, /* iManufacturer Descriptor ID */ - 0x02, /* iProduct Descriptor ID */ - 0x00, /* iSerialNumber = (0) No string */ - 0x01 /* bNumConfigurations */ -}; - -/* Device qualifier needed for high-speed operation */ -MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) device_qualifier_descriptor = { - 0x0A, /* bLength = 10 */ - 0x06, /* bDescriptorType = Device Qualifier */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x02, /* bDeviceClass = Unspecified */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x01, /* bNumConfigurations */ - 0x00 /* Reserved, must be 0 */ -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #1 CDCACM Device */ - MXC_USB_interface_descriptor_t comm_interface_descriptor; - uint8_t header_functional_descriptor[5]; - uint8_t call_management_descriptor[5]; - uint8_t acm_functional_descriptor[4]; - uint8_t union_functional_descriptor[5]; - /* Interface #2 CDC Data*/ - MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; - MXC_USB_interface_descriptor_t data_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; -} - -config_descriptor = { - { - 0x09, /* bLength = 9 */ - 0x02, /* bDescriptorType = Config (2) */ - 0x0043, /* wTotalLength(L/H) */ - 0x02, /* bNumInterfaces */ - 0x01, /* bConfigValue */ - 0x02, /* iConfiguration */ - 0xE0, /* bmAttributes (self-powered, remote wakeup) */ - 0x01, /* MaxPower is 2ma (units are 2ma/bit) */ - }, - /********** Interface #1 : COMM Interface **********/ - { - /* First Interface Descriptor For Comm Class Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x02, /* bInterfaceClass = Communications Interface Class (2) */ - 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ - 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ - 0x04, /* iInterface */ - }, - { - /* Header Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x00, /* bDescriptorSubtype */ - 0x10, 0x01, /* bcdCDC */ - }, - { - /* Call Management Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x01, /* bDescriptorSubtype */ - 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ - 0x01, /* bmDataInterface */ - }, - { - /* Abstract Control Management Functional Descriptor */ - 0x04, /* bFunctionalLength = 4 */ - 0x24, /* bDescriptorType */ - 0x02, /* bDescriptorSubtype */ - 0x02, /* bmCapabilities */ - }, - { - /* Union Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x06, /* bDescriptorSubtype */ - 0x00, /* bmMasterInterface */ - 0x01, /* bmSlaveInterface0 */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x84, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0040, /* wMaxPacketSize */ - 0xff, /* bInterval (milliseconds) */ - }, - { - /* Second Interface Descriptor For Data Interface */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType (Interface) */ - 0x01, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints */ - 0x0a, /* bInterfaceClass = Data Interface (10) */ - 0x00, /* bInterfaceSubClass = none (0) */ - 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ - 0x04, /* biInterface = No Text String (0) */ - }, - { - /* OUT Endpoint 1 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x05, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #3) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00 /* bInterval (N/A) */ - } -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #1 CDCACM Device */ - MXC_USB_interface_descriptor_t comm_interface_descriptor; - uint8_t header_functional_descriptor[5]; - uint8_t call_management_descriptor[5]; - uint8_t acm_functional_descriptor[4]; - uint8_t union_functional_descriptor[5]; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; - /* Interface #2 CDCACM Data */ - MXC_USB_interface_descriptor_t data_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; -} - -config_descriptor_hs = { - { - 0x09, /* bLength */ - 0x02, /* bDescriptorType = Config */ - 0x0043, /* wTotalLength(L/H) */ - 0x02, /* bNumInterfaces */ - 0x01, /* bConfigurationValue */ - 0x02, /* iConfiguration */ - 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - /********** Interface #1 : COMM Interface **********/ - { - /* First Interface Descriptor For Comm Class Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x02, /* bInterfaceClass = Communications Interface Class (2) */ - 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ - 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ - 0x04, /* iInterface */ - }, - { - /* Header Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x00, /* bDescriptorSubtype */ - 0x10, 0x01, /* bcdCDC */ - }, - { - /* Call Management Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x01, /* bDescriptorSubtype */ - 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ - 0x01, /* bmDataInterface */ - }, - { - /* Abstract Control Management Functional Descriptor */ - 0x04, /* bFunctionalLength = 4 */ - 0x24, /* bDescriptorType */ - 0x02, /* bDescriptorSubtype */ - 0x02, /* bmCapabilities */ - }, - { - /* Union Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x06, /* bDescriptorSubtype */ - 0x00, /* bmMasterInterface */ - 0x01, /* bmSlaveInterface0 */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x84, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0200, /* wMaxPacketSize */ - 0xff, /* bInterval (milliseconds) */ - }, - { - /* Second Interface Descriptor For Data Interface */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType (Interface) */ - 0x01, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints */ - 0x0a, /* bInterfaceClass = Data Interface (10) */ - 0x00, /* bInterfaceSubClass = none (0) */ - 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ - 0x04, /* biInterface = No Text String (0) */ - }, - { - /* OUT Endpoint 1 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x05, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #3) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, -}; - -__attribute__((aligned(4))) uint8_t lang_id_desc[] = { - 0x04, /* bLength */ - 0x03, /* bDescriptorType */ - 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ -}; - -__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, - 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t prod_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', 0, - ' ', 0, 'C', 0, 'D', 0, 'C', 0, '-', 0, 'A', 0, 'C', 0, 'M', 0, -}; - -/* Not currently used (see device descriptor), but could be enabled if desired */ -__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ - 0x03, /* bDescriptorType */ - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, - '0', 0, '0', 0, '0', 0, '1', 0 }; - -__attribute__((aligned(4))) uint8_t cdcacm_func_desc[] = { - 0x20, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', - 0, ' ', 0, 'C', 0, 'D', 0, 'C', 0, 'A', 0, 'C', 0, 'M', 0, -}; - -#ifdef __cplusplus -} -#endif - -#endif // EXAMPLES_MAX32690_USB_USB_CDCACM_DESCRIPTORS_H_ diff --git a/Examples/MAX32690/USB/USB_CDCACM/main.c b/Examples/MAX32690/USB/USB_CDCACM/main.c deleted file mode 100644 index f37651e483b..00000000000 --- a/Examples/MAX32690/USB/USB_CDCACM/main.c +++ /dev/null @@ -1,399 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file - * @brief USB CDC-ACM example - * @details This project creates a virtual COM port, which loops back data sent to it. - * Load the project, connect a cable from the PC to the USB connector - * on the Evaluation Kit, and observe that the PC now recognizes a new COM port. - * A driver for the COM port, if needed, is located in the Driver/ subdirectory. - * - */ - -/* **** Includes **** */ -#include -#include -#include "mxc_errors.h" -#include "mcr_regs.h" -#include "mxc_sys.h" -#include "mxc_delay.h" -#include "board.h" -#include "led.h" -#include "usb.h" -#include "usb_event.h" -#include "enumerate.h" -#include "cdc_acm.h" -#include "descriptors.h" - -/* **** Definitions **** */ -#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS -#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) - -#define BUFFER_SIZE 64 - -#define STRINGIFY(x) #x -#define TOSTRING(x) STRINGIFY(x) - -/* **** Global Data **** */ -volatile int configured; -volatile int suspended; -volatile unsigned int event_flags; -int remote_wake_en; - -/* **** Function Prototypes **** */ -static int setconfig_callback(MXC_USB_SetupPkt *sud, void *cbdata); -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int event_callback(maxusb_event_t evt, void *data); -static void usbAppSleep(void); -static void usbAppWakeup(void); -static int usb_read_callback(void); -static void echo_usb(void); -int usbStartupCallback(); -int usbShutdownCallback(); - -/* **** File Scope Variables **** */ - -/* This EP assignment must match the Configuration Descriptor */ -static acm_cfg_t acm_cfg = { - 2, /* EP OUT */ - MXC_USBHS_MAX_PACKET, /* OUT max packet size */ - 3, /* EP IN */ - MXC_USBHS_MAX_PACKET, /* IN max packet size */ - 4, /* EP Notify */ - MXC_USBHS_MAX_PACKET, /* Notify max packet size */ -}; - -static volatile int usb_read_complete; - -/* User-supplied function to delay usec micro-seconds */ -void delay_us(unsigned int usec) -{ - /* mxc_delay() takes unsigned long, so can't use it directly */ - MXC_Delay(usec); -} - -/* ************************************************************************** */ -int main(void) -{ - maxusb_cfg_options_t usb_opts; - - printf("\n\n***** " TOSTRING(TARGET) " USB CDC-ACM Example *****\n"); - printf("Waiting for VBUS...\n"); - - /* Initialize state */ - configured = 0; - suspended = 0; - event_flags = 0; - remote_wake_en = 0; - - /* Start out in full speed */ - usb_opts.enable_hs = 1; - usb_opts.delay_us = delay_us; /* Function which will be used for delays */ - usb_opts.init_callback = usbStartupCallback; - usb_opts.shutdown_callback = usbShutdownCallback; - - /* Initialize the usb module */ - if (MXC_USB_Init(&usb_opts) != 0) { - printf("usb_init() failed\n"); - while (1) {} - } - - /* Initialize the enumeration module */ - if (enum_init() != 0) { - printf("enum_init() failed\n"); - while (1) {} - } - - /* Register enumeration data */ - enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); - - if (usb_opts.enable_hs) { - /* Two additional descriptors needed for high-speed operation */ - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); - enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&device_qualifier_descriptor, 0); - } - - enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); - enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); - enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); - enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); - enum_register_descriptor(ENUM_DESC_STRING, cdcacm_func_desc, 4); - - /* Handle configuration */ - enum_register_callback(ENUM_SETCONFIG, setconfig_callback, NULL); - - /* Handle feature set/clear */ - enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); - enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); - - /* Initialize the class driver */ - if (acm_init(&config_descriptor.comm_interface_descriptor) != 0) { - printf("acm_init() failed\n"); - while (1) {} - } - - /* Register callbacks */ - MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, event_callback, NULL); - MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, event_callback, NULL); - acm_register_callback(ACM_CB_READ_READY, usb_read_callback); - - usb_read_complete = 0; - - /* Start with USB in low power mode */ - usbAppSleep(); - NVIC_EnableIRQ(USB_IRQn); - - /* Wait for events */ - while (1) { - echo_usb(); - - if (suspended || !configured) { - LED_Off(0); - } else { - LED_On(0); - } - - if (event_flags) { - /* Display events */ - if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); - printf("VBUS Disconnect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); - printf("VBUS Connect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); - printf("Bus Reset\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { /// - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); - printf("Bus Reset Done: %s speed\n", - (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); - printf("Suspended\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); - printf("Resume\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { - MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); - printf("Enumeration complete...\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { - MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); - printf("Remote Wakeup\n"); - } - } - } -} - -/* ************************************************************************** */ -static void echo_usb(void) -{ - int chars; - uint8_t buffer[BUFFER_SIZE]; - - if ((chars = acm_canread()) > 0) { - if (chars > BUFFER_SIZE) { - chars = BUFFER_SIZE; - } - - /* Read the data from USB */ - if (acm_read(buffer, chars) != chars) { - printf("acm_read() failed\n"); - return; - } - - /* Echo it back */ - if (acm_present()) { - if (acm_write(buffer, chars) != chars) { - printf("acm_write() failed\n"); - } - } - } -} - -/******************************************************************************/ -int usbStartupCallback() -{ - MXC_SYS_ClockSourceEnable(MXC_SYS_CLOCK_IPO); - MXC_MCR->ldoctrl |= MXC_F_MCR_LDOCTRL_0P9EN; - MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); - MXC_SYS_Reset_Periph(MXC_SYS_RESET0_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -int usbShutdownCallback() -{ - //return MXC_SYS_USBHS_Shutdown(); - MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/* ************************************************************************** */ -static int setconfig_callback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - /* Confirm the configuration value */ - if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { - configured = 1; - MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); - - acm_cfg.out_ep = config_descriptor.endpoint_descriptor_4.bEndpointAddress & 0x7; - acm_cfg.out_maxpacket = config_descriptor.endpoint_descriptor_4.wMaxPacketSize; - acm_cfg.in_ep = config_descriptor.endpoint_descriptor_5.bEndpointAddress & 0x7; - acm_cfg.in_maxpacket = config_descriptor.endpoint_descriptor_5.wMaxPacketSize; - acm_cfg.notify_ep = config_descriptor.endpoint_descriptor_3.bEndpointAddress & 0x7; - acm_cfg.notify_maxpacket = config_descriptor.endpoint_descriptor_3.wMaxPacketSize; - - return acm_configure(&acm_cfg); /* Configure the device class */ - } else if (sud->wValue == 0) { - configured = 0; - return acm_deconfigure(); - } - - return -1; -} - -/* ************************************************************************** */ -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 1; - } else { - /* Unknown callback */ - return -1; - } - - return 0; -} - -/* ************************************************************************** */ -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 0; - } else { - /* Unknown callback */ - return -1; - } - - return 0; -} - -/* ************************************************************************** */ -static void usbAppSleep(void) -{ - suspended = 1; -} - -/* ************************************************************************** */ -static void usbAppWakeup(void) -{ - suspended = 0; -} - -/* ************************************************************************** */ -static int event_callback(maxusb_event_t evt, void *data) -{ - /* Set event flag */ - MXC_SETBIT(&event_flags, evt); - - switch (evt) { - case MAXUSB_EVENT_NOVBUS: - MXC_USB_EventDisable(MAXUSB_EVENT_BRST); - MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); - MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); - MXC_USB_Disconnect(); - configured = 0; - enum_clearconfig(); - acm_deconfigure(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_VBUS: - MXC_USB_EventClear(MAXUSB_EVENT_BRST); - MXC_USB_EventEnable(MAXUSB_EVENT_BRST, event_callback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); /// - MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, event_callback, NULL); /// - MXC_USB_EventClear(MAXUSB_EVENT_SUSP); - MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, event_callback, NULL); - MXC_USB_Connect(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_BRST: - usbAppWakeup(); - enum_clearconfig(); - acm_deconfigure(); - configured = 0; - suspended = 0; - break; - - case MAXUSB_EVENT_BRSTDN: /// - if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor_hs, 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor, 0); - } else { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); - } - break; - - case MAXUSB_EVENT_SUSP: - usbAppSleep(); - break; - - case MAXUSB_EVENT_DPACT: - usbAppWakeup(); - break; - - default: - break; - } - - return 0; -} - -/* ************************************************************************** */ - -static int usb_read_callback(void) -{ - usb_read_complete = 1; - return 0; -} - -/* ************************************************************************** */ - -void USB_IRQHandler(void) -{ - MXC_USB_EventHandler(); -} - -/* ************************************************************************** */ - -void SysTick_Handler(void) -{ - MXC_DelayHandler(); -} diff --git a/Examples/MAX32690/USB/USB_CDCACM/project.mk b/Examples/MAX32690/USB/USB_CDCACM/project.mk deleted file mode 100644 index 582957930d9..00000000000 --- a/Examples/MAX32690/USB/USB_CDCACM/project.mk +++ /dev/null @@ -1,16 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -# ********************************************************** - -# If you have secure version of MCU, set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable MAXUSB library -LIB_MAXUSB = 1 diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.vscode/README.md b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.vscode/README.md deleted file mode 100755 index 90fbcefc65d..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.vscode/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# VSCode-Maxim - -_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ - -## Quick Links - -* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) - -## Introduction - -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). - -The following features are supported: - -* Code editing with intellisense down to the register level -* Code compilation with the ability to easily re-target a project for different microcontrollers and boards -* Flashing programs -* GUI and command-line debugging - -## Dependencies - -* [Visual Studio Code](https://code.visualstudio.com/) - * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) -* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) - -## Installation - -Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. - -See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. - -## Usage - -See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. - -## Issue Tracker - -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. - -New issues should contain _at minimum_ the following information: - -* Visual Studio Code version #s (see `Help -> About`) -* C/C++ Extension version # -* Target microcontroller and evaluation platform -* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json deleted file mode 100755 index 0d29e091c62..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/.vscode/settings.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32690", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32690.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/Makefile b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/Makefile deleted file mode 100644 index 082a6783d23..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32690 -TARGET_UC := MAX32690 -TARGET_LC := max32690 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/README.md b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/README.md deleted file mode 100644 index df473d269ca..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/README.md +++ /dev/null @@ -1,39 +0,0 @@ -## Description - -The example demonstartes the use of USB composite device with Mass Storage driver class and CDC-SCM driver class. After doing the required connections given below, run the program and two new devices appear in the device manager, a Portable device and COM Port. The portable device can be read and written to. Open a terminal application on the PC at 115200 baud rate, and echo the characters on the terminal. - -## Software - -### Project Usage - -Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. - -### Project-Specific Build Notes - -(None - this project builds as a standard example) - -## Required Connections - -If using the MAX32690EVKIT: -- Connect a USB cable between the PC and the CN2 (USB/PWR/UART) connector. -- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. -- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. -- Default EV kit hardware configuration. - -If using the MAX32690FTHR: -- Connect a USB cable between the PC and the J5 (USB/PWR) connector. -- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - -## Expected Output - -The Console UART of the device will output these messages: - -``` -****** USB Composite Device (CDCACM and Mass Storage) Example ****** -Waiting for VBUS... -VBUS Connect -Suspended -Bus Reset -Bus Reset Done: High speed -Enumeration complete... -``` diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/descriptors.h b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/descriptors.h deleted file mode 100644 index 229d1ff99a6..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/descriptors.h +++ /dev/null @@ -1,444 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -#ifndef EXAMPLES_MAX32690_USB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ -#define EXAMPLES_MAX32690_USB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ - -#include -#include "usb.h" -#include "hid_kbd.h" - -MXC_USB_device_descriptor_t __attribute__((aligned(4))) composite_device_descriptor = { - 0x12, /* bLength */ - 0x01, /* bDescriptorType = Device */ - 0x0200, - /* bcdUSB USB spec rev (BCD) */ /// - 0xEF, /* bDeviceClass = code specified by interface descriptors */ - 0x02, /* bDeviceSubClass = code specified by interface descriptors */ - 0x01, /* bDeviceProtocol = code specified by interface descriptors */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x0B6A, /* idVendor (Maxim Integrated) */ - 0x003C, - /* idProduct */ /// - 0x0100, /* bcdDevice */ - 0x01, /* iManufacturer Descriptor ID */ - 0x02, /* iProduct Descriptor ID */ - 0x00, /* iSerialNumber Descriptor ID */ - 0x01 /* bNumConfigurations */ -}; - -/* Device qualifier needed for high-speed operation */ -MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) -composite_device_qualifier_descriptor = { - 0x0A, /* bLength = 10 */ - 0x06, /* bDescriptorType = Device Qualifier */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0xEF, /* bDeviceClass = Unspecified */ - 0x02, /* bDeviceSubClass */ - 0x01, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x01, /* bNumConfigurations */ - 0x00 /* Reserved, must be 0 */ -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #0 Mass Storage Device */ - MXC_USB_interface_descriptor_t msc_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; - /* Interface Association Descriptor */ - uint8_t interface_association_descriptor[8]; - /* Interface #1 CDCACM Device */ - MXC_USB_interface_descriptor_t comm_interface_descriptor; - uint8_t header_functional_descriptor[5]; - uint8_t call_management_descriptor[5]; - uint8_t acm_functional_descriptor[4]; - uint8_t union_functional_descriptor[5]; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; - /* Interface #2 CDC Data*/ - MXC_USB_interface_descriptor_t data_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; -} - -composite_config_descriptor = { - { - 0x09, /* bLength */ - 0x02, /* bDescriptorType = Config */ - 0x0062, /* wTotalLength(L/H) = 98 bytes */ - 0x03, /* bNumInterfaces */ - 0x01, /* bConfigurationValue */ - 0x02, /* iConfiguration */ /// - 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ - 0x01, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - /********** Interface #0 : Mass Storage Device **********/ - { - /* Second Interface Descriptor For MSC Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints (one for IN one for OUT) */ - 0x08, /* bInterfaceClass = Mass Storage (8) */ - 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ - 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ - 0x05, /* iInterface */ - }, - { - /* OUT Endpoint 1 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00 /* bInterval (N/A) */ - }, - /********** Interface Association Descriptor **********/ - { - 0x08, /* bLength */ - 0x0B, /* bDescriptorType */ - 0x01, /* bFirstInterface */ - 0x02, /* bInterfaceCount */ - 0x02, /* bFunctionClass */ - 0x02, /* bFunctionSubClass */ - 0x01, /* bFunctionProtocol */ - 0x00, /* iFunction */ - }, - /********** Interface #1 : COMM Interface **********/ - { - /* First Interface Descriptor For Comm Class Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x01, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x02, /* bInterfaceClass = Communications Interface Class (2) */ - 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ - 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ - 0x04, /* iInterface */ - }, - { - /* Header Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x00, /* bDescriptorSubtype */ - 0x10, 0x01, /* bcdCDC */ - }, - { - /* Call Management Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x01, /* bDescriptorSubtype */ - 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ - 0x01, /* bmDataInterface */ - }, - { - /* Abstract Control Management Functional Descriptor */ - 0x04, /* bFunctionalLength = 4 */ - 0x24, /* bDescriptorType */ - 0x02, /* bDescriptorSubtype */ - 0x02, /* bmCapabilities */ - }, - { - /* Union Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x06, /* bDescriptorSubtype */ - 0x00, /* bmMasterInterface */ - 0x01, /* bmSlaveInterface0 */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x84, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0040, /* wMaxPacketSize */ - 0xff, /* bInterval (milliseconds) */ - }, - { - /* Second Interface Descriptor For Data Interface */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType (Interface) */ - 0x02, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints */ - 0x0a, /* bInterfaceClass = Data Interface (10) */ - 0x00, /* bInterfaceSubClass = none (0) */ - 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ - 0x04, /* biInterface = No Text String (0) */ - }, - { - /* OUT Endpoint 1 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x05, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #3) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #0 Mass Storage Device */ - MXC_USB_interface_descriptor_t msc_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; - /* Interface Association Descriptor */ - uint8_t interface_association_descriptor[8]; - /* Interface #1 CDCACM Device */ - MXC_USB_interface_descriptor_t comm_interface_descriptor; - uint8_t header_functional_descriptor[5]; - uint8_t call_management_descriptor[5]; - uint8_t acm_functional_descriptor[4]; - uint8_t union_functional_descriptor[5]; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; - /* Interface #2 CDC Data*/ - MXC_USB_interface_descriptor_t data_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_4; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_5; -} - -composite_config_descriptor_hs = { - { - 0x09, /* bLength */ - 0x02, /* bDescriptorType = Config */ - 0x0062, /* wTotalLength(L/H) */ - 0x03, /* bNumInterfaces */ - 0x01, /* bConfigurationValue */ - 0x02, /* iConfiguration */ - 0xE0, /* bmAttributes (bus-powered, remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - /********** Interface #0 : Mass Storage Device **********/ - { - /* Second Interface Descriptor For MSC Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints (one for IN one for OUT) */ - 0x08, /* bInterfaceClass = Mass Storage (8) */ - 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ - 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ - 0x05, /* iInterface */ - }, - { - /* OUT Endpoint 1 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x01, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x01 /* bInterval (N/A) */ - }, - /********** Interface Association Descriptor **********/ - { - 0x08, /* bLength */ - 0x0B, /* bDescriptorType */ - 0x01, /* bFirstInterface */ - 0x02, /* bInterfaceCount */ - 0x02, /* bFunctionClass */ - 0x02, /* bFunctionSubClass */ - 0x01, /* bFunctionProtocol */ - 0x00, /* iFunction */ - }, - /********** Interface #1 : COMM Interface **********/ - { - /* First Interface Descriptor For Comm Class Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x01, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x02, /* bInterfaceClass = Communications Interface Class (2) */ - 0x02, /* bInterfaceSubClass = Abstract Control Model (2) */ - 0x01, /* bInterfaceProtocol = Common "AT" commands (1), no class specific protocol (0) */ - 0x04, /* iInterface */ - }, - { - /* Header Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x00, /* bDescriptorSubtype */ - 0x10, 0x01, /* bcdCDC */ - }, - { - /* Call Management Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x01, /* bDescriptorSubtype */ - 0x03, /* bmCapabilities = Device handles call management itself (0x01), management over data class (0x02) */ - 0x01, /* bmDataInterface */ - }, - { - /* Abstract Control Management Functional Descriptor */ - 0x04, /* bFunctionalLength = 4 */ - 0x24, /* bDescriptorType */ - 0x02, /* bDescriptorSubtype */ - 0x02, /* bmCapabilities */ - }, - { - /* Union Functional Descriptor */ - 0x05, /* bFunctionalLength = 5 */ - 0x24, /* bDescriptorType */ - 0x06, /* bDescriptorSubtype */ - 0x00, /* bmMasterInterface */ - 0x01, /* bmSlaveInterface0 */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x84, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0200, /* wMaxPacketSize */ - 0xff, /* bInterval (milliseconds) */ - }, - { - /* Second Interface Descriptor For Data Interface */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType (Interface) */ - 0x02, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints */ - 0x0a, /* bInterfaceClass = Data Interface (10) */ - 0x00, /* bInterfaceSubClass = none (0) */ - 0x00, /* bInterfaceProtocol = No class specific protocol (0) */ - 0x04, /* biInterface = No Text String (0) */ - }, - { - /* OUT Endpoint 1 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x05, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #3) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, -}; - -__attribute__((aligned(4))) uint8_t report_descriptor[] = { - 0x05, 0x01, /* Usage Page (generic desktop) */ - 0x09, 0x06, /* Usage (keyboard) */ - 0xa1, 0x01, /* Collection */ - 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ - 0x19, 0xe0, /* Usage Minimum = 224 */ - 0x29, 0xe7, /* Usage Maximum = 231 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x01, /* Logical Maximum = 1 */ - 0x75, 0x01, /* Report Size = 1 */ - 0x95, 0x08, /* Report Count = 8 */ - 0x81, 0x02, /* Input(Data,Variable,Absolute) */ - 0x95, 0x01, /* Report Count = 1 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x81, 0x01, /* Input(Constant) */ - 0x19, 0x00, /* Usage Minimum = 0 */ - 0x29, 0x65, /* Usage Maximum = 101 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x65, /* Logical Maximum = 101 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x95, 0x01, /* Report Count = 1 */ - 0x81, 0x00, /* Input(Data,Variable,Array) */ - 0xc0 /* End Collection */ -}; - -__attribute__((aligned(4))) uint8_t lang_id_desc[] = { - 0x04, /* bLength */ - 0x03, /* bDescriptorType */ - 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ -}; - -__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, - 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t prod_id_desc[] = { - 0x34, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', - 0, 'C', 0, 'o', 0, 'm', 0, 'p', 0, 'o', 0, 's', 0, 'i', 0, 't', 0, - 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, -}; - -__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ - 0x03, /* bDescriptorType */ - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, - '0', 0, '0', 0, '0', 0, '1', 0 }; - -__attribute__((aligned(4))) uint8_t cdcacm_func_desc[] = { - 0x20, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', - 0, ' ', 0, 'C', 0, 'D', 0, 'C', 0, 'A', 0, 'C', 0, 'M', 0, -}; - -__attribute__((aligned(4))) uint8_t msc_func_desc[] = { - 0x3A, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', 0, 'M', - 0, 'a', 0, 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, - 'g', 0, 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, -}; - -#endif // EXAMPLES_MAX32690_USB_USB_COMPOSITEDEVICE_MSC_CDC_DESCRIPTORS_H_ diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/main.c b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/main.c deleted file mode 100644 index cd10ac12ba6..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/main.c +++ /dev/null @@ -1,439 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file main.c - * @brief USB composite device with Mass Storage driver class and CDC-SCM driver class. -*/ - -#include -#include -#include "mxc_sys.h" -#include "mcr_regs.h" -#include "mxc_delay.h" -#include "board.h" -#include "led.h" -#include "usb.h" -#include "mscmem.h" -#include "usb_event.h" -#include "enumerate.h" -#include "cdc_acm.h" -#include "msc.h" -#include "descriptors.h" - -/* **** Definitions **** */ -#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS -#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) - -#define BUFFER_SIZE 64 - -#define STRINGIFY(x) #x -#define TOSTRING(x) STRINGIFY(x) - -/* **** Global Data **** */ -volatile int configured; -volatile int suspended; -volatile unsigned int event_flags; -int remote_wake_en; - -/* **** Function Prototypes **** */ - -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int eventCallback(maxusb_event_t evt, void *data); -static void usbAppSleep(void); -static void usbAppWakeup(void); -static int usbReadCallback(void); -int usbStartupCallback(); -int usbShutdownCallback(); -static void echoUSB(void); - -/* This EP assignment must match the Configuration Descriptor */ -static msc_cfg_t msc_cfg = { - 1, /* EP OUT */ - MXC_USBHS_MAX_PACKET, /* OUT max packet size */ - 2, /* EP IN */ - MXC_USBHS_MAX_PACKET, /* IN max packet size */ -}; - -static const msc_idstrings_t ids = { - "MAXIM", /* Vendor string. Maximum of 8 bytes */ - "MSC Example", /* Product string. Maximum of 16 bytes */ - "1.0" /* Version string. Maximum of 4 bytes */ -}; - -/* This EP assignment must match the Configuration Descriptor */ -static acm_cfg_t acm_cfg = { - 2, /* EP OUT */ - MXC_USBHS_MAX_PACKET, /* OUT max packet size */ - 3, /* EP IN */ - MXC_USBHS_MAX_PACKET, /* IN max packet size */ - 4, /* EP Notify */ - MXC_USBHS_MAX_PACKET, /* Notify max packet size */ -}; - -static volatile int usb_read_complete; - -/* Functions to control "disk" memory. See msc.h for definitions. */ -static const msc_mem_t mem = { mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, - mscmem_Size, mscmem_Read, mscmem_Write }; - -/** - * User-supplied function to delay usec micro-seconds - * - * @param[in] usec The usec time to delay. - */ -void delay_us(unsigned int usec) -{ - /* mxc_delay() takes unsigned long, so can't use it directly */ - MXC_Delay(usec); -} - -/* ************************************************************************** */ -int main(void) -{ - maxusb_cfg_options_t usb_opts; - - printf("\n\n***** " TOSTRING( - TARGET) " USB Composite Device (CDCACM and Mass Storage) Example *****\n"); - printf("Waiting for VBUS...\n"); - - /* Initialize state */ - configured = 0; - suspended = 0; - event_flags = 0; - remote_wake_en = 0; - - /* Start out in full speed */ - usb_opts.enable_hs = 1; /* 0:Full Speed 1:High Speed */ - usb_opts.delay_us = delay_us; /* Function which will be used for delays */ - usb_opts.init_callback = usbStartupCallback; - usb_opts.shutdown_callback = usbShutdownCallback; - - /* Initialize the usb module */ - if (MXC_USB_Init(&usb_opts) != 0) { - printf("usb_init() failed\n"); - while (1) {} - } - - /* Initialize the enumeration module */ - if (enum_init() != 0) { - printf("enum_init() failed\n"); - while (1) {} - } - - /* Register enumeration data */ - enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&composite_device_descriptor, 0); - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); - if (usb_opts.enable_hs) { - /* Two additional descriptors needed for high-speed operation */ - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor_hs, 0); - enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&composite_device_qualifier_descriptor, - 0); - } - enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); - enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); - enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); - enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); - enum_register_descriptor(ENUM_DESC_STRING, cdcacm_func_desc, 4); - enum_register_descriptor(ENUM_DESC_STRING, msc_func_desc, 5); - - /* Handle configuration */ - enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); - - /* Handle feature set/clear */ - enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); - enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); - - /* Initialize the class driver */ - if (msc_init(&composite_config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { - printf("msc_init() failed\n"); - while (1) {} - } - - if (acm_init(&composite_config_descriptor.comm_interface_descriptor) != 0) { - printf("acm_init() failed\n"); - while (1) {} - } - - /* Register callbacks */ - MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); - MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); - acm_register_callback(ACM_CB_READ_READY, usbReadCallback); - usb_read_complete = 0; - - /* Start with USB in low power mode */ - usbAppSleep(); - NVIC_EnableIRQ(USB_IRQn); - - /* Wait for events */ - while (1) { - echoUSB(); - - if (suspended || !configured) { - LED_Off(0); - } else { - LED_On(0); - } - - if (event_flags) { - /* Display events */ - if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); - printf("VBUS Disconnect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); - printf("VBUS Connect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); - printf("Bus Reset\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { /// - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); - printf("Bus Reset Done: %s speed\n", - (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); - printf("Suspended\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); - printf("Resume\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { - MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); - printf("Enumeration complete...\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { - MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); - printf("Remote Wakeup\n"); - } - } - } -} - -/******************************************************************************/ -static void echoUSB(void) -{ - int chars; - uint8_t buffer[BUFFER_SIZE]; - - if ((chars = acm_canread()) > 0) { - if (chars > BUFFER_SIZE) { - chars = BUFFER_SIZE; - } - - // Read the data from USB - if (acm_read(buffer, chars) != chars) { - printf("acm_read() failed\n"); - return; - } - - // Echo it back - if (acm_present()) { - if (acm_write(buffer, chars) != chars) { - printf("acm_write() failed\n"); - } - } - } -} - -/******************************************************************************/ -int usbStartupCallback() -{ - MXC_SYS_ClockSourceEnable(MXC_SYS_CLOCK_IPO); - MXC_MCR->ldoctrl |= MXC_F_MCR_LDOCTRL_0P9EN; - MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); - MXC_SYS_Reset_Periph(MXC_SYS_RESET0_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -int usbShutdownCallback() -{ - MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/* ************************************************************************** */ - -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - /* Confirm the configuration value */ - if (sud->wValue == composite_config_descriptor.config_descriptor.bConfigurationValue) { - // on++; - configured = 1; - MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); - if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { /// - msc_cfg.out_ep = composite_config_descriptor_hs.endpoint_descriptor_1.bEndpointAddress & - 0x7; - msc_cfg.out_maxpacket = - composite_config_descriptor_hs.endpoint_descriptor_1.wMaxPacketSize; - msc_cfg.in_ep = composite_config_descriptor_hs.endpoint_descriptor_2.bEndpointAddress & - 0x7; - msc_cfg.in_maxpacket = - composite_config_descriptor_hs.endpoint_descriptor_2.wMaxPacketSize; - } else { - msc_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_1.bEndpointAddress & - 0x7; - msc_cfg.out_maxpacket = - composite_config_descriptor.endpoint_descriptor_1.wMaxPacketSize; - msc_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_2.bEndpointAddress & - 0x7; - msc_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_2.wMaxPacketSize; - } - - acm_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_4.bEndpointAddress & 0x7; - acm_cfg.out_maxpacket = composite_config_descriptor.endpoint_descriptor_4.wMaxPacketSize; - acm_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_5.bEndpointAddress & 0x7; - acm_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_5.wMaxPacketSize; - acm_cfg.notify_ep = composite_config_descriptor.endpoint_descriptor_3.bEndpointAddress & - 0x7; - acm_cfg.notify_maxpacket = composite_config_descriptor.endpoint_descriptor_3.wMaxPacketSize; - - msc_configure(&msc_cfg); - return acm_configure(&acm_cfg); - /* Configure the device class */ - } else if (sud->wValue == 0) { - configured = 0; - msc_deconfigure(); - return acm_deconfigure(); - } - - return -1; -} - -/* ************************************************************************** */ - -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 1; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/* ************************************************************************** */ - -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 0; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/* ************************************************************************** */ - -static void usbAppSleep(void) -{ - /* TODO: Place low-power code here */ - suspended = 1; -} - -/* ************************************************************************** */ - -static void usbAppWakeup(void) -{ - /* TODO: Place low-power code here */ - suspended = 0; -} - -/* ************************************************************************** */ -static int eventCallback(maxusb_event_t evt, void *data) -{ - /* Set event flag */ - MXC_SETBIT(&event_flags, evt); - - switch (evt) { - case MAXUSB_EVENT_NOVBUS: - MXC_USB_EventDisable(MAXUSB_EVENT_BRST); - MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); - MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); - MXC_USB_Disconnect(); - configured = 0; - enum_clearconfig(); - msc_deconfigure(); - acm_deconfigure(); - usbAppSleep(); - break; - case MAXUSB_EVENT_VBUS: - MXC_USB_EventClear(MAXUSB_EVENT_BRST); - MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); /// - MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, eventCallback, NULL); /// - MXC_USB_EventClear(MAXUSB_EVENT_SUSP); - MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); - MXC_USB_Connect(); - usbAppSleep(); - break; - case MAXUSB_EVENT_BRST: - usbAppWakeup(); - enum_clearconfig(); - msc_deconfigure(); - acm_deconfigure(); - configured = 0; - suspended = 0; - break; - case MAXUSB_EVENT_BRSTDN: /// - if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor_hs, - 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor, 0); - } else { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&composite_config_descriptor_hs, - 0); - } - break; - case MAXUSB_EVENT_SUSP: - usbAppSleep(); - break; - case MAXUSB_EVENT_DPACT: - usbAppWakeup(); - break; - default: - break; - } - - return 0; -} - -/* ************************************************************************** */ - -void USB_IRQHandler(void) -{ - MXC_USB_EventHandler(); -} - -/******************************************************************************/ -static int usbReadCallback(void) -{ - usb_read_complete = 1; - return 0; -} diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/mscmem.c b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/mscmem.c deleted file mode 100644 index 3ad3e564518..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/mscmem.c +++ /dev/null @@ -1,311 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file mscmem.h - * @brief Memory routines used by the USB Mass Storage Class example. - * See the msc_mem_t structure in msc.h for function details. - * @details Functions are provided for using the internal RAM of the - * device or the external SPI flash memory. Use the SPIXF_DISK - * and RAM_DISK defines to select the desired memory at compile - * time. - */ - -#include "mscmem.h" -#include -#include -//#include "mx25.h" -//#include "spixf.h" - -/***** Definitions *****/ - -#define SPIXF_DISK 0 -#define RAM_DISK 1 - -#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ -#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ - -/***** Global Data *****/ - -/***** File Scope Variables *****/ - -static int initialized = 0; -static int running = 0; - -#if SPIXF_DISK - -#define MX25_BAUD 5000000 /* SPI clock rate to communicate with the MX25 */ - -#define MX25_SECTOR_SIZE 4096 /* Number of bytes in one sector of the MX25 */ -#define MX25_SECTOR_SIZE_SHIFT \ - 12 /* The shift value used to convert between addresses and block numbers */ -#define MX25_NUM_SECTORS 2048 /* Total number of sectors in the MX25 */ - -#define MXC_SPIXF_WIDTH MXC_SPIXF_WIDTH_1 /*Number of data lines*/ - -#define LBA_PER_SECTOR (MX25_SECTOR_SIZE >> LBA_SIZE_SHIFT) -#define INVALID_SECTOR \ - MX25_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ - -/***** File Scope Variables *****/ -static uint32_t sectorNum = INVALID_SECTOR; -static uint8_t sector[MX25_SECTOR_SIZE]; -static int sectorDirty = 0; - -/***** Function Prototypes *****/ -static uint32_t getSectorNum(uint32_t lba); -static uint32_t getSectorAddr(uint32_t lba); -static uint32_t getSector(uint32_t num); - -/******************************************************************************/ -static uint32_t getSectorNum(uint32_t lba) -{ - /* Absolute_address = lba * LBA_SIZE */ - /* Sector_num = Absolute_address / MX25_SECTOR_SIZE */ - /* Sector_num = lba * 512 / 4096 */ - return lba >> (MX25_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); -} - -/******************************************************************************/ -static uint32_t getSectorAddr(uint32_t lba) -{ - /* eight 512 byte blocks in each sector */ - return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; -} - -/******************************************************************************/ -static uint32_t getSector(uint32_t num) -{ - /* New sector requested? */ - if (sectorNum != num) { - /* Is the current sector real? */ - if (sectorNum != INVALID_SECTOR) { - /* Was it written to after it was read from memory? */ - if (sectorDirty) { - /* Erase the old data. */ - MX25_Erase(sectorNum << MX25_SECTOR_SIZE_SHIFT, MX25_Erase_4K); - /* Write the new */ - MX25_Program_Page(sectorNum << MX25_SECTOR_SIZE_SHIFT, sector, MX25_SECTOR_SIZE, - MXC_SPIXF_WIDTH); - /* Mark data as clean */ - sectorDirty = 0; - } - } - - /* Requesting a new valid sector? */ - if (num != INVALID_SECTOR) { - MX25_Read(num << MX25_SECTOR_SIZE_SHIFT, sector, MX25_SECTOR_SIZE, MXC_SPIXF_WIDTH); - sectorDirty = 0; - sectorNum = num; - } - } - - return 0; -} - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - MXC_SPIXF_SetSPIFrequency(MX25_BAUD); - MX25_Init(); - MX25_Reset(); - - if (MXC_SPIXF_WIDTH == MXC_SPIXF_WIDTH_4) { - MX25_Quad(1); - } else { - MX25_Quad(0); - } - - initialized = 1; - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - /* Get number of 512 byte chunks the MX25 contains. */ - return (MX25_SECTOR_SIZE >> LBA_SIZE_SHIFT) * MX25_NUM_SECTORS; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to MX25 sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from MX25 */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(buffer, sector + addr, LBA_SIZE); - - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to MX25 sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from MX25 */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(sector + addr, buffer, LBA_SIZE); - sectorDirty = 1; - - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Turn on the MX25 if it is not already. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the initialization succeeded. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* TODO - could shut down XIPF interface here. */ - - /* Flush the currently cached sector if necessary. */ - if (getSector(INVALID_SECTOR)) { - return 1; - } - - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#elif RAM_DISK - -#define NUM_PAGES 0x100 -static uint8_t mem[NUM_PAGES][LBA_SIZE]; - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - initialized = 1; -#if (ERASE_MEMORY_ON_INIT) - memset(mem, 0, sizeof(mem)); -#endif - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - return NUM_PAGES; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(buffer, mem[lba], LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(mem[lba], buffer, LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Not much to do for this implementation. The RAM is always ready. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the RAM has been initialized. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* Nothing to do for this implementation. All data is written as it is */ - /* received so there are no pending writes that need to be flushed. */ - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#else -#error "You must assign either RAM_DISK or SPIXF_DISK to 1." -#endif diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/mscmem.h b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/mscmem.h deleted file mode 100644 index ca5e56c128c..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/mscmem.h +++ /dev/null @@ -1,85 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file mscmem.h - * @brief Memory routines used by the USB Mass Storage Class example. - * See the msc_mem_t structure in msc.h for function details. - */ - -#ifndef EXAMPLES_MAX32690_USB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ -#define EXAMPLES_MAX32690_USB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ - -#include - -/* **** Definitions **** */ -#define ERASE_MEMORY_ON_INIT \ - 1 /* Configuration option to clear the memory (to 0s) on initialization. */ -/* Use 1 to clear or 0 to leave untouched. */ -/** - * @brief Perform any initialization necessary to prepare the memory for reading/writing data. - * @returns 0 if initialization is successful, non-zero if an error occurred. - */ -int mscmem_Init(void); - -/** - * @brief Activates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Start(void); - -/** - * @brief Deactivates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Stop(void); - -/** - * @brief Reports the total size of the mass-storage memory. - * @returns The number of 512 byte blocks contained in the memory. - */ -uint32_t mscmem_Size(void); - -/** - * @brief Reads 512 bytes of data from the memory. - * @param lba The index of the 512 byte block to read. - * @param buffer A byte array of at least 512 bytes to hold the values read. - * @returns 0 if reading is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Read(uint32_t lba, uint8_t *buffer); - -/** - * @brief Writes 512 bytes of data to the memory. - * @param lba The index of the 512 byte block to write. - * @param buffer A byte array of at least 512 bytes holding the values to write. - * @returns 0 if writing is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Write(uint32_t lba, uint8_t *buffer); - -/** - * @brief Checks if the memory is ready to be read/written. - * @returns non-zero if the memory is ready, 0 otherwise. - */ -int mscmem_Ready(void); - -#endif // EXAMPLES_MAX32690_USB_USB_COMPOSITEDEVICE_MSC_CDC_MSCMEM_H_ diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/project.mk b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/project.mk deleted file mode 100644 index 582957930d9..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_CDC/project.mk +++ /dev/null @@ -1,16 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -# ********************************************************** - -# If you have secure version of MCU, set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable MAXUSB library -LIB_MAXUSB = 1 diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.vscode/README.md b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.vscode/README.md deleted file mode 100755 index 90fbcefc65d..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.vscode/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# VSCode-Maxim - -_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ - -## Quick Links - -* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) - -## Introduction - -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). - -The following features are supported: - -* Code editing with intellisense down to the register level -* Code compilation with the ability to easily re-target a project for different microcontrollers and boards -* Flashing programs -* GUI and command-line debugging - -## Dependencies - -* [Visual Studio Code](https://code.visualstudio.com/) - * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) -* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) - -## Installation - -Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. - -See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. - -## Usage - -See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. - -## Issue Tracker - -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. - -New issues should contain _at minimum_ the following information: - -* Visual Studio Code version #s (see `Help -> About`) -* C/C++ Extension version # -* Target microcontroller and evaluation platform -* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.vscode/settings.json b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.vscode/settings.json deleted file mode 100755 index 0d29e091c62..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/.vscode/settings.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32690", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32690.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/Makefile b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/Makefile deleted file mode 100644 index 082a6783d23..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32690 -TARGET_UC := MAX32690 -TARGET_LC := max32690 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/README.md b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/README.md deleted file mode 100644 index c2810c028dd..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/README.md +++ /dev/null @@ -1,35 +0,0 @@ -## Description - -The example demonstartes the use of USB composite device with Mass Storage driver class and HID driver class. After doing the required connections given below, run the program and two new devices appear in the device manager, a Portable device and a HID keyboard device. The portable device can be read and written to. Open any text editor in the PC, pressing the switch SW1 on the evkit wil print out 'Maxim Integrated' in the editor one letter at a time. - -## Software - -### Project Usage - -Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. - -### Project-Specific Build Notes - -(None - this project builds as a standard example) - -## Required Connections - -- Connect a USB cable between the PC and the CN2 (USB/PWR/UART) connector. -- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. -- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. -- Default EV kit hardware configuration. - -## Expected Output - -The Console UART of the device will output these messages: - -``` -Connect Port 0.7 to Port 4.0 -***** MAX32690 USB Composite Device (Keyboard and Mass Storage) Example ***** -Waiting for VBUS... -VBUS Connect -Suspended -Bus Reset -Bus Reset -Enumeration complete. Press SW2 to send character. -``` diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/descriptors.h b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/descriptors.h deleted file mode 100644 index 6520641d11c..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/descriptors.h +++ /dev/null @@ -1,216 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -#ifndef EXAMPLES_MAX32690_USB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ -#define EXAMPLES_MAX32690_USB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ - -#include -#include "usb.h" -#include "hid_kbd.h" - -MXC_USB_device_descriptor_t __attribute__((aligned(4))) composite_device_descriptor = { - 0x12, /* bLength */ - 0x01, /* bDescriptorType = Device */ - 0x0200, - /* bcdUSB USB spec rev (BCD) */ /// - 0x00, /* bDeviceClass = code specified by interface descriptors */ - 0x00, /* bDeviceSubClass = code specified by interface descriptors */ - 0x00, /* bDeviceProtocol = code specified by interface descriptors */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x0B6A, /* idVendor (Maxim Integrated) */ - 0x003C, - /* idProduct */ /// - 0x0100, /* bcdDevice */ - 0x01, /* iManufacturer Descriptor ID */ - 0x02, /* iProduct Descriptor ID */ - 0x03, /* iSerialNumber Descriptor ID */ - 0x01 /* bNumConfigurations */ -}; - -/* Device qualifier needed for high-speed operation */ -MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) -composite_device_qualifier_descriptor = { - 0x0A, /* bLength = 10 */ - 0x01, /* bDescriptorType = Device Qualifier */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x00, /* bDeviceClass = Unspecified */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x01, /* bNumConfigurations */ - 0x00 /* Reserved, must be 0 */ -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #1 HID Keyboard */ - MXC_USB_interface_descriptor_t hid_interface_descriptor; - hid_descriptor_t hid_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_3; - /* Interface #2 Mass Storage Device */ - MXC_USB_interface_descriptor_t msc_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; -} - -composite_config_descriptor = { - { - 0x09, /* bLength */ - 0x02, /* bDescriptorType = Config */ - 0x0039, /* wTotalLength(L/H) = 57 bytes */ - 0x02, /* bNumInterfaces */ - 0x01, /* bConfigurationValue */ - 0x02, /* iConfiguration */ - 0xA0, /* bmAttributes (bus-powered, remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - /********** Interface #0 : HID Keyboard **********/ - { - /* First Interface Descriptor */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x03, /* bInterfaceClass = HID */ - 0x00, /* bInterfaceSubClass */ - 0x00, /* bInterfaceProtocol */ - 0x04, /* iInterface */ - }, - { - /* HID Descriptor */ - 0x09, /* bFunctionalLength */ - 0x21, /* bDescriptorType = HID */ - 0x0110, /* bcdHID Rev 1.1 */ - 0x00, /* bCountryCode */ - 0x01, /* bNumDescriptors */ - 0x22, /* bDescriptorType = Report */ - 0x002b, /* wDescriptorLength */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0040, /* wMaxPacketSize */ - 0x0a /* bInterval (milliseconds) */ - }, - /********** Interface #1 : Mass Storage Device **********/ - { - /* Second Interface Descriptor For MSC Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x01, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints (one for IN one for OUT) */ - 0x08, /* bInterfaceClass = Mass Storage (8) */ - 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ - 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ - 0x05, /* iInterface */ - }, - { - /* OUT Endpoint 1 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00 /* bInterval (N/A) */ - }, -}; - -__attribute__((aligned(4))) uint8_t report_descriptor[] = { - 0x05, 0x01, /* Usage Page (generic desktop) */ - 0x09, 0x06, /* Usage (keyboard) */ - 0xa1, 0x01, /* Collection */ - 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ - 0x19, 0xe0, /* Usage Minimum = 224 */ - 0x29, 0xe7, /* Usage Maximum = 231 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x01, /* Logical Maximum = 1 */ - 0x75, 0x01, /* Report Size = 1 */ - 0x95, 0x08, /* Report Count = 8 */ - 0x81, 0x02, /* Input(Data,Variable,Absolute) */ - 0x95, 0x01, /* Report Count = 1 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x81, 0x01, /* Input(Constant) */ - 0x19, 0x00, /* Usage Minimum = 0 */ - 0x29, 0x65, /* Usage Maximum = 101 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x65, /* Logical Maximum = 101 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x95, 0x01, /* Report Count = 1 */ - 0x81, 0x00, /* Input(Data,Variable,Array) */ - 0xc0 /* End Collection */ -}; - -__attribute__((aligned(4))) uint8_t lang_id_desc[] = { - 0x04, /* bLength */ - 0x03, /* bDescriptorType */ - 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ -}; - -__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, - 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t prod_id_desc[] = { - 0x34, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', - 0, 'C', 0, 'o', 0, 'm', 0, 'p', 0, 'o', 0, 's', 0, 'i', 0, 't', 0, - 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, -}; - -__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x14, /* bLength */ - 0x03, /* bDescriptorType */ - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, - '0', 0, '0', 0, '0', 0, '1', 0 }; - -__attribute__((aligned(4))) uint8_t hidkbd_func_desc[] = { - 0x24, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', - 0, 'K', 0, 'e', 0, 'y', 0, 'b', 0, 'o', 0, 'a', 0, 'r', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t msc_func_desc[] = { - 0x3A, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '6', 0, '5', 0, ' ', 0, 'M', - 0, 'a', 0, 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, - 'g', 0, 'e', 0, ' ', 0, 'D', 0, 'e', 0, 'v', 0, 'i', 0, 'c', 0, 'e', 0, -}; - -#endif // EXAMPLES_MAX32690_USB_USB_COMPOSITEDEVICE_MSC_HID_DESCRIPTORS_H_ diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/main.c b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/main.c deleted file mode 100644 index 5e13772f8af..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/main.c +++ /dev/null @@ -1,456 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file main.c - * @brief USB composite device with Mass Storage driver class and HID driver class. -*/ - -#include -#include -#include "mxc_sys.h" -#include "led.h" -#include "pb.h" -#include "mxc_delay.h" -#include "mcr_regs.h" -#include "usb.h" -#include "usb_event.h" -#include "enumerate.h" -#include "hid_kbd.h" -#include "msc.h" -#include "descriptors.h" -#include "mscmem.h" -#include "nvic_table.h" - -/* **** Definitions **** */ -#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS -#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) - -#define STRINGIFY(x) #x -#define TOSTRING(x) STRINGIFY(x) - -/* **** Global Data **** */ -volatile int configured; -volatile int suspended; -volatile unsigned int event_flags; -int remote_wake_en; - -/* This EP assignment must match the Configuration Descriptor */ -static msc_cfg_t msc_cfg = { - 1, /* EP OUT */ - MXC_USBHS_MAX_PACKET, /* OUT max packet size */ - 2, /* EP IN */ - MXC_USBHS_MAX_PACKET, /* IN max packet size */ -}; - -static const msc_idstrings_t ids = { - "MAXIM", /* Vendor string. Maximum of 8 bytes */ - "MSC Example", /* Product string. Maximum of 16 bytes */ - "1.0" /* Version string. Maximum of 4 bytes */ -}; - -/* Functions to control "disk" memory. See msc.h for definitions. */ -static const msc_mem_t mem = { - mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, mscmem_Size, mscmem_Read, mscmem_Write, -}; - -/* **** Function Prototypes **** */ -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int eventCallback(maxusb_event_t evt, void *data); -static void usbAppSleep(void); -static void usbAppWakeup(void); -static void buttonCallback(void *pb); -int usbStartupCallback(); -int usbShutdownCallback(); - -const mxc_gpio_cfg_t hid_sw[] = { - // Even though SW2 in EVK defined at Port 4.0 but this goes not have GPIO interrupt - // Using P0.7 for SW2. Connect Port 4.0 to Port 0.7. - { MXC_GPIO0, MXC_GPIO_PIN_7, MXC_GPIO_FUNC_IN, MXC_GPIO_PAD_PULL_UP, MXC_GPIO_VSSEL_VDDIO }, -}; - -/******************************************************************************/ -int Hid_SW_Init(void) -{ - int retval = E_NO_ERROR; - - if (MXC_GPIO_Config(&hid_sw[0]) != E_NO_ERROR) { - retval = E_UNKNOWN; - } - - return retval; -} - -/******************************************************************************/ -void HID_SW_Handler(void) -{ - MXC_GPIO_Handler(MXC_GPIO_GET_IDX(hid_sw[0].port)); -} - -int Hid_SW_RegisterCallback(unsigned int pb, pb_callback callback) -{ - if (pb != 0) { - return E_INVALID; - } - - if (callback) { - // Register callback - MXC_GPIO_RegisterCallback(&hid_sw[pb], callback, (void *)pb); - - // Configure and enable interrupt - MXC_GPIO_IntConfig(&hid_sw[pb], MXC_GPIO_INT_FALLING); - MXC_GPIO_EnableInt(hid_sw[pb].port, hid_sw[pb].mask); - MXC_NVIC_SetVector(MXC_GPIO_GET_IRQ(MXC_GPIO_GET_IDX(hid_sw[pb].port)), HID_SW_Handler); - NVIC_EnableIRQ(MXC_GPIO_GET_IRQ(MXC_GPIO_GET_IDX(hid_sw[pb].port))); - } else { // Disable interrupt and clear callback - MXC_GPIO_DisableInt(hid_sw[pb].port, hid_sw[pb].mask); - MXC_GPIO_RegisterCallback(&hid_sw[pb], NULL, NULL); - } - - return E_NO_ERROR; -} - -int HID_SW_Get(unsigned int pb) -{ - return !MXC_GPIO_InGet(hid_sw[pb].port, hid_sw[pb].mask); -} - -/** - * User-supplied function to delay usec micro-seconds - * - * @param[in] usec The usec time to delay. - */ -void delay_us(unsigned int usec) -{ - /* mxc_delay() takes unsigned long, so can't use it directly */ - MXC_Delay(usec); -} - -/* ************************************************************************** */ - -void USB_IRQHandler(void) -{ - MXC_USB_EventHandler(); -} - -/* ************************************************************************** */ -int main(void) -{ - maxusb_cfg_options_t usb_opts; - - Hid_SW_Init(); - - printf("\n Connect Port 0.7 to Port 4.0"); - - printf("\n\n***** " TOSTRING( - TARGET) " USB Composite Device (Keyboard and Mass Storage) Example *****\n"); - printf("Waiting for VBUS...\n"); - - /* Initialize state */ - configured = 0; - suspended = 0; - event_flags = 0; - remote_wake_en = 0; - - /* Start out in full speed */ - usb_opts.enable_hs = 0; - usb_opts.delay_us = delay_us; /* Function which will be used for delays */ - usb_opts.init_callback = usbStartupCallback; - usb_opts.shutdown_callback = usbShutdownCallback; - - /* Initialize the usb module */ - if (MXC_USB_Init(&usb_opts) != 0) { - printf("usb_init() failed\n"); - - while (1) {} - } - - /* Initialize the enumeration module */ - if (enum_init() != 0) { - printf("enum_init() failed\n"); - - while (1) {} - } - - /* Register enumeration data */ - enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&composite_device_descriptor, 0); - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&composite_config_descriptor, 0); - enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); - enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); - enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); - enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); - enum_register_descriptor(ENUM_DESC_STRING, hidkbd_func_desc, 4); - enum_register_descriptor(ENUM_DESC_STRING, msc_func_desc, 5); - - /* Handle configuration */ - enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); - - /* Handle feature set/clear */ - enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); - enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); - - /* Initialize the class driver */ - if (msc_init(&composite_config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { - printf("msc_init() failed\n"); - - while (1) {} - } - - if (hidkbd_init(&composite_config_descriptor.hid_interface_descriptor, - &composite_config_descriptor.hid_descriptor, report_descriptor) != 0) { - printf("hidkbd_init() failed\n"); - - while (1) {} - } - - /* Register callbacks */ - MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); - MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); - - /* Register callback for keyboard events */ - if (Hid_SW_RegisterCallback(0, buttonCallback) != E_NO_ERROR) { - printf("HID_SW_RegisterCallback() failed\n"); - - while (1) {} - } - - /* Start with USB in low power mode */ - usbAppSleep(); - NVIC_EnableIRQ(USB_IRQn); - - /* Wait for events */ - while (1) { - if (suspended || !configured) { - LED_Off(0); - } else { - LED_On(0); - } - - if (event_flags) { - /* Display events */ - if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); - printf("VBUS Disconnect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); - printf("VBUS Connect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); - printf("Bus Reset\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); - printf("Suspended\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); - printf("Resume\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { - MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); - printf("Enumeration complete. Press SW2 to send character.\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { - MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); - printf("Remote Wakeup\n"); - } - } - } -} - -/******************************************************************************/ -int usbStartupCallback() -{ - MXC_SYS_ClockSourceEnable(MXC_SYS_CLOCK_IPO); - MXC_MCR->ldoctrl |= MXC_F_MCR_LDOCTRL_0P9EN; - MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); - MXC_SYS_Reset_Periph(MXC_SYS_RESET0_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -int usbShutdownCallback() -{ - MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/* ************************************************************************** */ - -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 1; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/* ************************************************************************** */ - -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 0; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/* ************************************************************************** */ - -static void usbAppSleep(void) -{ - /* TODO: Place low-power code here */ - suspended = 1; -} - -/* ************************************************************************** */ - -static void usbAppWakeup(void) -{ - /* TODO: Place low-power code here */ - suspended = 0; -} - -/* ************************************************************************** */ - -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - /* Confirm the configuration value */ - if (sud->wValue == composite_config_descriptor.config_descriptor.bConfigurationValue) { - // on++; - configured = 1; - MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); - msc_cfg.out_ep = composite_config_descriptor.endpoint_descriptor_1.bEndpointAddress & 0x7; - msc_cfg.out_maxpacket = composite_config_descriptor.endpoint_descriptor_1.wMaxPacketSize; - msc_cfg.in_ep = composite_config_descriptor.endpoint_descriptor_2.bEndpointAddress & 0x7; - msc_cfg.in_maxpacket = composite_config_descriptor.endpoint_descriptor_2.wMaxPacketSize; - - msc_configure(&msc_cfg); - return hidkbd_configure(composite_config_descriptor.endpoint_descriptor_3.bEndpointAddress & - USB_EP_NUM_MASK); - } else if (sud->wValue == 0) { - configured = 0; - msc_deconfigure(); - return hidkbd_deconfigure(); - } - - return -1; -} - -/* ************************************************************************** */ - -static int eventCallback(maxusb_event_t evt, void *data) -{ - /* Set event flag */ - MXC_SETBIT(&event_flags, evt); - - switch (evt) { - case MAXUSB_EVENT_NOVBUS: - MXC_USB_EventDisable(MAXUSB_EVENT_BRST); - MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); - MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); - MXC_USB_Disconnect(); - configured = 0; - enum_clearconfig(); - hidkbd_deconfigure(); - msc_deconfigure(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_VBUS: - MXC_USB_EventClear(MAXUSB_EVENT_BRST); - MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_SUSP); - MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); - MXC_USB_Connect(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_BRST: - usbAppWakeup(); - enum_clearconfig(); - hidkbd_deconfigure(); - msc_deconfigure(); - configured = 0; - suspended = 0; - break; - - case MAXUSB_EVENT_SUSP: - usbAppSleep(); - break; - - case MAXUSB_EVENT_DPACT: - usbAppWakeup(); - break; - - default: - break; - } - - return 0; -} - -/* ************************************************************************** */ - -void buttonCallback(void *pb) -{ - static const uint8_t chars[] = "Maxim Integrated\n"; - static int i = 0; - int count = 0; - int button_pressed = 0; - - //determine if interrupt triggered by bounce or a true button press - while (HID_SW_Get(0) && !button_pressed) { - count++; - - if (count > 1000) { - button_pressed = 1; - } - } - - if (button_pressed) { - LED_Toggle(0); - - if (configured) { - if (suspended && remote_wake_en) { - /* The bus is suspended. Wake up the host */ - suspended = 0; - usbAppWakeup(); - MXC_USB_RemoteWakeup(); - MXC_SETBIT(&event_flags, EVENT_REMOTE_WAKE); - } else { - if (i >= (sizeof(chars) - 1)) { - i = 0; - } - - hidkbd_keypress(chars[i++]); - } - } - } -} diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/mscmem.c b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/mscmem.c deleted file mode 100644 index 3ad3e564518..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/mscmem.c +++ /dev/null @@ -1,311 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file mscmem.h - * @brief Memory routines used by the USB Mass Storage Class example. - * See the msc_mem_t structure in msc.h for function details. - * @details Functions are provided for using the internal RAM of the - * device or the external SPI flash memory. Use the SPIXF_DISK - * and RAM_DISK defines to select the desired memory at compile - * time. - */ - -#include "mscmem.h" -#include -#include -//#include "mx25.h" -//#include "spixf.h" - -/***** Definitions *****/ - -#define SPIXF_DISK 0 -#define RAM_DISK 1 - -#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ -#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ - -/***** Global Data *****/ - -/***** File Scope Variables *****/ - -static int initialized = 0; -static int running = 0; - -#if SPIXF_DISK - -#define MX25_BAUD 5000000 /* SPI clock rate to communicate with the MX25 */ - -#define MX25_SECTOR_SIZE 4096 /* Number of bytes in one sector of the MX25 */ -#define MX25_SECTOR_SIZE_SHIFT \ - 12 /* The shift value used to convert between addresses and block numbers */ -#define MX25_NUM_SECTORS 2048 /* Total number of sectors in the MX25 */ - -#define MXC_SPIXF_WIDTH MXC_SPIXF_WIDTH_1 /*Number of data lines*/ - -#define LBA_PER_SECTOR (MX25_SECTOR_SIZE >> LBA_SIZE_SHIFT) -#define INVALID_SECTOR \ - MX25_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ - -/***** File Scope Variables *****/ -static uint32_t sectorNum = INVALID_SECTOR; -static uint8_t sector[MX25_SECTOR_SIZE]; -static int sectorDirty = 0; - -/***** Function Prototypes *****/ -static uint32_t getSectorNum(uint32_t lba); -static uint32_t getSectorAddr(uint32_t lba); -static uint32_t getSector(uint32_t num); - -/******************************************************************************/ -static uint32_t getSectorNum(uint32_t lba) -{ - /* Absolute_address = lba * LBA_SIZE */ - /* Sector_num = Absolute_address / MX25_SECTOR_SIZE */ - /* Sector_num = lba * 512 / 4096 */ - return lba >> (MX25_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); -} - -/******************************************************************************/ -static uint32_t getSectorAddr(uint32_t lba) -{ - /* eight 512 byte blocks in each sector */ - return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; -} - -/******************************************************************************/ -static uint32_t getSector(uint32_t num) -{ - /* New sector requested? */ - if (sectorNum != num) { - /* Is the current sector real? */ - if (sectorNum != INVALID_SECTOR) { - /* Was it written to after it was read from memory? */ - if (sectorDirty) { - /* Erase the old data. */ - MX25_Erase(sectorNum << MX25_SECTOR_SIZE_SHIFT, MX25_Erase_4K); - /* Write the new */ - MX25_Program_Page(sectorNum << MX25_SECTOR_SIZE_SHIFT, sector, MX25_SECTOR_SIZE, - MXC_SPIXF_WIDTH); - /* Mark data as clean */ - sectorDirty = 0; - } - } - - /* Requesting a new valid sector? */ - if (num != INVALID_SECTOR) { - MX25_Read(num << MX25_SECTOR_SIZE_SHIFT, sector, MX25_SECTOR_SIZE, MXC_SPIXF_WIDTH); - sectorDirty = 0; - sectorNum = num; - } - } - - return 0; -} - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - MXC_SPIXF_SetSPIFrequency(MX25_BAUD); - MX25_Init(); - MX25_Reset(); - - if (MXC_SPIXF_WIDTH == MXC_SPIXF_WIDTH_4) { - MX25_Quad(1); - } else { - MX25_Quad(0); - } - - initialized = 1; - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - /* Get number of 512 byte chunks the MX25 contains. */ - return (MX25_SECTOR_SIZE >> LBA_SIZE_SHIFT) * MX25_NUM_SECTORS; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to MX25 sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from MX25 */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(buffer, sector + addr, LBA_SIZE); - - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to MX25 sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from MX25 */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(sector + addr, buffer, LBA_SIZE); - sectorDirty = 1; - - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Turn on the MX25 if it is not already. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the initialization succeeded. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* TODO - could shut down XIPF interface here. */ - - /* Flush the currently cached sector if necessary. */ - if (getSector(INVALID_SECTOR)) { - return 1; - } - - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#elif RAM_DISK - -#define NUM_PAGES 0x100 -static uint8_t mem[NUM_PAGES][LBA_SIZE]; - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - initialized = 1; -#if (ERASE_MEMORY_ON_INIT) - memset(mem, 0, sizeof(mem)); -#endif - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - return NUM_PAGES; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(buffer, mem[lba], LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(mem[lba], buffer, LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Not much to do for this implementation. The RAM is always ready. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the RAM has been initialized. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* Nothing to do for this implementation. All data is written as it is */ - /* received so there are no pending writes that need to be flushed. */ - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#else -#error "You must assign either RAM_DISK or SPIXF_DISK to 1." -#endif diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/mscmem.h b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/mscmem.h deleted file mode 100644 index 93c3b9572c1..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/mscmem.h +++ /dev/null @@ -1,85 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file mscmem.h - * @brief Memory routines used by the USB Mass Storage Class example. - * See the msc_mem_t structure in msc.h for function details. - */ - -#ifndef EXAMPLES_MAX32690_USB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ -#define EXAMPLES_MAX32690_USB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ - -#include - -/* **** Definitions **** */ -#define ERASE_MEMORY_ON_INIT \ - 1 /* Configuration option to clear the memory (to 0s) on initialization. */ -/* Use 1 to clear or 0 to leave untouched. */ -/** - * @brief Perform any initialization necessary to prepare the memory for reading/writing data. - * @returns 0 if initialization is successful, non-zero if an error occurred. - */ -int mscmem_Init(void); - -/** - * @brief Activates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Start(void); - -/** - * @brief Deactivates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Stop(void); - -/** - * @brief Reports the total size of the mass-storage memory. - * @returns The number of 512 byte blocks contained in the memory. - */ -uint32_t mscmem_Size(void); - -/** - * @brief Reads 512 bytes of data from the memory. - * @param lba The index of the 512 byte block to read. - * @param buffer A byte array of at least 512 bytes to hold the values read. - * @returns 0 if reading is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Read(uint32_t lba, uint8_t *buffer); - -/** - * @brief Writes 512 bytes of data to the memory. - * @param lba The index of the 512 byte block to write. - * @param buffer A byte array of at least 512 bytes holding the values to write. - * @returns 0 if writing is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Write(uint32_t lba, uint8_t *buffer); - -/** - * @brief Checks if the memory is ready to be read/written. - * @returns non-zero if the memory is ready, 0 otherwise. - */ -int mscmem_Ready(void); - -#endif // EXAMPLES_MAX32690_USB_USB_COMPOSITEDEVICE_MSC_HID_MSCMEM_H_ diff --git a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/project.mk b/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/project.mk deleted file mode 100644 index 582957930d9..00000000000 --- a/Examples/MAX32690/USB/USB_CompositeDevice_MSC_HID/project.mk +++ /dev/null @@ -1,16 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -# ********************************************************** - -# If you have secure version of MCU, set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable MAXUSB library -LIB_MAXUSB = 1 diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/.vscode/README.md b/Examples/MAX32690/USB/USB_HIDKeyboard/.vscode/README.md deleted file mode 100755 index 90fbcefc65d..00000000000 --- a/Examples/MAX32690/USB/USB_HIDKeyboard/.vscode/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# VSCode-Maxim - -_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ - -## Quick Links - -* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) - -## Introduction - -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). - -The following features are supported: - -* Code editing with intellisense down to the register level -* Code compilation with the ability to easily re-target a project for different microcontrollers and boards -* Flashing programs -* GUI and command-line debugging - -## Dependencies - -* [Visual Studio Code](https://code.visualstudio.com/) - * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) -* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) - -## Installation - -Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. - -See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. - -## Usage - -See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. - -## Issue Tracker - -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. - -New issues should contain _at minimum_ the following information: - -* Visual Studio Code version #s (see `Help -> About`) -* C/C++ Extension version # -* Target microcontroller and evaluation platform -* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/.vscode/settings.json b/Examples/MAX32690/USB/USB_HIDKeyboard/.vscode/settings.json deleted file mode 100755 index 0d29e091c62..00000000000 --- a/Examples/MAX32690/USB/USB_HIDKeyboard/.vscode/settings.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32690", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32690.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/Makefile b/Examples/MAX32690/USB/USB_HIDKeyboard/Makefile deleted file mode 100644 index 082a6783d23..00000000000 --- a/Examples/MAX32690/USB/USB_HIDKeyboard/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32690 -TARGET_UC := MAX32690 -TARGET_LC := max32690 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/README.md b/Examples/MAX32690/USB/USB_HIDKeyboard/README.md deleted file mode 100644 index 8a45195a72d..00000000000 --- a/Examples/MAX32690/USB/USB_HIDKeyboard/README.md +++ /dev/null @@ -1,35 +0,0 @@ -## Description - -The example demonstartes the use of USB HID driver class. After doing the required connections given below, run the program and a new HID keyboard device appears in the device manager. Open any text editor in the PC, pressing the switch SW1 on the evkit wil print out 'Maxin Integrated' in the editor one letter at a time. - -## Software - -### Project Usage - -Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. - -### Project-Specific Build Notes - -(None - this project builds as a standard example) - -## Required Connections - -- Connect a USB cable between the PC and the CN2 (USB/PWR/UART) connector. -- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. -- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. -- Default EV kit hardware configuration. - -## Expected Output - -The Console UART of the device will output these messages: - -``` -Connect Port 0.7 to Port 4.0 -***** MAX32690 USB HID Keyboard Example ***** -Waiting for VBUS... -VBUS Connect -Suspended -Bus Reset -Bus Reset -Enumeration complete. Press SW2 to send character. -``` diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/descriptors.h b/Examples/MAX32690/USB/USB_HIDKeyboard/descriptors.h deleted file mode 100644 index 80396727988..00000000000 --- a/Examples/MAX32690/USB/USB_HIDKeyboard/descriptors.h +++ /dev/null @@ -1,143 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -#ifndef EXAMPLES_MAX32690_USB_USB_HIDKEYBOARD_DESCRIPTORS_H_ -#define EXAMPLES_MAX32690_USB_USB_HIDKEYBOARD_DESCRIPTORS_H_ - -#include -#include "usb.h" -#include "hid_kbd.h" - -MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { - 0x12, /* bLength */ - 0x01, /* bDescriptorType = Device */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x00, /* bDeviceClass = Unspecified */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x0B6A, /* idVendor (Maxim Integrated) */ - 0x003C, /* idProduct */ - 0x0100, /* bcdDevice */ - 0x01, /* iManufacturer Descriptor ID */ - 0x02, /* iProduct Descriptor ID */ - 0x03, /* iSerialNumber Descriptor ID */ - 0x01 /* bNumConfigurations */ -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - MXC_USB_interface_descriptor_t interface_descriptor; - hid_descriptor_t hid_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor; -} config_descriptor = { { - 0x09, /* bLength */ - 0x02, /* bDescriptorType = Config */ - 0x0022, /* wTotalLength(L/H) = 34 bytes */ - 0x01, /* bNumInterfaces */ - 0x01, /* bConfigurationValue */ - 0x00, /* iConfiguration */ - 0xA0, /* bmAttributes (bus-powered, remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - { - /* First Interface Descriptor */ - 0x09, /* bLength */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x01, /* bNumEndpoints (one for OUT) */ - 0x03, /* bInterfaceClass = HID */ - 0x00, /* bInterfaceSubClass */ - 0x00, /* bInterfaceProtocol */ - 0x00, /* iInterface */ - }, - { - /* HID Descriptor */ - 0x09, /* bFunctionalLength */ - 0x21, /* bDescriptorType = HID */ - 0x0110, /* bcdHID Rev 1.1 */ - 0x00, /* bCountryCode */ - 0x01, /* bNumDescriptors */ - 0x22, /* bDescriptorType = Report */ - 0x002b, /* wDescriptorLength */ - }, - { - /* IN Endpoint 3 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x83, /* bEndpointAddress (EP3-IN) */ - 0x03, /* bmAttributes (interrupt) */ - 0x0040, /* wMaxPacketSize */ - 0x0a /* bInterval (milliseconds) */ - } }; - -__attribute__((aligned(4))) uint8_t report_descriptor[] = { - 0x05, 0x01, /* Usage Page (generic desktop) */ - 0x09, 0x06, /* Usage (keyboard) */ - 0xa1, 0x01, /* Collection */ - 0x05, 0x07, /* Usage Page 7 (keyboard/keypad) */ - 0x19, 0xe0, /* Usage Minimum = 224 */ - 0x29, 0xe7, /* Usage Maximum = 231 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x01, /* Logical Maximum = 1 */ - 0x75, 0x01, /* Report Size = 1 */ - 0x95, 0x08, /* Report Count = 8 */ - 0x81, 0x02, /* Input(Data,Variable,Absolute) */ - 0x95, 0x01, /* Report Count = 1 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x81, 0x01, /* Input(Constant) */ - 0x19, 0x00, /* Usage Minimum = 0 */ - 0x29, 0x65, /* Usage Maximum = 101 */ - 0x15, 0x00, /* Logical Minimum = 0 */ - 0x25, 0x65, /* Logical Maximum = 101 */ - 0x75, 0x08, /* Report Size = 8 */ - 0x95, 0x01, /* Report Count = 1 */ - 0x81, 0x00, /* Input(Data,Variable,Array) */ - 0xc0 /* End Collection */ -}; - -__attribute__((aligned(4))) uint8_t lang_id_desc[] = { - 0x04, /* bLength */ - 0x03, /* bDescriptorType */ - 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ -}; - -__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, - 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t prod_id_desc[] = { - 0x2c, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, '3', 0, '2', 0, '6', 0, '5', 0, '0', 0, ' ', 0, 'H', 0, 'I', 0, - 'D', 0, ' ', 0, 'K', 0, 'e', 0, 'y', 0, 'b', 0, 'o', 0, 'a', 0, 'r', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t serial_id_desc[] = { 0x20, /* bLength */ - 0x03, /* bDescriptorType */ - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, - '0', 0, '0', 0, '0', 0, '1', 0 }; - -#endif // EXAMPLES_MAX32690_USB_USB_HIDKEYBOARD_DESCRIPTORS_H_ diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/main.c b/Examples/MAX32690/USB/USB_HIDKeyboard/main.c deleted file mode 100644 index 92e991e3a77..00000000000 --- a/Examples/MAX32690/USB/USB_HIDKeyboard/main.c +++ /dev/null @@ -1,410 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file main.c - * @brief Demonstrates how to configure a the USB device controller as a HID keyboard class device - * @details The EvKit should enumerate as a HID Keyboard device after loading the project and - * attaching a cable from the PC to the USB connector on the Evaluation Kit. - * 1. LED0 (P2.17) will illuminate once enumeration and configuration is complete. - * 2. Open a text editor on the PC host and place cursor in edit box. - * 3. Pressing pushbutton SW1 (P0.16) will cause a message to be typed in on a virtual keyboard one character at a time. - * - */ - -#include -#include -#include "mxc_sys.h" -#include "mcr_regs.h" -#include "led.h" -#include "pb.h" -#include "mxc_delay.h" -#include "usb.h" -#include "usb_event.h" -#include "enumerate.h" -#include "hid_kbd.h" -#include "descriptors.h" -#include "nvic_table.h" - -/***** Definitions *****/ -#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS -#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) - -#define STRINGIFY(x) #x -#define TOSTRING(x) STRINGIFY(x) - -/***** Global Data *****/ -int remoteWake; -volatile int configured; -volatile int suspended; -volatile unsigned int evtFlags; - -/***** Function Prototypes *****/ -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int eventCallback(maxusb_event_t evt, void *data); -static void usbAppSleep(void); -static void usbAppWakeup(void); -static void buttonCallback(void *pb); -void usDelay(unsigned int usec); -int usbStartupCallback(); -int usbShutdownCallback(); - -const mxc_gpio_cfg_t hid_sw[] = { - // Even though SW2 in EVK defined at Port 4.0 but this goes not have GPIO interrupt - // Using P0.7 for SW2. Connect Port 4.0 to Port 0.7. - { MXC_GPIO0, MXC_GPIO_PIN_7, MXC_GPIO_FUNC_IN, MXC_GPIO_PAD_PULL_UP, MXC_GPIO_VSSEL_VDDIO }, -}; - -/******************************************************************************/ -int Hid_SW_Init(void) -{ - int retval = E_NO_ERROR; - - if (MXC_GPIO_Config(&hid_sw[0]) != E_NO_ERROR) { - retval = E_UNKNOWN; - } - - return retval; -} - -/******************************************************************************/ -void HID_SW_Handler(void) -{ - MXC_GPIO_Handler(MXC_GPIO_GET_IDX(hid_sw[0].port)); -} - -int Hid_SW_RegisterCallback(unsigned int pb, pb_callback callback) -{ - if (pb != 0) { - return E_INVALID; - } - - if (callback) { - // Register callback - MXC_GPIO_RegisterCallback(&hid_sw[pb], callback, (void *)pb); - - // Configure and enable interrupt - MXC_GPIO_IntConfig(&hid_sw[pb], MXC_GPIO_INT_FALLING); - MXC_GPIO_EnableInt(hid_sw[pb].port, hid_sw[pb].mask); - MXC_NVIC_SetVector(MXC_GPIO_GET_IRQ(MXC_GPIO_GET_IDX(hid_sw[pb].port)), HID_SW_Handler); - NVIC_EnableIRQ(MXC_GPIO_GET_IRQ(MXC_GPIO_GET_IDX(hid_sw[pb].port))); - } else { // Disable interrupt and clear callback - MXC_GPIO_DisableInt(hid_sw[pb].port, hid_sw[pb].mask); - MXC_GPIO_RegisterCallback(&hid_sw[pb], NULL, NULL); - } - - return E_NO_ERROR; -} - -int HID_SW_Get(unsigned int pb) -{ - return !MXC_GPIO_InGet(hid_sw[pb].port, hid_sw[pb].mask); -} - -/******************************************************************************/ -void USB_IRQHandler(void) -{ - MXC_USB_EventHandler(); -} - -/******************************************************************************/ -int main(void) -{ - maxusb_cfg_options_t usb_opts; - Hid_SW_Init(); - - printf("\n Connect Port 0.7 to Port 4.0"); - printf("\n\n***** " TOSTRING(TARGET) " USB HID Keyboard Example *****\n"); - printf("Waiting for VBUS...\n"); - - /* Initialize state */ - configured = 0; - suspended = 0; - evtFlags = 0; - remoteWake = 0; - - /* Start out in full speed */ - usb_opts.enable_hs = 0; - usb_opts.delay_us = usDelay; /* Function which will be used for delays */ - usb_opts.init_callback = usbStartupCallback; - usb_opts.shutdown_callback = usbShutdownCallback; - - /* Initialize the usb module */ - if (MXC_USB_Init(&usb_opts) != 0) { - printf("MXC_USB_Init() failed\n"); - - while (1) {} - } - - /* Initialize the enumeration module */ - if (enum_init() != 0) { - printf("enum_init() failed\n"); - - while (1) {} - } - - /* Register enumeration data */ - enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); - enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); - enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); - enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); - enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); - - /* Handle configuration */ - enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); - - /* Handle feature set/clear */ - enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); - enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); - - /* Initialize the class driver */ - if (hidkbd_init(&config_descriptor.interface_descriptor, &config_descriptor.hid_descriptor, - report_descriptor) != 0) { - printf("hidkbd_init() failed\n"); - - while (1) {} - } - - /* Register callbacks */ - MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); - MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); - - /* Register callback for keyboard events */ - if (Hid_SW_RegisterCallback(0, buttonCallback) != E_NO_ERROR) { - printf("HID_SW_RegisterCallback() failed\n"); - - while (1) {} - } - - /* Start with USB in low power mode */ - usbAppSleep(); - NVIC_EnableIRQ(USB_IRQn); - - /* Wait for events */ - while (1) { - if (suspended || !configured) { - LED_Off(0); - } else { - LED_On(0); - } - - if (evtFlags) { - /* Display events */ - if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_NOVBUS)) { - MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_NOVBUS); - printf("VBUS Disconnect\n"); - } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_VBUS)) { - MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_VBUS); - printf("VBUS Connect\n"); - } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_BRST)) { - MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_BRST); - printf("Bus Reset\n"); - } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_SUSP)) { - MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_SUSP); - printf("Suspended\n"); - } else if (MXC_GETBIT(&evtFlags, MAXUSB_EVENT_DPACT)) { - MXC_CLRBIT(&evtFlags, MAXUSB_EVENT_DPACT); - printf("Resume\n"); - } else if (MXC_GETBIT(&evtFlags, EVENT_ENUM_COMP)) { - MXC_CLRBIT(&evtFlags, EVENT_ENUM_COMP); - printf("Enumeration complete. Press SW2 to send character.\n"); - } else if (MXC_GETBIT(&evtFlags, EVENT_REMOTE_WAKE)) { - MXC_CLRBIT(&evtFlags, EVENT_REMOTE_WAKE); - printf("Remote Wakeup\n"); - } - } - } -} - -/******************************************************************************/ -int usbStartupCallback() -{ - MXC_SYS_ClockSourceEnable(MXC_SYS_CLOCK_IPO); - MXC_MCR->ldoctrl |= MXC_F_MCR_LDOCTRL_0P9EN; - MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); - MXC_SYS_Reset_Periph(MXC_SYS_RESET0_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -int usbShutdownCallback() -{ - MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -/* User-supplied function to delay usec micro-seconds */ -void usDelay(unsigned int usec) -{ - /* mxc_delay() takes unsigned long, so can't use it directly */ - MXC_Delay(usec); -} - -/******************************************************************************/ -static void usbAppSleep(void) -{ - /* TODO: Place low-power code here */ - suspended = 1; -} - -/******************************************************************************/ -static void usbAppWakeup(void) -{ - /* TODO: Place low-power code here */ - suspended = 0; -} - -/******************************************************************************/ -static void buttonCallback(void *pb) -{ - static const uint8_t chars[] = "Maxim Integrated\n"; - static int i = 0; - int count = 0; - int button_pressed = 0; - - //determine if interrupt triggered by bounce or a true button press - while (HID_SW_Get(0) && !button_pressed) { - count++; - - if (count > 1000) { - button_pressed = 1; - } - } - - if (button_pressed) { - LED_Toggle(0); - - if (configured) { - if (suspended && remoteWake) { - /* The bus is suspended. Wake up the host */ - suspended = 0; - usbAppWakeup(); - MXC_USB_RemoteWakeup(); - MXC_SETBIT(&evtFlags, EVENT_REMOTE_WAKE); - } else { - if (i >= (sizeof(chars) - 1)) { - i = 0; - } - - hidkbd_keypress(chars[i++]); - } - } - } -} - -/******************************************************************************/ -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - /* Confirm the configuration value */ - if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { - configured = 1; - MXC_SETBIT(&evtFlags, EVENT_ENUM_COMP); - return hidkbd_configure(config_descriptor.endpoint_descriptor.bEndpointAddress & - USB_EP_NUM_MASK); - } else if (sud->wValue == 0) { - configured = 0; - return hidkbd_deconfigure(); - } - - return -1; -} - -/******************************************************************************/ -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remoteWake = 1; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/******************************************************************************/ -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remoteWake = 0; - } else { - // Unknown callback - return -1; - } - - return 0; -} - -/******************************************************************************/ -static int eventCallback(maxusb_event_t evt, void *data) -{ - /* Set event flag */ - MXC_SETBIT(&evtFlags, evt); - - switch (evt) { - case MAXUSB_EVENT_NOVBUS: - MXC_USB_EventDisable(MAXUSB_EVENT_BRST); - MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); - MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); - MXC_USB_Disconnect(); - configured = 0; - enum_clearconfig(); - hidkbd_deconfigure(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_VBUS: - MXC_USB_EventClear(MAXUSB_EVENT_BRST); - MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_SUSP); - MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); - MXC_USB_Connect(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_BRST: - usbAppWakeup(); - enum_clearconfig(); - hidkbd_deconfigure(); - configured = 0; - suspended = 0; - break; - - case MAXUSB_EVENT_SUSP: - usbAppSleep(); - break; - - case MAXUSB_EVENT_DPACT: - usbAppWakeup(); - break; - - default: - break; - } - - return 0; -} diff --git a/Examples/MAX32690/USB/USB_HIDKeyboard/project.mk b/Examples/MAX32690/USB/USB_HIDKeyboard/project.mk deleted file mode 100644 index 582957930d9..00000000000 --- a/Examples/MAX32690/USB/USB_HIDKeyboard/project.mk +++ /dev/null @@ -1,16 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -# ********************************************************** - -# If you have secure version of MCU, set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable MAXUSB library -LIB_MAXUSB = 1 diff --git a/Examples/MAX32690/USB/USB_MassStorage/.vscode/README.md b/Examples/MAX32690/USB/USB_MassStorage/.vscode/README.md deleted file mode 100755 index 90fbcefc65d..00000000000 --- a/Examples/MAX32690/USB/USB_MassStorage/.vscode/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# VSCode-Maxim - -_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ - -## Quick Links - -* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) - -## Introduction - -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). - -The following features are supported: - -* Code editing with intellisense down to the register level -* Code compilation with the ability to easily re-target a project for different microcontrollers and boards -* Flashing programs -* GUI and command-line debugging - -## Dependencies - -* [Visual Studio Code](https://code.visualstudio.com/) - * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) -* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) - -## Installation - -Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. - -See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. - -## Usage - -See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. - -## Issue Tracker - -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. - -New issues should contain _at minimum_ the following information: - -* Visual Studio Code version #s (see `Help -> About`) -* C/C++ Extension version # -* Target microcontroller and evaluation platform -* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX32690/USB/USB_MassStorage/.vscode/settings.json b/Examples/MAX32690/USB/USB_MassStorage/.vscode/settings.json deleted file mode 100755 index 0d29e091c62..00000000000 --- a/Examples/MAX32690/USB/USB_MassStorage/.vscode/settings.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "terminal.integrated.env.windows": { - "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.defaultProfile.windows": "Command Prompt", - - "terminal.integrated.env.linux": { - "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", - "MAXIM_PATH":"${config:MAXIM_PATH}" - }, - - "target":"MAX32690", - "board":"EvKit_V1", - - "project_name":"${workspaceFolderBasename}", - - "program_file":"${config:project_name}.elf", - "symbol_file":"${config:program_file}", - - "M4_OCD_interface_file":"cmsis-dap.cfg", - "M4_OCD_target_file":"max32690.cfg", - "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", - "RV_OCD_target_file":"${config:target}_riscv.cfg", - - "v_Arm_GCC":"10.3", - "v_xPack_GCC":"12.2.0-3.1", - - "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", - "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", - "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", - "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", - "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", - - "C_Cpp.default.includePath": [ - "${workspaceFolder}", - "${workspaceFolder}/**", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", - "${config:MAXIM_PATH}/Libraries/CMSIS/Include", - "${config:ARM_GCC_path}/arm-none-eabi/include", - "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/dgb_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/enumerate", - "${config:MAXIM_PATH}/Libraries/MAXUSB/include/core/musbhsfc" - ], - "C_Cpp.default.browse.path": [ - "${workspaceFolder}", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", - "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", - "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", - "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", - "${config:MAXIM_PATH}/Libraries/MiscDrivers", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/core", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/dbg_log", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/devclass", - "${config:MAXIM_PATH}/Libraries/MAXUSB/src/enumerate" - ], - "C_Cpp.default.defines": [ - - ], - "C_Cpp.default.forcedInclude": [ - "${workspaceFolder}/build/project_defines.h" - ] -} - diff --git a/Examples/MAX32690/USB/USB_MassStorage/Makefile b/Examples/MAX32690/USB/USB_MassStorage/Makefile deleted file mode 100644 index 082a6783d23..00000000000 --- a/Examples/MAX32690/USB/USB_MassStorage/Makefile +++ /dev/null @@ -1,383 +0,0 @@ -############################################################################### - # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # - # http://www.apache.org/licenses/LICENSE-2.0 - # - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # - ############################################################################## - -# ** Readme! ** -# Don't edit this file! This is the core Makefile for a MaximSDK -# project. The available configuration options can be overridden -# in "project.mk", on the command-line, or with system environment -# variables. - -# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system -# for more detailed instructions on how to use this system. - -# The detailed instructions mentioned above are easier to read than -# this file, but the comments found in this file also outline the -# available configuration variables. This file is organized into -# sub-sections, some of which expose config variables. - - -# ******************************************************************************* -# Set the target microcontroller and board to compile for. - -# Every TARGET microcontroller has some Board Support Packages (BSPs) that are -# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP -# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. - -# Configuration Variables: -# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 -# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA - - -ifeq "$(TARGET)" "" -# Default target microcontroller -TARGET := MAX32690 -TARGET_UC := MAX32690 -TARGET_LC := max32690 -else -# "TARGET" has been overridden in the environment or on the command-line. -# We need to calculate an upper and lowercase version of the part number, -# because paths on Linux and MacOS are case-sensitive. -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) -endif - -# Default board. -BOARD ?= EvKit_V1 - -# ******************************************************************************* -# Locate the MaximSDK - -# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable -# should point to the root directory of the MaximSDK installation. Setting this manually -# is usually only required if you're working on the command-line. - -# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK -# and move up from this project's original location. - -# Configuration Variables: -# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK - - -ifneq "$(MAXIM_PATH)" "" -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -# Locate some other useful paths... -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS -endif - -# ******************************************************************************* -# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH -# in case project.mk needs to reference those values. However, we also include -# this as early as possible in the Makefile so that it can append to or override -# the variables below. - - -PROJECTMK ?= $(abspath ./project.mk) -include $(PROJECTMK) -$(info Loaded project.mk) -# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file - -# ******************************************************************************* -# Final path sanitization and re-calculation. No options here. - -ifeq "$(MAXIM_PATH)" "" -# MAXIM_PATH is still not defined... -DEPTH := ../../../../ -MAXIM_PATH := $(abspath $(DEPTH)) -$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) -$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) -else -# Sanitize MAXIM_PATH for backslashes -MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) -endif - -# Final recalculation of LIBS_DIR/CMSIS_ROOT -LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) -CMSIS_ROOT := $(LIBS_DIR)/CMSIS - -# One final UC/LC check in case user set TARGET in project.mk -TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) -TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) - -export TARGET -export TARGET_UC -export TARGET_LC -export CMSIS_ROOT -# TODO: Remove dependency on exports for these variables. - -# ******************************************************************************* -# Set up search paths, and auto-detect all source code on those paths. - -# The following paths are searched by default, where "./" is the project directory. -# ./ -# |- *.h -# |- *.c -# |-include (optional) -# |- *.h -# |-src (optional) -# |- *.c - -# Configuration Variables: -# - VPATH : Tell this Makefile to search additional locations for source (.c) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - IPATH : Tell this Makefile to search additional locations for header (.h) files. -# You should use the "+=" operator with this option. -# Ex: VPATH += your/new/path -# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. -# This is really only useful if you want to add a source file that isn't -# on any VPATH, in which case you can add the full path to the file here. -# You should use the "+=" operator with this option. -# Ex: SRCS += your/specific/source/file.c -# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on -# VPATH and add them to the build. This is enabled by default. Set -# to 0 to disable. If autosearch is disabled, source files must be -# manually added to SRCS. -# Ex: AUTOSEARCH = 0 - - -# Where to find source files for this project. -VPATH += . -VPATH += src -VPATH := $(VPATH) - -# Where to find header files for this project -IPATH += . -IPATH += include -IPATH := $(IPATH) - -AUTOSEARCH ?= 1 -ifeq ($(AUTOSEARCH), 1) -# Auto-detect all C/C++ source files on VPATH -SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) -SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) -endif - -# Collapse SRCS before passing them on to the next stage -SRCS := $(SRCS) - -# ******************************************************************************* -# Set the output filename - -# Configuration Variables: -# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject - - -# The default value creates a file named after the target micro. Ex: MAX78000.elf -PROJECT ?= $(TARGET_LC) - -# ******************************************************************************* -# Compiler options - -# Configuration Variables: -# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional -# symbols and sets -Og as the default optimization level. -# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. -# Ex: MXC_OPTIMIZE_CFLAGS = -O2 -# - PROJ_CFLAGS : Add additional compiler flags to the build. -# You should use the "+=" operator with this option. -# Ex: PROJ_CFLAGS += -Wextra -# - MFLOAT_ABI : Set the floating point acceleration level. -# The only options are "hard", "soft", or "softfp". -# Ex: MFLOAT_ABI = hard -# - LINKERFILE : Override the default linkerfile. -# Ex: LINKERFILE = customlinkerfile.ld -# - LINKERPATH : Override the default search location for $(LINKERFILE) -# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC -# If $(LINKERFILE) cannot be found at this path, then the root project -# directory will be used as a fallback. - -# Select 'GCC' or 'IAR' compiler -ifeq "$(COMPILER)" "" -COMPILER := GCC -endif - -# Set default compiler optimization levels -ifeq "$(MAKECMDGOALS)" "release" -# Default optimization level for "release" builds (make release) -MXC_OPTIMIZE_CFLAGS ?= -O2 -DEBUG = 0 -endif - -ifeq ($(DEBUG),1) -# Optimizes for debugging as recommended -# by GNU for code-edit-debug cycles -# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options -MXC_OPTIMIZE_CFLAGS := -Og -endif - -# Default level if not building for release or explicitly for debug -MXC_OPTIMIZE_CFLAGS ?= -Og - -# Set compiler flags -PROJ_CFLAGS += -Wall # Enable warnings -PROJ_CFLAGS += -DMXC_ASSERT_ENABLE - -# Set hardware floating point acceleration. -# Options are: -# - hard -# - soft -# - softfp (default if MFLOAT_ABI is not set) -MFLOAT_ABI ?= softfp -# MFLOAT_ABI must be exported to other Makefiles -export MFLOAT_ABI - -# This path contains system-level intialization files for the target micro. Add to the build. -VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source - -# ******************************************************************************* -# Secure Boot Tools (SBT) - -# This section integrates the Secure Boot Tools. It's intended for use with -# microcontrollers that have a secure bootloader. - -# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. - -# Configuration variables: -# SBT : Toggle SBT integration. Set to 1 to enable, or 0 -# to disable -# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to -# Tools/SBT in the MaximSDK. The standalone SBT installer will override -# this via an environment variable. -# TARGET_SEC : Specify the part number to be passed into the SBT. This should match -# the secure variant part #. The default value will depend on TARGET. -# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and -# the default selection happens in Tools/SBT/SBT-config. -# However, if there are multiple secure part #s for the target -# microcontroller this variable may need to be changed. - -SBT ?= 0 -ifeq ($(SBT), 1) -MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT -MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) -# ^ Must sanitize path for \ on Windows, since this may come from an environment -# variable. - -export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work - -# SBT-config.mk and SBT-rules.mk are included further down this Makefile. - -endif # SBT - -# ******************************************************************************* -# Default goal selection. This section allows you to override the default goal -# that will run if no targets are specified on the command-line. -# (ie. just running 'make' instead of 'make all') - -# Configuration variables: -# .DEFAULT_GOAL : Set the default goal if no targets were specified on the -# command-line -# ** "override" must be used with this variable. ** -# Ex: "override .DEFAULT_GOAL = mygoal" - -ifeq "$(.DEFAULT_GOAL)" "" -ifeq ($(SBT),1) -override .DEFAULT_GOAL := sla -else -override .DEFAULT_GOAL := all -endif -endif - -# Developer note: 'override' is used above for legacy Makefile compatibility. -# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system -# uses 'override' to come in over the top without breaking old projects. - -# It's also necessary to explicitly set MAKECMDGOALS... -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - -# Enable colors when --sync-output is used. -# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) -ifneq ($(MAKE_TERMOUT),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -ifneq ($(FORCE_COLOR),) -PROJ_CFLAGS += -fdiagnostics-color=always -endif - -# ******************************************************************************* -# Include SBT config. We need to do this here because it needs to know -# the current MAKECMDGOAL. -ifeq ($(SBT),1) -include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk -endif - -# ******************************************************************************* -# Libraries - -# This section offers "toggle switches" to include or exclude the libraries that -# are available in the MaximSDK. Set a configuration variable to 1 to include the -# library in the build, or 0 to exclude. - -# Each library may also have its own library specific configuration variables. See -# Libraries/libs.mk for more details. - -# Configuration variables: -# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) -# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) -# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. -# - LIB_CORDIO : Include the Cordio BLE library -# - LIB_FCL : Include the Free Cryptographic Library (FCL) -# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries -# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library -# - LIB_LITTLEFS : Include the "little file system" (littleFS) library -# - LIB_LWIP : Include the lwIP library -# - LIB_MAXUSB : Include the MAXUSB library -# - LIB_SDHC : Include the SDHC library - -include $(LIBS_DIR)/libs.mk - - -# ******************************************************************************* -# Rules - -# Include the rules for building for this target. All other makefiles should be -# included before this one. -include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk - -# Include the rules that integrate the SBTs. SBTs are a special case that must be -# include after the core gcc rules to extend them. -ifeq ($(SBT), 1) -include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk -endif - - -# Get .DEFAULT_GOAL working. -ifeq "$(MAKECMDGOALS)" "" -MAKECMDGOALS:=$(.DEFAULT_GOAL) -endif - - -all: -# Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf - -libclean: - $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph - -clean: -# Extend the functionality of the "clean" recipe here - -# The rule to clean out all the build products. -distclean: clean libclean diff --git a/Examples/MAX32690/USB/USB_MassStorage/README.md b/Examples/MAX32690/USB/USB_MassStorage/README.md deleted file mode 100644 index cdd0e84de95..00000000000 --- a/Examples/MAX32690/USB/USB_MassStorage/README.md +++ /dev/null @@ -1,38 +0,0 @@ -## Description - -The example demonstates the use of USB Mass Storage driver class. After doing the required connections given below, run the program and a new portable device appears in the device manager. It will appear as a new drive which can be read and written to. - -## Software - -### Project Usage - -Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. - -### Project-Specific Build Notes - -(None - this project builds as a standard example) - -## Required Connections - -If using the MAX32690EVKIT: -- Connect a USB cable between the PC and the CN2 (USB/PWR/UART) connector. -- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. -- Connect a USB cable between the PC and the CN1 (USB/PWR) connector. - -If using the MAX32690FTHR: -- Connect a USB cable between the PC and the J5 (USB/PWR) connector. -- Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. - -## Expected Output - -The Console UART of the device will output these messages: - -``` -***** MAX32690 USB Mass Storage Example ***** -Waiting for VBUS... -VBUS Connect -Suspended -Bus Reset -Bus Reset Done: High speed -Enumeration complete. -``` diff --git a/Examples/MAX32690/USB/USB_MassStorage/descriptors.h b/Examples/MAX32690/USB/USB_MassStorage/descriptors.h deleted file mode 100644 index 70548520f9f..00000000000 --- a/Examples/MAX32690/USB/USB_MassStorage/descriptors.h +++ /dev/null @@ -1,181 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -#ifndef EXAMPLES_MAX32690_USB_USB_MASSSTORAGE_DESCRIPTORS_H_ -#define EXAMPLES_MAX32690_USB_USB_MASSSTORAGE_DESCRIPTORS_H_ - -#include -#include "usb.h" -#include "hid_kbd.h" - -MXC_USB_device_descriptor_t __attribute__((aligned(4))) device_descriptor = { - 0x12, /* bLength = 18 */ - 0x01, /* bDescriptorType = Device */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x00, /* bDeviceClass = Unspecified */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x0B6A, /* idVendor (Maxim Integrated) */ - 0x4402, /* idProduct */ - 0x0100, /* bcdDevice */ - 0x01, /* iManufacturer Descriptor ID */ - 0x02, /* iProduct Descriptor ID */ - 0x03, /* iSerialNumber = (0) No string */ - 0x01 /* bNumConfigurations */ -}; - -/* Device qualifier needed for high-speed operation */ -MXC_USB_device_qualifier_descriptor_t __attribute__((aligned(4))) device_qualifier_descriptor = { - 0x0A, /* bLength = 10 */ - 0x06, /* bDescriptorType = Device Qualifier */ - 0x0200, /* bcdUSB USB spec rev (BCD) */ - 0x00, /* bDeviceClass = Unspecified */ - 0x00, /* bDeviceSubClass */ - 0x00, /* bDeviceProtocol */ - 0x40, /* bMaxPacketSize0 is 64 bytes */ - 0x01, /* bNumConfigurations */ - 0x00 /* Reserved, must be 0 */ -}; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #0 Mass Storage Device */ - MXC_USB_interface_descriptor_t msc_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; -} config_descriptor = { { - 0x09, /* bLength = 9 */ - 0x02, /* bDescriptorType = Config (2) */ - 0x0020, /* wTotalLength(L/H) */ - 0x01, /* bNumInterfaces */ - 0x01, /* bConfigValue */ - 0x00, /* iConfiguration */ - 0xC0, /* bmAttributes (self-powered, no remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - { - /* First Interface Descriptor For MSC Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints (one for INm one for OUT) */ - 0x08, /* bInterfaceClass = Mass Storage (8) */ - 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ - 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ - 0x00, /* iInterface */ - }, - { - /* OUT Endpoint 1 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00, /* bInterval (N/A) */ - }, - { - /* IN Endpoint 2 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0040, /* wMaxPacketSize */ - 0x00 /* bInterval (N/A) */ - } }; - -__attribute__((aligned(4))) struct __attribute__((packed)) { - MXC_USB_configuration_descriptor_t config_descriptor; - /* Interface #0 Mass Storage Device */ - MXC_USB_interface_descriptor_t msc_interface_descriptor; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_1; - MXC_USB_endpoint_descriptor_t endpoint_descriptor_2; -} config_descriptor_hs = { { - 0x09, /* bLength = 9 */ - 0x02, /* bDescriptorType = Config (2) */ - 0x0020, /* wTotalLength(L/H) */ - 0x01, /* bNumInterfaces */ - 0x01, /* bConfigValue */ - 0x00, /* iConfiguration */ - 0xC0, /* bmAttributes (self-powered, no remote wakeup) */ - 0x32, /* MaxPower is 100ma (units are 2ma/bit) */ - }, - { - /* First Interface Descriptor For MSC Interface */ - 0x09, /* bLength = 9 */ - 0x04, /* bDescriptorType = Interface (4) */ - 0x00, /* bInterfaceNumber */ - 0x00, /* bAlternateSetting */ - 0x02, /* bNumEndpoints (one for INm one for OUT) */ - 0x08, /* bInterfaceClass = Mass Storage (8) */ - 0x06, /* bInterfaceSubClass = SCSI Transparent Command Set */ - 0x50, /* bInterfaceProtocol = Bulk-Only Transport */ - 0x00, /* iInterface */ - }, - { - /* OUT Endpoint 1 (Descriptor #1) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x01, /* bEndpointAddress (EP1-OUT) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x01, /* bInterval */ - }, - { - /* IN Endpoint 2 (Descriptor #2) */ - 0x07, /* bLength */ - 0x05, /* bDescriptorType (Endpoint) */ - 0x82, /* bEndpointAddress (EP2-IN) */ - 0x02, /* bmAttributes (bulk) */ - 0x0200, /* wMaxPacketSize */ - 0x01 /* bInterval */ - } }; - -__attribute__((aligned(4))) uint8_t lang_id_desc[] = { - 0x04, /* bLength */ - 0x03, /* bDescriptorType */ - 0x09, 0x04 /* bString = wLANGID (see usb_20.pdf 9.6.7 String) */ -}; - -__attribute__((aligned(4))) uint8_t mfg_id_desc[] = { - 0x22, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'a', 0, 'x', 0, 'i', 0, 'm', 0, ' ', 0, 'I', 0, 'n', 0, - 't', 0, 'e', 0, 'g', 0, 'r', 0, 'a', 0, 't', 0, 'e', 0, 'd', 0, -}; - -__attribute__((aligned(4))) uint8_t prod_id_desc[] = { - 0x38, /* bLength */ - 0x03, /* bDescriptorType */ - 'M', 0, 'A', 0, 'X', 0, 'U', 0, 'S', 0, 'B', 0, ' ', 0, 'M', 0, 'a', 0, - 's', 0, 's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, 'g', 0, - 'e', 0, ' ', 0, 'E', 0, 'x', 0, 'a', 0, 'm', 0, 'p', 0, 'l', 0, 'e', 0, -}; - -/* Not currently used (see device descriptor), but could be enabled if desired */ -__attribute__((aligned(4))) -uint8_t serial_id_desc[] = { 26, /* bLength */ - 0x03, /* bDescriptorType */ - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, - '0', 0, '0', 0, '0', 0, '0', 0, '0', 0, '1', 0 }; - -#endif // EXAMPLES_MAX32690_USB_USB_MASSSTORAGE_DESCRIPTORS_H_ diff --git a/Examples/MAX32690/USB/USB_MassStorage/main.c b/Examples/MAX32690/USB/USB_MassStorage/main.c deleted file mode 100644 index 8a08d1fcf86..00000000000 --- a/Examples/MAX32690/USB/USB_MassStorage/main.c +++ /dev/null @@ -1,361 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file main.c - * @brief USB Mass Storage Class example - * @details This project creates a mass storage device using either on-board RAM or - * external SPI flash memory. Load the project, connect a cable from the PC - * to the USB connector. A new external drive should appear than can be read - * and written. - */ - -#include -#include -#include "mxc_sys.h" -#include "mcr_regs.h" -#include "mxc_delay.h" -#include "board.h" -#include "led.h" -#include "usb.h" -#include "usb_event.h" -#include "enumerate.h" -#include "msc.h" -#include "descriptors.h" -#include "mscmem.h" - -/***** Definitions *****/ -#define EVENT_ENUM_COMP MAXUSB_NUM_EVENTS -#define EVENT_REMOTE_WAKE (EVENT_ENUM_COMP + 1) - -#define BUFFER_SIZE 64 - -#define STRINGIFY(x) #x -#define TOSTRING(x) STRINGIFY(x) - -/***** Global Data *****/ -volatile int configured; -volatile int suspended; -volatile unsigned int event_flags; -int remote_wake_en; - -/***** Function Prototypes *****/ -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata); -static int eventCallback(maxusb_event_t evt, void *data); -static void usbAppSleep(void); -static void usbAppWakeup(void); -int usbStartupCallback(); -int usbShutdownCallback(); - -/***** File Scope Variables *****/ - -/* Defaults, which will be changed by the configuration code */ -static msc_cfg_t msc_cfg = { - 1, /* EP OUT */ - MXC_USBHS_MAX_PACKET, /* OUT max packet size */ - 2, /* EP IN */ - MXC_USBHS_MAX_PACKET, /* IN max packet size */ -}; - -static const msc_idstrings_t ids = { - "MAXIM", /* Vendor string. Maximum of 8 bytes */ - "MSC Example", /* Product string. Maximum of 16 bytes */ - "1.0" /* Version string. Maximum of 4 bytes */ -}; - -/* Functions to control "disk" memory. See msc.h for definitions. */ -static const msc_mem_t mem = { - mscmem_Init, mscmem_Start, mscmem_Stop, mscmem_Ready, mscmem_Size, mscmem_Read, mscmem_Write, -}; - -/* User-supplied function to delay usec micro-seconds */ -void delay_us(unsigned int usec) -{ - /* mxc_delay() takes unsigned long, so can't use it directly */ - MXC_Delay(usec); -} - -/******************************************************************************/ -int main(void) -{ - maxusb_cfg_options_t usb_opts; - - printf("\n\n***** " TOSTRING(TARGET) " USB Mass Storage Example *****\n"); - printf("Waiting for VBUS...\n"); - - /* Initialize state */ - configured = 0; - suspended = 0; - event_flags = 0; - remote_wake_en = 0; - - /* Start out in full speed */ - usb_opts.enable_hs = 1; - usb_opts.delay_us = delay_us; /* Function which will be used for delays */ - usb_opts.init_callback = usbStartupCallback; - usb_opts.shutdown_callback = usbShutdownCallback; - - /* Initialize the usb module */ - if (MXC_USB_Init(&usb_opts) != 0) { - printf("usb_init() failed\n"); - while (1) {} - } - - /* Initialize the enumeration module */ - if (enum_init() != 0) { - printf("enum_init() failed\n"); - while (1) {} - } - - /* Register enumeration data */ - enum_register_descriptor(ENUM_DESC_DEVICE, (uint8_t *)&device_descriptor, 0); - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); - - if (usb_opts.enable_hs) { - /* Two additional descriptors needed for high-speed operation */ - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); - enum_register_descriptor(ENUM_DESC_QUAL, (uint8_t *)&device_qualifier_descriptor, 0); - } - - enum_register_descriptor(ENUM_DESC_STRING, lang_id_desc, 0); - enum_register_descriptor(ENUM_DESC_STRING, mfg_id_desc, 1); - enum_register_descriptor(ENUM_DESC_STRING, prod_id_desc, 2); - enum_register_descriptor(ENUM_DESC_STRING, serial_id_desc, 3); - - /* Handle configuration */ - enum_register_callback(ENUM_SETCONFIG, setconfigCallback, NULL); - - /* Handle feature set/clear */ - enum_register_callback(ENUM_SETFEATURE, setfeatureCallback, NULL); - enum_register_callback(ENUM_CLRFEATURE, clrfeatureCallback, NULL); - - /* Initialize the class driver */ - if (msc_init(&config_descriptor.msc_interface_descriptor, &ids, &mem) != 0) { - printf("msc_init() failed\n"); - while (1) {} - } - - /* Register callbacks */ - MXC_USB_EventEnable(MAXUSB_EVENT_NOVBUS, eventCallback, NULL); - MXC_USB_EventEnable(MAXUSB_EVENT_VBUS, eventCallback, NULL); - - /* Start with USB in low power mode */ - usbAppSleep(); - NVIC_EnableIRQ(USB_IRQn); - - /* Wait for events */ - while (1) { - if (suspended || !configured) { - LED_Off(0); - } else { - LED_On(0); - } - - if (event_flags) { - /* Display events */ - if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_NOVBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_NOVBUS); - printf("VBUS Disconnect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_VBUS)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_VBUS); - printf("VBUS Connect\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRST)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRST); - printf("Bus Reset\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_BRSTDN)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_BRSTDN); - printf("Bus Reset Done: %s speed\n", - (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) ? "High" : "Full"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_SUSP)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_SUSP); - printf("Suspended\n"); - } else if (MXC_GETBIT(&event_flags, MAXUSB_EVENT_DPACT)) { - MXC_CLRBIT(&event_flags, MAXUSB_EVENT_DPACT); - printf("Resume\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_ENUM_COMP)) { - MXC_CLRBIT(&event_flags, EVENT_ENUM_COMP); - printf("Enumeration complete.\n"); - } else if (MXC_GETBIT(&event_flags, EVENT_REMOTE_WAKE)) { - MXC_CLRBIT(&event_flags, EVENT_REMOTE_WAKE); - printf("Remote Wakeup\n"); - } - } - } -} - -/******************************************************************************/ -static int setconfigCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - /* Confirm the configuration value */ - if (sud->wValue == config_descriptor.config_descriptor.bConfigurationValue) { - configured = 1; - MXC_SETBIT(&event_flags, EVENT_ENUM_COMP); - - if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { - msc_cfg.out_ep = config_descriptor_hs.endpoint_descriptor_1.bEndpointAddress & 0x7; - msc_cfg.out_maxpacket = config_descriptor_hs.endpoint_descriptor_1.wMaxPacketSize; - msc_cfg.in_ep = config_descriptor_hs.endpoint_descriptor_2.bEndpointAddress & 0x7; - msc_cfg.in_maxpacket = config_descriptor_hs.endpoint_descriptor_2.wMaxPacketSize; - } else { - msc_cfg.out_ep = config_descriptor.endpoint_descriptor_1.bEndpointAddress & 0x7; - msc_cfg.out_maxpacket = config_descriptor.endpoint_descriptor_1.wMaxPacketSize; - msc_cfg.in_ep = config_descriptor.endpoint_descriptor_2.bEndpointAddress & 0x7; - msc_cfg.in_maxpacket = config_descriptor.endpoint_descriptor_2.wMaxPacketSize; - } - - return msc_configure(&msc_cfg); /* Configure the device class */ - - } else if (sud->wValue == 0) { - configured = 0; - return msc_deconfigure(); - } - - return -1; -} - -/******************************************************************************/ -int usbStartupCallback() -{ - MXC_SYS_ClockSourceEnable(MXC_SYS_CLOCK_IPO); - MXC_MCR->ldoctrl |= MXC_F_MCR_LDOCTRL_0P9EN; - MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_USB); - MXC_SYS_Reset_Periph(MXC_SYS_RESET0_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -int usbShutdownCallback() -{ - MXC_SYS_ClockDisable(MXC_SYS_PERIPH_CLOCK_USB); - - return E_NO_ERROR; -} - -/******************************************************************************/ -static int setfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 1; - } else { - /* Unknown callback */ - return -1; - } - - return 0; -} - -/******************************************************************************/ -static int clrfeatureCallback(MXC_USB_SetupPkt *sud, void *cbdata) -{ - if (sud->wValue == FEAT_REMOTE_WAKE) { - remote_wake_en = 0; - } else { - /* Unknown callback */ - return -1; - } - - return 0; -} - -/******************************************************************************/ -static void usbAppSleep(void) -{ - /* TODO: Place low-power code here */ - suspended = 1; -} - -/******************************************************************************/ -static void usbAppWakeup(void) -{ - /* TODO: Place low-power code here */ - suspended = 0; -} - -/******************************************************************************/ -static int eventCallback(maxusb_event_t evt, void *data) -{ - /* Set event flag */ - MXC_SETBIT(&event_flags, evt); - - switch (evt) { - case MAXUSB_EVENT_NOVBUS: - MXC_USB_EventDisable(MAXUSB_EVENT_BRST); - MXC_USB_EventDisable(MAXUSB_EVENT_SUSP); - MXC_USB_EventDisable(MAXUSB_EVENT_DPACT); - MXC_USB_Disconnect(); - configured = 0; - enum_clearconfig(); - msc_deconfigure(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_VBUS: - MXC_USB_EventClear(MAXUSB_EVENT_BRST); - MXC_USB_EventEnable(MAXUSB_EVENT_BRST, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_BRSTDN); - MXC_USB_EventEnable(MAXUSB_EVENT_BRSTDN, eventCallback, NULL); - MXC_USB_EventClear(MAXUSB_EVENT_SUSP); - MXC_USB_EventEnable(MAXUSB_EVENT_SUSP, eventCallback, NULL); - MXC_USB_Connect(); - usbAppSleep(); - break; - - case MAXUSB_EVENT_BRST: - usbAppWakeup(); - enum_clearconfig(); - msc_deconfigure(); - configured = 0; - suspended = 0; - break; - - case MAXUSB_EVENT_BRSTDN: - if (MXC_USB_GetStatus() & MAXUSB_STATUS_HIGH_SPEED) { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor_hs, 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor, 0); - } else { - enum_register_descriptor(ENUM_DESC_CONFIG, (uint8_t *)&config_descriptor, 0); - enum_register_descriptor(ENUM_DESC_OTHER, (uint8_t *)&config_descriptor_hs, 0); - } - break; - - case MAXUSB_EVENT_SUSP: - usbAppSleep(); - break; - - case MAXUSB_EVENT_DPACT: - usbAppWakeup(); - break; - - default: - break; - } - - return 0; -} - -/******************************************************************************/ -void USB_IRQHandler(void) -{ - MXC_USB_EventHandler(); -} diff --git a/Examples/MAX32690/USB/USB_MassStorage/mscmem.c b/Examples/MAX32690/USB/USB_MassStorage/mscmem.c deleted file mode 100644 index 6545231e718..00000000000 --- a/Examples/MAX32690/USB/USB_MassStorage/mscmem.c +++ /dev/null @@ -1,313 +0,0 @@ -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ - -/** - * @file mscmem.h - * @brief Memory routines used by the USB Mass Storage Class example. - * See the msc_mem_t structure in msc.h for function details. - * @details Functions are provided for using the internal RAM of the - * device or the external SPI flash memory. Use the SPIXF_DISK - * and RAM_DISK defines to select the desired memory at compile - * time. - */ - -#include "mscmem.h" -#include -#include -//#include "Ext_Flash.h" -//#include "spixf.h" - -/***** Definitions *****/ - -#define SPIXF_DISK 0 -#define RAM_DISK 1 - -#define LBA_SIZE 512 /* Size of "logical blocks" in bytes */ -#define LBA_SIZE_SHIFT 9 /* The shift value used to convert between addresses and block numbers */ - -/***** Global Data *****/ - -/***** File Scope Variables *****/ - -static int initialized = 0; -static int running = 0; - -#if SPIXF_DISK - -#undef EXT_FLASH_BAUD -#define EXT_FLASH_BAUD 5000000 /* SPI clock rate to communicate with the external flash */ - -#define EXT_FLASH_SECTOR_SIZE 4096 /* Number of bytes in one sector of the external flash */ -#define EXT_FLASH_SECTOR_SIZE_SHIFT \ - 12 /* The shift value used to convert between addresses and block numbers */ -#define EXT_FLASH_NUM_SECTORS 2048 /* Total number of sectors in the external flash */ - -#define MXC_SPIXF_WIDTH Ext_Flash_DataLine_Single /*Number of data lines*/ - -#define LBA_PER_SECTOR (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) -#define INVALID_SECTOR \ - EXT_FLASH_NUM_SECTORS /* Use a sector number past the end of memory to indicate invalid */ - -/***** File Scope Variables *****/ -static uint32_t sectorNum = INVALID_SECTOR; -static uint8_t sector[EXT_FLASH_SECTOR_SIZE]; -static int sectorDirty = 0; - -/***** Function Prototypes *****/ -static uint32_t getSectorNum(uint32_t lba); -static uint32_t getSectorAddr(uint32_t lba); -static uint32_t getSector(uint32_t num); - -/******************************************************************************/ -static uint32_t getSectorNum(uint32_t lba) -{ - /* Absolute_address = lba * LBA_SIZE */ - /* Sector_num = Absolute_address / EXT_FLASH_SECTOR_SIZE */ - /* Sector_num = lba * 512 / 4096 */ - return lba >> (EXT_FLASH_SECTOR_SIZE_SHIFT - LBA_SIZE_SHIFT); -} - -/******************************************************************************/ -static uint32_t getSectorAddr(uint32_t lba) -{ - /* eight 512 byte blocks in each sector */ - return (lba & (LBA_PER_SECTOR - 1)) << LBA_SIZE_SHIFT; -} - -/******************************************************************************/ -static uint32_t getSector(uint32_t num) -{ - /* New sector requested? */ - if (sectorNum != num) { - /* Is the current sector real? */ - if (sectorNum != INVALID_SECTOR) { - /* Was it written to after it was read from memory? */ - if (sectorDirty) { - /* Erase the old data. */ - Ext_Flash_Erase(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, Ext_Flash_Erase_4K); - /* Write the new */ - Ext_Flash_Program_Page(sectorNum << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, - EXT_FLASH_SECTOR_SIZE, MXC_SPIXF_WIDTH); - /* Mark data as clean */ - sectorDirty = 0; - } - } - - /* Requesting a new valid sector? */ - if (num != INVALID_SECTOR) { - Ext_Flash_Read(num << EXT_FLASH_SECTOR_SIZE_SHIFT, sector, EXT_FLASH_SECTOR_SIZE, - MXC_SPIXF_WIDTH); - sectorDirty = 0; - sectorNum = num; - } - } - - return 0; -} - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - MXC_SPIXF_SetSPIFrequency(EXT_FLASH_BAUD); - Ext_Flash_Init(); - Ext_Flash_Reset(); - - if (MXC_SPIXF_WIDTH == Ext_Flash_DataLine_Quad) { - Ext_Flash_Quad(1); - } else { - Ext_Flash_Quad(0); - } - - initialized = 1; - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - /* Get number of 512 byte chunks the external flash contains. */ - return (EXT_FLASH_SECTOR_SIZE >> LBA_SIZE_SHIFT) * EXT_FLASH_NUM_SECTORS; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to external flash sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from external flash */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(buffer, sector + addr, LBA_SIZE); - - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - uint32_t addr; - - /* Convert to external flash sector number. */ - uint32_t sNum = getSectorNum(lba); - - if (getSector(sNum)) { - /* Failed to write/read from external flash */ - return 1; - } - - /* Get the offset into the current sector */ - addr = getSectorAddr(lba); - - memcpy(sector + addr, buffer, LBA_SIZE); - sectorDirty = 1; - - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Turn on the external flash if it is not already. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the initialization succeeded. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* TODO - could shut down XIPF interface here. */ - - /* Flush the currently cached sector if necessary. */ - if (getSector(INVALID_SECTOR)) { - return 1; - } - - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#elif RAM_DISK - -#define NUM_PAGES 0x100 -static uint8_t mem[NUM_PAGES][LBA_SIZE]; - -/******************************************************************************/ -int mscmem_Init() -{ - if (!initialized) { - initialized = 1; -#if (ERASE_MEMORY_ON_INIT) - memset(mem, 0, sizeof(mem)); -#endif - } - - return 0; -} - -/******************************************************************************/ -uint32_t mscmem_Size(void) -{ - return NUM_PAGES; -} - -/******************************************************************************/ -int mscmem_Read(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(buffer, mem[lba], LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Write(uint32_t lba, uint8_t *buffer) -{ - if (lba >= NUM_PAGES) { - return 1; - } - - memcpy(mem[lba], buffer, LBA_SIZE); - return 0; -} - -/******************************************************************************/ -int mscmem_Start() -{ - /* Not much to do for this implementation. The RAM is always ready. */ - if (!initialized) { - mscmem_Init(); - } - - /* Check if the RAM has been initialized. If it has, start running. */ - if (initialized) { - running = 1; - } - - /* Start should return fail (non-zero) if the memory cannot be initialized. */ - return !initialized; -} - -/******************************************************************************/ -int mscmem_Stop() -{ - /* Nothing to do for this implementation. All data is written as it is */ - /* received so there are no pending writes that need to be flushed. */ - running = 0; - return 0; -} - -/******************************************************************************/ -int mscmem_Ready() -{ - return running; -} - -#else -#error "You must assign either RAM_DISK or SPIXF_DISK to 1." -#endif diff --git a/Examples/MAX32690/USB/USB_MassStorage/mscmem.h b/Examples/MAX32690/USB/USB_MassStorage/mscmem.h deleted file mode 100644 index 6dfb7dbd126..00000000000 --- a/Examples/MAX32690/USB/USB_MassStorage/mscmem.h +++ /dev/null @@ -1,85 +0,0 @@ -/** - * @file - * @brief Memory routines used by the USB Mass Storage Class example. - * See the @ref msc_mem_t structure in msc.h for function details. - */ - -/****************************************************************************** - * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - ******************************************************************************/ -#ifndef EXAMPLES_MAX32690_USB_USB_MASSSTORAGE_MSCMEM_H_ -#define EXAMPLES_MAX32690_USB_USB_MASSSTORAGE_MSCMEM_H_ - -/* **** Include Files **** */ -#include - -/* **** Definitions **** */ -#define ERASE_MEMORY_ON_INIT \ - 1 /* Configuration option to clear the memory (to 0s) on initialization. */ -/* Use 1 to clear or 0 to leave untouched. */ -/** - * @brief Perform any initialization necessary to prepare the memory for reading/writing data. - * @returns 0 if initialization is successful, non-zero if an error occurred. - */ -int mscmem_Init(void); - -/** - * @brief Activates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Start(void); - -/** - * @brief Deactivates the memory. - * @returns 0 if activation is successful, non-zero if an error occurred. - */ -int mscmem_Stop(void); - -/** - * @brief Reports the total size of the mass-storage memory. - * @returns The number of 512 byte blocks contained in the memory. - */ -uint32_t mscmem_Size(void); - -/** - * @brief Reads 512 bytes of data from the memory. - * @param lba The index of the 512 byte block to read. - * @param buffer A byte array of at least 512 bytes to hold the values read. - * @returns 0 if reading is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Read(uint32_t lba, uint8_t *buffer); - -/** - * @brief Writes 512 bytes of data to the memory. - * @param lba The index of the 512 byte block to write. - * @param buffer A byte array of at least 512 bytes holding the values to write. - * @returns 0 if writing is successful, non-zero if an error occurred. - * @returns - */ -int mscmem_Write(uint32_t lba, uint8_t *buffer); - -/** - * @brief Checks if the memory is ready to be read/written. - * @returns non-zero if the memory is ready, 0 otherwise. - */ -int mscmem_Ready(void); - -#endif // EXAMPLES_MAX32690_USB_USB_MASSSTORAGE_MSCMEM_H_ diff --git a/Examples/MAX32690/USB/USB_MassStorage/project.mk b/Examples/MAX32690/USB/USB_MassStorage/project.mk deleted file mode 100644 index 582957930d9..00000000000 --- a/Examples/MAX32690/USB/USB_MassStorage/project.mk +++ /dev/null @@ -1,16 +0,0 @@ -# This file can be used to set build configuration -# variables. These variables are defined in a file called -# "Makefile" that is located next to this one. - -# For instructions on how to use this system, see -# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system - -# ********************************************************** - -# If you have secure version of MCU, set SBT=1 to generate signed binary -# For more information on how sing process works, see -# https://www.analog.com/en/education/education-library/videos/6313214207112.html -SBT=0 - -# Enable MAXUSB library -LIB_MAXUSB = 1 diff --git a/Examples/MAX32690/WUT/.vscode/README.md b/Examples/MAX32690/WUT/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/WUT/.vscode/README.md +++ b/Examples/MAX32690/WUT/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/WUT/.vscode/settings.json b/Examples/MAX32690/WUT/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/WUT/.vscode/settings.json +++ b/Examples/MAX32690/WUT/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/WUT/Makefile b/Examples/MAX32690/WUT/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/WUT/Makefile +++ b/Examples/MAX32690/WUT/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/WUT/README.md b/Examples/MAX32690/WUT/README.md index a0841eac321..1abda25ab13 100644 --- a/Examples/MAX32690/WUT/README.md +++ b/Examples/MAX32690/WUT/README.md @@ -1,5 +1,5 @@ ## Description -This example shows how to wake up a device with the wakeup timer. Pressing SW2 (SW3 on feather board) will put the device into sleep mode and enable the wakeup timer to trigger a wakeup event after MILLISECONDS\_WUT number of ms (defined at the top of _main.c_). +This example shows how to wake up a device with the wakeup timer. Pressing SW2 (SW3 on feather board) will put the device into sleep mode and enable the wakeup timer to trigger a wakeup event after MILLISECONDS\_WUT number of ms (defined at the top of _main.c_). ## Software @@ -22,6 +22,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output ``` diff --git a/Examples/MAX32690/WUT/main.c b/Examples/MAX32690/WUT/main.c index 1cd8a0ad188..5b021919efa 100644 --- a/Examples/MAX32690/WUT/main.c +++ b/Examples/MAX32690/WUT/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -56,7 +55,7 @@ void setTrigger(int waitForTrigger) while (MXC_UART_ReadyForSleep(MXC_UART_GET_UART(CONSOLE_UART)) != E_NO_ERROR) {} } -void WUT0_IRQHandler() +void WUT0_IRQHandler(void) { MXC_WUT_IntClear(); } diff --git a/Examples/MAX32690/WUT/project.mk b/Examples/MAX32690/WUT/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/WUT/project.mk +++ b/Examples/MAX32690/WUT/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/Watchdog/.vscode/README.md b/Examples/MAX32690/Watchdog/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/Watchdog/.vscode/README.md +++ b/Examples/MAX32690/Watchdog/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/Watchdog/.vscode/settings.json b/Examples/MAX32690/Watchdog/.vscode/settings.json index 7104d63a208..abd00ff497a 100755 --- a/Examples/MAX32690/Watchdog/.vscode/settings.json +++ b/Examples/MAX32690/Watchdog/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/Watchdog/Makefile b/Examples/MAX32690/Watchdog/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/Watchdog/Makefile +++ b/Examples/MAX32690/Watchdog/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/Watchdog/README.md b/Examples/MAX32690/Watchdog/README.md index d9c31d784fc..c5d526b519f 100644 --- a/Examples/MAX32690/Watchdog/README.md +++ b/Examples/MAX32690/Watchdog/README.md @@ -30,6 +30,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/Watchdog/main.c b/Examples/MAX32690/Watchdog/main.c index b2df387fe77..b806b0c7428 100644 --- a/Examples/MAX32690/Watchdog/main.c +++ b/Examples/MAX32690/Watchdog/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +54,7 @@ static mxc_wdt_cfg_t cfg; /***** Functions *****/ // ***************************************************************************** -void watchdogHandler() +void watchdogHandler(void) { MXC_WDT_ClearIntFlag(MXC_WDT0); printf("\nTIMEOUT! \n"); @@ -67,14 +66,14 @@ void WDT0_IRQHandler(void) watchdogHandler(); } // ***************************************************************************** -void MXC_WDT_Setup() +void MXC_WDT_Setup(void) { MXC_WDT_Disable(MXC_WDT0); MXC_WDT_ResetTimer(MXC_WDT0); MXC_WDT_Enable(MXC_WDT0); } -void SW_Callback() +void SW_Callback(void) { printf("\nEnabling Timeout Interrupt...\n"); MXC_WDT_Disable(MXC_WDT0); diff --git a/Examples/MAX32690/Watchdog/project.mk b/Examples/MAX32690/Watchdog/project.mk index 96eb02eae1d..e18315b866a 100644 --- a/Examples/MAX32690/Watchdog/project.mk +++ b/Examples/MAX32690/Watchdog/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/WearLeveling/.vscode/README.md b/Examples/MAX32690/WearLeveling/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX32690/WearLeveling/.vscode/README.md +++ b/Examples/MAX32690/WearLeveling/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX32690/WearLeveling/.vscode/settings.json b/Examples/MAX32690/WearLeveling/.vscode/settings.json index 8bea75f671e..d9d9b1beeb3 100755 --- a/Examples/MAX32690/WearLeveling/.vscode/settings.json +++ b/Examples/MAX32690/WearLeveling/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX32690/WearLeveling/Makefile b/Examples/MAX32690/WearLeveling/Makefile index ee93baee4d1..4fbb9a75d5d 100644 --- a/Examples/MAX32690/WearLeveling/Makefile +++ b/Examples/MAX32690/WearLeveling/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX32690/WearLeveling/README.md b/Examples/MAX32690/WearLeveling/README.md index aa2d60127d3..ec2211bbfd7 100644 --- a/Examples/MAX32690/WearLeveling/README.md +++ b/Examples/MAX32690/WearLeveling/README.md @@ -7,8 +7,8 @@ Below is a list of the supported commands: * stop: Ends the example. * read: Reads data from a file and prints it to the terminal. * write: Writes data to a file and can optionally create the file to write to if it does not already exist. -* swl: Stands for "show wear leveling". This command performs a specified number of writes (passed as an argument on the command line) to a test file and prints out the number of times each filesystem block was written to. Users should see the writes occur somewhat evenly across most filesystem blocks. - +* swl: Stands for "show wear leveling". This command performs a specified number of writes (passed as an argument on the command line) to a test file and prints out the number of times each filesystem block was written to. Users should see the writes occur somewhat evenly across most filesystem blocks. + Enter "help" in the command line to see more details on the usage of each of the commands including what arguments/options need to be specified to successfully execute each command. ## Software @@ -34,6 +34,11 @@ If using the MAX32690FTHR: - Connect a USB cable between the PC and the J5 (USB/PWR) connector. - Open a terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +If using the AD-APARD32690-SL: +- Connect a USB cable between the PC and the P10 (USB-C) connector. +- Connect a MAXPICO Debug adapter to P9 (SWD Connector) +- Open a terminal application on the PC and connect to the MAXPICO's console UART at 115200, 8-N-1. + ## Expected Output The Console UART of the device will output these messages: diff --git a/Examples/MAX32690/WearLeveling/include/cli.h b/Examples/MAX32690/WearLeveling/include/cli.h index 3c152069af4..ea8dbb3d90a 100644 --- a/Examples/MAX32690/WearLeveling/include/cli.h +++ b/Examples/MAX32690/WearLeveling/include/cli.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/WearLeveling/include/file.h b/Examples/MAX32690/WearLeveling/include/file.h index 6e040df5fe3..f7cac147363 100644 --- a/Examples/MAX32690/WearLeveling/include/file.h +++ b/Examples/MAX32690/WearLeveling/include/file.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/WearLeveling/include/flash.h b/Examples/MAX32690/WearLeveling/include/flash.h index 36546f005fe..cf4f1c934a3 100644 --- a/Examples/MAX32690/WearLeveling/include/flash.h +++ b/Examples/MAX32690/WearLeveling/include/flash.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/WearLeveling/include/main.h b/Examples/MAX32690/WearLeveling/include/main.h index 4611728e628..57e0ee5ba99 100644 --- a/Examples/MAX32690/WearLeveling/include/main.h +++ b/Examples/MAX32690/WearLeveling/include/main.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/WearLeveling/main.c b/Examples/MAX32690/WearLeveling/main.c index e0fed8e6f2a..4a4ef4a2705 100644 --- a/Examples/MAX32690/WearLeveling/main.c +++ b/Examples/MAX32690/WearLeveling/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/WearLeveling/project.mk b/Examples/MAX32690/WearLeveling/project.mk index 3137986a32e..cddf68e1a9d 100644 --- a/Examples/MAX32690/WearLeveling/project.mk +++ b/Examples/MAX32690/WearLeveling/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX32690/WearLeveling/src/cli.c b/Examples/MAX32690/WearLeveling/src/cli.c index 488f3413dee..ea27a00faa5 100644 --- a/Examples/MAX32690/WearLeveling/src/cli.c +++ b/Examples/MAX32690/WearLeveling/src/cli.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/WearLeveling/src/file.c b/Examples/MAX32690/WearLeveling/src/file.c index dec9a57200f..ddb03186181 100644 --- a/Examples/MAX32690/WearLeveling/src/file.c +++ b/Examples/MAX32690/WearLeveling/src/file.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX32690/WearLeveling/src/flash.c b/Examples/MAX32690/WearLeveling/src/flash.c index bb5137a4f5e..56e323c5c89 100644 --- a/Examples/MAX32690/WearLeveling/src/flash.c +++ b/Examples/MAX32690/WearLeveling/src/flash.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/ADC/.vscode/README.md b/Examples/MAX78000/ADC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ADC/.vscode/README.md +++ b/Examples/MAX78000/ADC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ADC/.vscode/settings.json b/Examples/MAX78000/ADC/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/ADC/.vscode/settings.json +++ b/Examples/MAX78000/ADC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ADC/Makefile b/Examples/MAX78000/ADC/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/ADC/Makefile +++ b/Examples/MAX78000/ADC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ADC/example_config.h b/Examples/MAX78000/ADC/example_config.h index 20ef9f389b1..8b53f818771 100644 --- a/Examples/MAX78000/ADC/example_config.h +++ b/Examples/MAX78000/ADC/example_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/ADC/main.c b/Examples/MAX78000/ADC/main.c index c5f7faf0909..eda0555d96a 100644 --- a/Examples/MAX78000/ADC/main.c +++ b/Examples/MAX78000/ADC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/ADC/project.mk b/Examples/MAX78000/ADC/project.mk index 4a8c859560a..c858ef142e4 100644 --- a/Examples/MAX78000/ADC/project.mk +++ b/Examples/MAX78000/ADC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/AES/.vscode/README.md b/Examples/MAX78000/AES/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/AES/.vscode/README.md +++ b/Examples/MAX78000/AES/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/AES/.vscode/settings.json b/Examples/MAX78000/AES/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/AES/.vscode/settings.json +++ b/Examples/MAX78000/AES/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/AES/Makefile b/Examples/MAX78000/AES/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/AES/Makefile +++ b/Examples/MAX78000/AES/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/AES/main.c b/Examples/MAX78000/AES/main.c index 2194e0174de..f5a640bad0e 100644 --- a/Examples/MAX78000/AES/main.c +++ b/Examples/MAX78000/AES/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -51,7 +50,7 @@ mxc_aes_req_t req; volatile int dma_flag = 0; /***** Functions *****/ -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); dma_flag++; diff --git a/Examples/MAX78000/AES/project.mk b/Examples/MAX78000/AES/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX78000/AES/project.mk +++ b/Examples/MAX78000/AES/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ARM-DSP/README.md b/Examples/MAX78000/ARM-DSP/README.md index 9bb2d50bedc..5e1d116671b 100644 --- a/Examples/MAX78000/ARM-DSP/README.md +++ b/Examples/MAX78000/ARM-DSP/README.md @@ -8,7 +8,7 @@ The projects in this folder are ports of ARM's DSP example projects that can be Debug launch configurations are included in each project, and should appear in the "Favorites" menu in Eclipse. -Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop) +Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop) ## Software diff --git a/Examples/MAX78000/ARM-DSP/arm_bayes_example/.vscode/README.md b/Examples/MAX78000/ARM-DSP/arm_bayes_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ARM-DSP/arm_bayes_example/.vscode/README.md +++ b/Examples/MAX78000/ARM-DSP/arm_bayes_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ARM-DSP/arm_bayes_example/.vscode/settings.json b/Examples/MAX78000/ARM-DSP/arm_bayes_example/.vscode/settings.json index 7e111a4de34..816a646c73e 100755 --- a/Examples/MAX78000/ARM-DSP/arm_bayes_example/.vscode/settings.json +++ b/Examples/MAX78000/ARM-DSP/arm_bayes_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ARM-DSP/arm_bayes_example/Makefile b/Examples/MAX78000/ARM-DSP/arm_bayes_example/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/ARM-DSP/arm_bayes_example/Makefile +++ b/Examples/MAX78000/ARM-DSP/arm_bayes_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ARM-DSP/arm_bayes_example/project.mk b/Examples/MAX78000/ARM-DSP/arm_bayes_example/project.mk index 194e63d5134..2e067452116 100644 --- a/Examples/MAX78000/ARM-DSP/arm_bayes_example/project.mk +++ b/Examples/MAX78000/ARM-DSP/arm_bayes_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ARM-DSP/arm_class_marks_example/.vscode/README.md b/Examples/MAX78000/ARM-DSP/arm_class_marks_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ARM-DSP/arm_class_marks_example/.vscode/README.md +++ b/Examples/MAX78000/ARM-DSP/arm_class_marks_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ARM-DSP/arm_class_marks_example/.vscode/settings.json b/Examples/MAX78000/ARM-DSP/arm_class_marks_example/.vscode/settings.json index 7e111a4de34..816a646c73e 100755 --- a/Examples/MAX78000/ARM-DSP/arm_class_marks_example/.vscode/settings.json +++ b/Examples/MAX78000/ARM-DSP/arm_class_marks_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ARM-DSP/arm_class_marks_example/Makefile b/Examples/MAX78000/ARM-DSP/arm_class_marks_example/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/ARM-DSP/arm_class_marks_example/Makefile +++ b/Examples/MAX78000/ARM-DSP/arm_class_marks_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c b/Examples/MAX78000/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c index 30f548bc888..2ea5e90d59a 100644 --- a/Examples/MAX78000/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c +++ b/Examples/MAX78000/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c @@ -139,7 +139,7 @@ uint32_t student_num; * Main f32 test function. It returns maximum marks secured and student number * ------------------------------------------------------------------------------- */ -int main() +int main(void) { #ifndef USE_STATIC_INIT diff --git a/Examples/MAX78000/ARM-DSP/arm_class_marks_example/project.mk b/Examples/MAX78000/ARM-DSP/arm_class_marks_example/project.mk index 194e63d5134..2e067452116 100644 --- a/Examples/MAX78000/ARM-DSP/arm_class_marks_example/project.mk +++ b/Examples/MAX78000/ARM-DSP/arm_class_marks_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ARM-DSP/arm_convolution_example/.vscode/README.md b/Examples/MAX78000/ARM-DSP/arm_convolution_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ARM-DSP/arm_convolution_example/.vscode/README.md +++ b/Examples/MAX78000/ARM-DSP/arm_convolution_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ARM-DSP/arm_convolution_example/.vscode/settings.json b/Examples/MAX78000/ARM-DSP/arm_convolution_example/.vscode/settings.json index 7e111a4de34..816a646c73e 100755 --- a/Examples/MAX78000/ARM-DSP/arm_convolution_example/.vscode/settings.json +++ b/Examples/MAX78000/ARM-DSP/arm_convolution_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ARM-DSP/arm_convolution_example/Makefile b/Examples/MAX78000/ARM-DSP/arm_convolution_example/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/ARM-DSP/arm_convolution_example/Makefile +++ b/Examples/MAX78000/ARM-DSP/arm_convolution_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ARM-DSP/arm_convolution_example/project.mk b/Examples/MAX78000/ARM-DSP/arm_convolution_example/project.mk index 194e63d5134..2e067452116 100644 --- a/Examples/MAX78000/ARM-DSP/arm_convolution_example/project.mk +++ b/Examples/MAX78000/ARM-DSP/arm_convolution_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md b/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md +++ b/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json b/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json index 7e111a4de34..816a646c73e 100755 --- a/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json +++ b/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/Makefile b/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/Makefile +++ b/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/project.mk b/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/project.mk index 194e63d5134..2e067452116 100644 --- a/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/project.mk +++ b/Examples/MAX78000/ARM-DSP/arm_dotproduct_example_f32/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/.vscode/README.md b/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/.vscode/README.md +++ b/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/.vscode/settings.json b/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/.vscode/settings.json index 7e111a4de34..816a646c73e 100755 --- a/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/.vscode/settings.json +++ b/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/Makefile b/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/Makefile +++ b/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/project.mk b/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/project.mk index 194e63d5134..2e067452116 100644 --- a/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/project.mk +++ b/Examples/MAX78000/ARM-DSP/arm_fft_bin_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ARM-DSP/arm_fir_example/.vscode/README.md b/Examples/MAX78000/ARM-DSP/arm_fir_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ARM-DSP/arm_fir_example/.vscode/README.md +++ b/Examples/MAX78000/ARM-DSP/arm_fir_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ARM-DSP/arm_fir_example/.vscode/settings.json b/Examples/MAX78000/ARM-DSP/arm_fir_example/.vscode/settings.json index 7e111a4de34..816a646c73e 100755 --- a/Examples/MAX78000/ARM-DSP/arm_fir_example/.vscode/settings.json +++ b/Examples/MAX78000/ARM-DSP/arm_fir_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ARM-DSP/arm_fir_example/Makefile b/Examples/MAX78000/ARM-DSP/arm_fir_example/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/ARM-DSP/arm_fir_example/Makefile +++ b/Examples/MAX78000/ARM-DSP/arm_fir_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ARM-DSP/arm_fir_example/project.mk b/Examples/MAX78000/ARM-DSP/arm_fir_example/project.mk index 194e63d5134..2e067452116 100644 --- a/Examples/MAX78000/ARM-DSP/arm_fir_example/project.mk +++ b/Examples/MAX78000/ARM-DSP/arm_fir_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md b/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md +++ b/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json b/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json index 7e111a4de34..816a646c73e 100755 --- a/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json +++ b/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/Makefile b/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/Makefile +++ b/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/project.mk b/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/project.mk index 194e63d5134..2e067452116 100644 --- a/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/project.mk +++ b/Examples/MAX78000/ARM-DSP/arm_graphic_equalizer_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/.vscode/README.md b/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/.vscode/README.md +++ b/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/.vscode/settings.json b/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/.vscode/settings.json index 7e111a4de34..816a646c73e 100755 --- a/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/.vscode/settings.json +++ b/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/Makefile b/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/Makefile +++ b/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/project.mk b/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/project.mk index 194e63d5134..2e067452116 100644 --- a/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/project.mk +++ b/Examples/MAX78000/ARM-DSP/arm_linear_interp_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ARM-DSP/arm_matrix_example/.vscode/README.md b/Examples/MAX78000/ARM-DSP/arm_matrix_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ARM-DSP/arm_matrix_example/.vscode/README.md +++ b/Examples/MAX78000/ARM-DSP/arm_matrix_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ARM-DSP/arm_matrix_example/.vscode/settings.json b/Examples/MAX78000/ARM-DSP/arm_matrix_example/.vscode/settings.json index 7e111a4de34..816a646c73e 100755 --- a/Examples/MAX78000/ARM-DSP/arm_matrix_example/.vscode/settings.json +++ b/Examples/MAX78000/ARM-DSP/arm_matrix_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ARM-DSP/arm_matrix_example/Makefile b/Examples/MAX78000/ARM-DSP/arm_matrix_example/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/ARM-DSP/arm_matrix_example/Makefile +++ b/Examples/MAX78000/ARM-DSP/arm_matrix_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ARM-DSP/arm_matrix_example/project.mk b/Examples/MAX78000/ARM-DSP/arm_matrix_example/project.mk index 194e63d5134..2e067452116 100644 --- a/Examples/MAX78000/ARM-DSP/arm_matrix_example/project.mk +++ b/Examples/MAX78000/ARM-DSP/arm_matrix_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/.vscode/README.md b/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/.vscode/README.md +++ b/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/.vscode/settings.json b/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/.vscode/settings.json index 7e111a4de34..816a646c73e 100755 --- a/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/.vscode/settings.json +++ b/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/Makefile b/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/Makefile +++ b/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/project.mk b/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/project.mk index 194e63d5134..2e067452116 100644 --- a/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/project.mk +++ b/Examples/MAX78000/ARM-DSP/arm_signal_converge_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/.vscode/README.md b/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/.vscode/README.md +++ b/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/.vscode/settings.json b/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/.vscode/settings.json index 7e111a4de34..816a646c73e 100755 --- a/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/.vscode/settings.json +++ b/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/Makefile b/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/Makefile +++ b/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/project.mk b/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/project.mk index 194e63d5134..2e067452116 100644 --- a/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/project.mk +++ b/Examples/MAX78000/ARM-DSP/arm_sin_cos_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ARM-DSP/arm_svm_example/.vscode/README.md b/Examples/MAX78000/ARM-DSP/arm_svm_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ARM-DSP/arm_svm_example/.vscode/README.md +++ b/Examples/MAX78000/ARM-DSP/arm_svm_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ARM-DSP/arm_svm_example/.vscode/settings.json b/Examples/MAX78000/ARM-DSP/arm_svm_example/.vscode/settings.json index 7e111a4de34..816a646c73e 100755 --- a/Examples/MAX78000/ARM-DSP/arm_svm_example/.vscode/settings.json +++ b/Examples/MAX78000/ARM-DSP/arm_svm_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ARM-DSP/arm_svm_example/Makefile b/Examples/MAX78000/ARM-DSP/arm_svm_example/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/ARM-DSP/arm_svm_example/Makefile +++ b/Examples/MAX78000/ARM-DSP/arm_svm_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ARM-DSP/arm_svm_example/project.mk b/Examples/MAX78000/ARM-DSP/arm_svm_example/project.mk index 194e63d5134..2e067452116 100644 --- a/Examples/MAX78000/ARM-DSP/arm_svm_example/project.mk +++ b/Examples/MAX78000/ARM-DSP/arm_svm_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ARM-DSP/arm_variance_example/.vscode/README.md b/Examples/MAX78000/ARM-DSP/arm_variance_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ARM-DSP/arm_variance_example/.vscode/README.md +++ b/Examples/MAX78000/ARM-DSP/arm_variance_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ARM-DSP/arm_variance_example/.vscode/settings.json b/Examples/MAX78000/ARM-DSP/arm_variance_example/.vscode/settings.json index 7e111a4de34..816a646c73e 100755 --- a/Examples/MAX78000/ARM-DSP/arm_variance_example/.vscode/settings.json +++ b/Examples/MAX78000/ARM-DSP/arm_variance_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ARM-DSP/arm_variance_example/Makefile b/Examples/MAX78000/ARM-DSP/arm_variance_example/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/ARM-DSP/arm_variance_example/Makefile +++ b/Examples/MAX78000/ARM-DSP/arm_variance_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ARM-DSP/arm_variance_example/project.mk b/Examples/MAX78000/ARM-DSP/arm_variance_example/project.mk index 194e63d5134..2e067452116 100644 --- a/Examples/MAX78000/ARM-DSP/arm_variance_example/project.mk +++ b/Examples/MAX78000/ARM-DSP/arm_variance_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/UNet-demo/.vscode/README.md b/Examples/MAX78000/CNN/UNet-demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/UNet-demo/.vscode/README.md +++ b/Examples/MAX78000/CNN/UNet-demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/UNet-demo/.vscode/settings.json b/Examples/MAX78000/CNN/UNet-demo/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/CNN/UNet-demo/.vscode/settings.json +++ b/Examples/MAX78000/CNN/UNet-demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/UNet-demo/Makefile b/Examples/MAX78000/CNN/UNet-demo/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/UNet-demo/Makefile +++ b/Examples/MAX78000/CNN/UNet-demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/UNet-demo/TFT/evkit/all_imgs.c b/Examples/MAX78000/CNN/UNet-demo/TFT/evkit/all_imgs.c index c568dc9683e..8367f87034f 100644 --- a/Examples/MAX78000/CNN/UNet-demo/TFT/evkit/all_imgs.c +++ b/Examples/MAX78000/CNN/UNet-demo/TFT/evkit/all_imgs.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-demo/TFT/evkit/bitmap.h b/Examples/MAX78000/CNN/UNet-demo/TFT/evkit/bitmap.h index a8ca538995a..10cd62eea4b 100644 --- a/Examples/MAX78000/CNN/UNet-demo/TFT/evkit/bitmap.h +++ b/Examples/MAX78000/CNN/UNet-demo/TFT/evkit/bitmap.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/bmp/bmp2c.py b/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/bmp/bmp2c.py index d85d42f200a..6e4a77a77e8 100644 --- a/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/bmp/bmp2c.py +++ b/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/bmp/bmp2c.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/bmp/template.txt b/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/bmp/template.txt index ba9d86c9a51..b2b7ff6425e 100644 --- a/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/bmp/template.txt +++ b/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/bmp/template.txt @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/img_1_rgb565.c b/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/img_1_rgb565.c index 9592dd787c9..35ece44c8ad 100644 --- a/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/img_1_rgb565.c +++ b/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/img_1_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/logo_rgb565.c b/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/logo_rgb565.c index 63657903560..1b1ef1bd6d4 100644 --- a/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/logo_rgb565.c +++ b/Examples/MAX78000/CNN/UNet-demo/TFT/fthr/logo_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-demo/Utility/main.py b/Examples/MAX78000/CNN/UNet-demo/Utility/main.py index 2615a5e42c0..f03705971cd 100644 --- a/Examples/MAX78000/CNN/UNet-demo/Utility/main.py +++ b/Examples/MAX78000/CNN/UNet-demo/Utility/main.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-demo/Utility/requirements.txt b/Examples/MAX78000/CNN/UNet-demo/Utility/requirements.txt index 1d1917ba71d..6cb6b5be371 100644 --- a/Examples/MAX78000/CNN/UNet-demo/Utility/requirements.txt +++ b/Examples/MAX78000/CNN/UNet-demo/Utility/requirements.txt @@ -1,3 +1,3 @@ ft4222>=1.2.1 -Pillow>=8.1.0 +Pillow==10.0.1 diff --git a/Examples/MAX78000/CNN/UNet-demo/cnn.c b/Examples/MAX78000/CNN/UNet-demo/cnn.c index 2faa52306bd..1db05705e35 100644 --- a/Examples/MAX78000/CNN/UNet-demo/cnn.c +++ b/Examples/MAX78000/CNN/UNet-demo/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-demo/cnn.h b/Examples/MAX78000/CNN/UNet-demo/cnn.h index 52c5ea3c381..f1332e6098d 100644 --- a/Examples/MAX78000/CNN/UNet-demo/cnn.h +++ b/Examples/MAX78000/CNN/UNet-demo/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-demo/main.c b/Examples/MAX78000/CNN/UNet-demo/main.c index 3beaf277f4d..399e5539156 100644 --- a/Examples/MAX78000/CNN/UNet-demo/main.c +++ b/Examples/MAX78000/CNN/UNet-demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-demo/project.mk b/Examples/MAX78000/CNN/UNet-demo/project.mk index 13d03b3b6f4..1f8cde77175 100644 --- a/Examples/MAX78000/CNN/UNet-demo/project.mk +++ b/Examples/MAX78000/CNN/UNet-demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/UNet-demo/softmax.c b/Examples/MAX78000/CNN/UNet-demo/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/UNet-demo/softmax.c +++ b/Examples/MAX78000/CNN/UNet-demo/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/.vscode/README.md b/Examples/MAX78000/CNN/UNet-highres-demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/UNet-highres-demo/.vscode/README.md +++ b/Examples/MAX78000/CNN/UNet-highres-demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/.vscode/settings.json b/Examples/MAX78000/CNN/UNet-highres-demo/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/CNN/UNet-highres-demo/.vscode/settings.json +++ b/Examples/MAX78000/CNN/UNet-highres-demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/Makefile b/Examples/MAX78000/CNN/UNet-highres-demo/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/UNet-highres-demo/Makefile +++ b/Examples/MAX78000/CNN/UNet-highres-demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/TFT/evkit/all_imgs.c b/Examples/MAX78000/CNN/UNet-highres-demo/TFT/evkit/all_imgs.c index c9f9ede5296..74d74e2883d 100644 --- a/Examples/MAX78000/CNN/UNet-highres-demo/TFT/evkit/all_imgs.c +++ b/Examples/MAX78000/CNN/UNet-highres-demo/TFT/evkit/all_imgs.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/TFT/evkit/bitmap.h b/Examples/MAX78000/CNN/UNet-highres-demo/TFT/evkit/bitmap.h index f07631ce401..b42e53cfb4f 100644 --- a/Examples/MAX78000/CNN/UNet-highres-demo/TFT/evkit/bitmap.h +++ b/Examples/MAX78000/CNN/UNet-highres-demo/TFT/evkit/bitmap.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/bmp/bmp2c.py b/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/bmp/bmp2c.py index d85d42f200a..6e4a77a77e8 100644 --- a/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/bmp/bmp2c.py +++ b/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/bmp/bmp2c.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/bmp/template.txt b/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/bmp/template.txt index ba9d86c9a51..b2b7ff6425e 100644 --- a/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/bmp/template.txt +++ b/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/bmp/template.txt @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/img/img_1_rgb565.c b/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/img/img_1_rgb565.c index 9592dd787c9..35ece44c8ad 100644 --- a/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/img/img_1_rgb565.c +++ b/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/img/img_1_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/img/logo_rgb565.c b/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/img/logo_rgb565.c index 63657903560..1b1ef1bd6d4 100644 --- a/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/img/logo_rgb565.c +++ b/Examples/MAX78000/CNN/UNet-highres-demo/TFT/fthr/img/logo_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/camera_util.c b/Examples/MAX78000/CNN/UNet-highres-demo/camera_util.c index 077d5c58266..baa87689deb 100644 --- a/Examples/MAX78000/CNN/UNet-highres-demo/camera_util.c +++ b/Examples/MAX78000/CNN/UNet-highres-demo/camera_util.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/camera_util.h b/Examples/MAX78000/CNN/UNet-highres-demo/camera_util.h index db1109e7ad9..a52b8c74677 100644 --- a/Examples/MAX78000/CNN/UNet-highres-demo/camera_util.h +++ b/Examples/MAX78000/CNN/UNet-highres-demo/camera_util.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/cnn.c b/Examples/MAX78000/CNN/UNet-highres-demo/cnn.c index efbf1fb9760..69e927214d6 100644 --- a/Examples/MAX78000/CNN/UNet-highres-demo/cnn.c +++ b/Examples/MAX78000/CNN/UNet-highres-demo/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/cnn.h b/Examples/MAX78000/CNN/UNet-highres-demo/cnn.h index 4d1e6ece566..d4bdbaf3433 100644 --- a/Examples/MAX78000/CNN/UNet-highres-demo/cnn.h +++ b/Examples/MAX78000/CNN/UNet-highres-demo/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/main.c b/Examples/MAX78000/CNN/UNet-highres-demo/main.c index 2ec8ee03178..74427bb339a 100644 --- a/Examples/MAX78000/CNN/UNet-highres-demo/main.c +++ b/Examples/MAX78000/CNN/UNet-highres-demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/project.mk b/Examples/MAX78000/CNN/UNet-highres-demo/project.mk index bb5f742fc91..11b10080f0d 100644 --- a/Examples/MAX78000/CNN/UNet-highres-demo/project.mk +++ b/Examples/MAX78000/CNN/UNet-highres-demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/UNet-highres-demo/softmax.c b/Examples/MAX78000/CNN/UNet-highres-demo/softmax.c index 9764e99e073..8e935ce23ed 100644 --- a/Examples/MAX78000/CNN/UNet-highres-demo/softmax.c +++ b/Examples/MAX78000/CNN/UNet-highres-demo/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/actionrecognition-demo/.vscode/README.md b/Examples/MAX78000/CNN/actionrecognition-demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/actionrecognition-demo/.vscode/README.md +++ b/Examples/MAX78000/CNN/actionrecognition-demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/actionrecognition-demo/.vscode/settings.json b/Examples/MAX78000/CNN/actionrecognition-demo/.vscode/settings.json index b0d25720645..226444ec03c 100755 --- a/Examples/MAX78000/CNN/actionrecognition-demo/.vscode/settings.json +++ b/Examples/MAX78000/CNN/actionrecognition-demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/actionrecognition-demo/Makefile b/Examples/MAX78000/CNN/actionrecognition-demo/Makefile index a9913315a31..ce8dc438fe2 100644 --- a/Examples/MAX78000/CNN/actionrecognition-demo/Makefile +++ b/Examples/MAX78000/CNN/actionrecognition-demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/actionrecognition-demo/camera_util.c b/Examples/MAX78000/CNN/actionrecognition-demo/camera_util.c index 8771a56f4a1..4e797e69ef7 100644 --- a/Examples/MAX78000/CNN/actionrecognition-demo/camera_util.c +++ b/Examples/MAX78000/CNN/actionrecognition-demo/camera_util.c @@ -1,7 +1,6 @@ /****************************************************************************** * - * Copyright (C) 2024 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/actionrecognition-demo/camera_util.h b/Examples/MAX78000/CNN/actionrecognition-demo/camera_util.h index da425deb5f8..ddf72093c38 100644 --- a/Examples/MAX78000/CNN/actionrecognition-demo/camera_util.h +++ b/Examples/MAX78000/CNN/actionrecognition-demo/camera_util.h @@ -1,7 +1,6 @@ /****************************************************************************** * - * Copyright (C) 2024 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/actionrecognition-demo/cnn.c b/Examples/MAX78000/CNN/actionrecognition-demo/cnn.c index 26ad9bd6f74..860a140ae96 100644 --- a/Examples/MAX78000/CNN/actionrecognition-demo/cnn.c +++ b/Examples/MAX78000/CNN/actionrecognition-demo/cnn.c @@ -1,7 +1,7 @@ /****************************************************************************** * - * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), + * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), * Copyright (C) 2023-2024 Analog Devices, Inc. All Rights Reserved. This software * is proprietary to Analog Devices, Inc. and its licensors. * diff --git a/Examples/MAX78000/CNN/actionrecognition-demo/cnn.h b/Examples/MAX78000/CNN/actionrecognition-demo/cnn.h index a66568e44af..f2461d1984a 100644 --- a/Examples/MAX78000/CNN/actionrecognition-demo/cnn.h +++ b/Examples/MAX78000/CNN/actionrecognition-demo/cnn.h @@ -1,7 +1,7 @@ /****************************************************************************** * - * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), + * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), * Copyright (C) 2023-2024 Analog Devices, Inc. All Rights Reserved. This software * is proprietary to Analog Devices, Inc. and its licensors. * diff --git a/Examples/MAX78000/CNN/actionrecognition-demo/main.c b/Examples/MAX78000/CNN/actionrecognition-demo/main.c index 3360f83139c..9fe346b5d6b 100644 --- a/Examples/MAX78000/CNN/actionrecognition-demo/main.c +++ b/Examples/MAX78000/CNN/actionrecognition-demo/main.c @@ -1,7 +1,7 @@ /****************************************************************************** * - * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), + * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), * Copyright (C) 2023-2024 Analog Devices, Inc. All Rights Reserved. This software * is proprietary to Analog Devices, Inc. and its licensors. * diff --git a/Examples/MAX78000/CNN/actionrecognition-demo/project.mk b/Examples/MAX78000/CNN/actionrecognition-demo/project.mk index d406ff46b9b..a5b4f522bdd 100644 --- a/Examples/MAX78000/CNN/actionrecognition-demo/project.mk +++ b/Examples/MAX78000/CNN/actionrecognition-demo/project.mk @@ -1,9 +1,26 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # ********************************************************** diff --git a/Examples/MAX78000/CNN/actionrecognition-demo/project_config.h b/Examples/MAX78000/CNN/actionrecognition-demo/project_config.h index 68ebd4d11ab..172bbbbbade 100644 --- a/Examples/MAX78000/CNN/actionrecognition-demo/project_config.h +++ b/Examples/MAX78000/CNN/actionrecognition-demo/project_config.h @@ -1,7 +1,7 @@ /****************************************************************************** * - * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), + * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), * Copyright (C) 2023-2024 Analog Devices, Inc. All Rights Reserved. This software * is proprietary to Analog Devices, Inc. and its licensors. * diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/.vscode/README.md b/Examples/MAX78000/CNN/aisegment_unet-demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/.vscode/README.md +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/.vscode/settings.json b/Examples/MAX78000/CNN/aisegment_unet-demo/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/.vscode/settings.json +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/Makefile b/Examples/MAX78000/CNN/aisegment_unet-demo/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/Makefile +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/evkit/all_imgs.c b/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/evkit/all_imgs.c index 318abbf752d..bf9cbdfb0e0 100644 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/evkit/all_imgs.c +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/evkit/all_imgs.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/evkit/bitmap.h b/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/evkit/bitmap.h index f07631ce401..b42e53cfb4f 100644 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/evkit/bitmap.h +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/evkit/bitmap.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/bmp/bmp2c.py b/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/bmp/bmp2c.py index d85d42f200a..6e4a77a77e8 100644 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/bmp/bmp2c.py +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/bmp/bmp2c.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/bmp/template.txt b/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/bmp/template.txt index ba9d86c9a51..b2b7ff6425e 100644 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/bmp/template.txt +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/bmp/template.txt @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/img/img_1_rgb565.c b/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/img/img_1_rgb565.c index 9592dd787c9..35ece44c8ad 100644 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/img/img_1_rgb565.c +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/img/img_1_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/img/logo_rgb565.c b/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/img/logo_rgb565.c index 63657903560..1b1ef1bd6d4 100644 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/img/logo_rgb565.c +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/TFT/fthr/img/logo_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/camera_util.c b/Examples/MAX78000/CNN/aisegment_unet-demo/camera_util.c index 7bc4d1b739d..3be9d711d71 100644 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/camera_util.c +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/camera_util.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/camera_util.h b/Examples/MAX78000/CNN/aisegment_unet-demo/camera_util.h index db1109e7ad9..a52b8c74677 100644 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/camera_util.h +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/camera_util.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/cnn.c b/Examples/MAX78000/CNN/aisegment_unet-demo/cnn.c index 83347325ce8..eb9f297bf95 100644 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/cnn.c +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/cnn.h b/Examples/MAX78000/CNN/aisegment_unet-demo/cnn.h index d3f23daafc9..9c2a6e883b5 100644 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/cnn.h +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/main.c b/Examples/MAX78000/CNN/aisegment_unet-demo/main.c index 3a0fea9a461..1d65888003e 100644 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/main.c +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/project.mk b/Examples/MAX78000/CNN/aisegment_unet-demo/project.mk index 6ac30a7fa0a..5382d6cb0a5 100644 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/project.mk +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/aisegment_unet-demo/softmax.c b/Examples/MAX78000/CNN/aisegment_unet-demo/softmax.c index 9764e99e073..8e935ce23ed 100644 --- a/Examples/MAX78000/CNN/aisegment_unet-demo/softmax.c +++ b/Examples/MAX78000/CNN/aisegment_unet-demo/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/aisegment_unet/.vscode/README.md b/Examples/MAX78000/CNN/aisegment_unet/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/aisegment_unet/.vscode/README.md +++ b/Examples/MAX78000/CNN/aisegment_unet/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/aisegment_unet/.vscode/settings.json b/Examples/MAX78000/CNN/aisegment_unet/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CNN/aisegment_unet/.vscode/settings.json +++ b/Examples/MAX78000/CNN/aisegment_unet/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/aisegment_unet/Makefile b/Examples/MAX78000/CNN/aisegment_unet/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/aisegment_unet/Makefile +++ b/Examples/MAX78000/CNN/aisegment_unet/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/aisegment_unet/cnn.c b/Examples/MAX78000/CNN/aisegment_unet/cnn.c index de471ca7e88..c2f3b3d52cc 100644 --- a/Examples/MAX78000/CNN/aisegment_unet/cnn.c +++ b/Examples/MAX78000/CNN/aisegment_unet/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/aisegment_unet/cnn.h b/Examples/MAX78000/CNN/aisegment_unet/cnn.h index 600265e9d91..ffcc3713582 100644 --- a/Examples/MAX78000/CNN/aisegment_unet/cnn.h +++ b/Examples/MAX78000/CNN/aisegment_unet/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/aisegment_unet/main.c b/Examples/MAX78000/CNN/aisegment_unet/main.c index cd34807b88f..b9082e7aa66 100644 --- a/Examples/MAX78000/CNN/aisegment_unet/main.c +++ b/Examples/MAX78000/CNN/aisegment_unet/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/aisegment_unet/project.mk b/Examples/MAX78000/CNN/aisegment_unet/project.mk index 4a8c859560a..c858ef142e4 100644 --- a/Examples/MAX78000/CNN/aisegment_unet/project.mk +++ b/Examples/MAX78000/CNN/aisegment_unet/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/aisegment_unet/softmax.c b/Examples/MAX78000/CNN/aisegment_unet/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/aisegment_unet/softmax.c +++ b/Examples/MAX78000/CNN/aisegment_unet/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/asl/.vscode/README.md b/Examples/MAX78000/CNN/asl/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/asl/.vscode/README.md +++ b/Examples/MAX78000/CNN/asl/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/asl/.vscode/settings.json b/Examples/MAX78000/CNN/asl/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CNN/asl/.vscode/settings.json +++ b/Examples/MAX78000/CNN/asl/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/asl/Makefile b/Examples/MAX78000/CNN/asl/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/asl/Makefile +++ b/Examples/MAX78000/CNN/asl/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/asl/cnn.c b/Examples/MAX78000/CNN/asl/cnn.c index 4c1a7d81b0f..0f7d906458e 100644 --- a/Examples/MAX78000/CNN/asl/cnn.c +++ b/Examples/MAX78000/CNN/asl/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/asl/cnn.h b/Examples/MAX78000/CNN/asl/cnn.h index 7eaf72faf2a..d6fe471ddd8 100644 --- a/Examples/MAX78000/CNN/asl/cnn.h +++ b/Examples/MAX78000/CNN/asl/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/asl/main.c b/Examples/MAX78000/CNN/asl/main.c index 98514981c2b..da511379d67 100644 --- a/Examples/MAX78000/CNN/asl/main.c +++ b/Examples/MAX78000/CNN/asl/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/asl/project.mk b/Examples/MAX78000/CNN/asl/project.mk index 3f6d37b542f..7051651494b 100644 --- a/Examples/MAX78000/CNN/asl/project.mk +++ b/Examples/MAX78000/CNN/asl/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/asl/softmax.c b/Examples/MAX78000/CNN/asl/softmax.c index af121455735..31ec0bad558 100644 --- a/Examples/MAX78000/CNN/asl/softmax.c +++ b/Examples/MAX78000/CNN/asl/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/asl_demo/.vscode/README.md b/Examples/MAX78000/CNN/asl_demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/asl_demo/.vscode/README.md +++ b/Examples/MAX78000/CNN/asl_demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/asl_demo/.vscode/settings.json b/Examples/MAX78000/CNN/asl_demo/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/CNN/asl_demo/.vscode/settings.json +++ b/Examples/MAX78000/CNN/asl_demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/asl_demo/Makefile b/Examples/MAX78000/CNN/asl_demo/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/asl_demo/Makefile +++ b/Examples/MAX78000/CNN/asl_demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/asl_demo/TFT/evkit/all_imgs.c b/Examples/MAX78000/CNN/asl_demo/TFT/evkit/all_imgs.c index 3d15253465a..81cc3ebf21f 100644 --- a/Examples/MAX78000/CNN/asl_demo/TFT/evkit/all_imgs.c +++ b/Examples/MAX78000/CNN/asl_demo/TFT/evkit/all_imgs.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/asl_demo/TFT/evkit/bitmap.h b/Examples/MAX78000/CNN/asl_demo/TFT/evkit/bitmap.h index 3cf995550bd..2e4f90491cd 100644 --- a/Examples/MAX78000/CNN/asl_demo/TFT/evkit/bitmap.h +++ b/Examples/MAX78000/CNN/asl_demo/TFT/evkit/bitmap.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/asl_demo/TFT/fthr/bmp/bmp2c.py b/Examples/MAX78000/CNN/asl_demo/TFT/fthr/bmp/bmp2c.py index d85d42f200a..6e4a77a77e8 100644 --- a/Examples/MAX78000/CNN/asl_demo/TFT/fthr/bmp/bmp2c.py +++ b/Examples/MAX78000/CNN/asl_demo/TFT/fthr/bmp/bmp2c.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/asl_demo/TFT/fthr/bmp/template.txt b/Examples/MAX78000/CNN/asl_demo/TFT/fthr/bmp/template.txt index ba9d86c9a51..b2b7ff6425e 100644 --- a/Examples/MAX78000/CNN/asl_demo/TFT/fthr/bmp/template.txt +++ b/Examples/MAX78000/CNN/asl_demo/TFT/fthr/bmp/template.txt @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/asl_demo/TFT/fthr/img_1_rgb565.c b/Examples/MAX78000/CNN/asl_demo/TFT/fthr/img_1_rgb565.c index a8b8cfe163b..375dd903f04 100644 --- a/Examples/MAX78000/CNN/asl_demo/TFT/fthr/img_1_rgb565.c +++ b/Examples/MAX78000/CNN/asl_demo/TFT/fthr/img_1_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/asl_demo/TFT/fthr/logo_rgb565.c b/Examples/MAX78000/CNN/asl_demo/TFT/fthr/logo_rgb565.c index 5fcfc98615a..2900a6e2746 100644 --- a/Examples/MAX78000/CNN/asl_demo/TFT/fthr/logo_rgb565.c +++ b/Examples/MAX78000/CNN/asl_demo/TFT/fthr/logo_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/asl_demo/cnn.c b/Examples/MAX78000/CNN/asl_demo/cnn.c index 0ce82be8f45..4cf786b5d36 100644 --- a/Examples/MAX78000/CNN/asl_demo/cnn.c +++ b/Examples/MAX78000/CNN/asl_demo/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/asl_demo/cnn.h b/Examples/MAX78000/CNN/asl_demo/cnn.h index 7eaf72faf2a..d6fe471ddd8 100644 --- a/Examples/MAX78000/CNN/asl_demo/cnn.h +++ b/Examples/MAX78000/CNN/asl_demo/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/asl_demo/main.c b/Examples/MAX78000/CNN/asl_demo/main.c index e26756ad8e1..6c76455f373 100644 --- a/Examples/MAX78000/CNN/asl_demo/main.c +++ b/Examples/MAX78000/CNN/asl_demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/asl_demo/project.mk b/Examples/MAX78000/CNN/asl_demo/project.mk index e626b5e6333..e8862415735 100644 --- a/Examples/MAX78000/CNN/asl_demo/project.mk +++ b/Examples/MAX78000/CNN/asl_demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/asl_demo/softmax.c b/Examples/MAX78000/CNN/asl_demo/softmax.c index 9764e99e073..8e935ce23ed 100644 --- a/Examples/MAX78000/CNN/asl_demo/softmax.c +++ b/Examples/MAX78000/CNN/asl_demo/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cam01_facedetect_demo/.vscode/README.md b/Examples/MAX78000/CNN/cam01_facedetect_demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/cam01_facedetect_demo/.vscode/README.md +++ b/Examples/MAX78000/CNN/cam01_facedetect_demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/cam01_facedetect_demo/.vscode/settings.json b/Examples/MAX78000/CNN/cam01_facedetect_demo/.vscode/settings.json index 8cec77404e1..3068a66c6ba 100755 --- a/Examples/MAX78000/CNN/cam01_facedetect_demo/.vscode/settings.json +++ b/Examples/MAX78000/CNN/cam01_facedetect_demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/cam01_facedetect_demo/Makefile b/Examples/MAX78000/CNN/cam01_facedetect_demo/Makefile index c6fdc227194..80d6e9f3b38 100644 --- a/Examples/MAX78000/CNN/cam01_facedetect_demo/Makefile +++ b/Examples/MAX78000/CNN/cam01_facedetect_demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/cam01_facedetect_demo/cnn.c b/Examples/MAX78000/CNN/cam01_facedetect_demo/cnn.c index 0cba610b8a2..c3571f66a3f 100644 --- a/Examples/MAX78000/CNN/cam01_facedetect_demo/cnn.c +++ b/Examples/MAX78000/CNN/cam01_facedetect_demo/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cam01_facedetect_demo/cnn.h b/Examples/MAX78000/CNN/cam01_facedetect_demo/cnn.h index 748b7df5c3b..41c0b754b38 100644 --- a/Examples/MAX78000/CNN/cam01_facedetect_demo/cnn.h +++ b/Examples/MAX78000/CNN/cam01_facedetect_demo/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cam01_facedetect_demo/main.c b/Examples/MAX78000/CNN/cam01_facedetect_demo/main.c index 4db1c8aa8ca..48a1cc03443 100644 --- a/Examples/MAX78000/CNN/cam01_facedetect_demo/main.c +++ b/Examples/MAX78000/CNN/cam01_facedetect_demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cam01_facedetect_demo/post_process.c b/Examples/MAX78000/CNN/cam01_facedetect_demo/post_process.c index 6cc5fae8885..2a2bcf55c51 100644 --- a/Examples/MAX78000/CNN/cam01_facedetect_demo/post_process.c +++ b/Examples/MAX78000/CNN/cam01_facedetect_demo/post_process.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cam01_facedetect_demo/post_process.h b/Examples/MAX78000/CNN/cam01_facedetect_demo/post_process.h index 46b5ec079ef..fb878e30a12 100644 --- a/Examples/MAX78000/CNN/cam01_facedetect_demo/post_process.h +++ b/Examples/MAX78000/CNN/cam01_facedetect_demo/post_process.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cam01_facedetect_demo/project.mk b/Examples/MAX78000/CNN/cam01_facedetect_demo/project.mk index c04542b04e9..a456910fd31 100644 --- a/Examples/MAX78000/CNN/cam01_facedetect_demo/project.mk +++ b/Examples/MAX78000/CNN/cam01_facedetect_demo/project.mk @@ -1,9 +1,26 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # ********************************************************** diff --git a/Examples/MAX78000/CNN/cam01_facedetect_demo/softmax.c b/Examples/MAX78000/CNN/cam01_facedetect_demo/softmax.c index 8730ca2ebe1..fad30194997 100644 --- a/Examples/MAX78000/CNN/cam01_facedetect_demo/softmax.c +++ b/Examples/MAX78000/CNN/cam01_facedetect_demo/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cam02_facedetect_demo/.vscode/README.md b/Examples/MAX78000/CNN/cam02_facedetect_demo/.vscode/README.md old mode 100644 new mode 100755 index 90fbcefc65d..5b355bd51c9 --- a/Examples/MAX78000/CNN/cam02_facedetect_demo/.vscode/README.md +++ b/Examples/MAX78000/CNN/cam02_facedetect_demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/cam02_facedetect_demo/.vscode/settings.json b/Examples/MAX78000/CNN/cam02_facedetect_demo/.vscode/settings.json index d1bdf7f052b..f6460981270 100755 --- a/Examples/MAX78000/CNN/cam02_facedetect_demo/.vscode/settings.json +++ b/Examples/MAX78000/CNN/cam02_facedetect_demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/cam02_facedetect_demo/Makefile b/Examples/MAX78000/CNN/cam02_facedetect_demo/Makefile index 333beef8fcf..1220bf94758 100644 --- a/Examples/MAX78000/CNN/cam02_facedetect_demo/Makefile +++ b/Examples/MAX78000/CNN/cam02_facedetect_demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/cam02_facedetect_demo/project.mk b/Examples/MAX78000/CNN/cam02_facedetect_demo/project.mk index 377b5830bfd..933710efca8 100644 --- a/Examples/MAX78000/CNN/cam02_facedetect_demo/project.mk +++ b/Examples/MAX78000/CNN/cam02_facedetect_demo/project.mk @@ -1,9 +1,26 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # ********************************************************** diff --git a/Examples/MAX78000/CNN/camvid_unet/.vscode/README.md b/Examples/MAX78000/CNN/camvid_unet/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/camvid_unet/.vscode/README.md +++ b/Examples/MAX78000/CNN/camvid_unet/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/camvid_unet/.vscode/settings.json b/Examples/MAX78000/CNN/camvid_unet/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CNN/camvid_unet/.vscode/settings.json +++ b/Examples/MAX78000/CNN/camvid_unet/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/camvid_unet/Makefile b/Examples/MAX78000/CNN/camvid_unet/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/camvid_unet/Makefile +++ b/Examples/MAX78000/CNN/camvid_unet/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/camvid_unet/cnn.c b/Examples/MAX78000/CNN/camvid_unet/cnn.c index e943fe39b70..4fadd602d8a 100644 --- a/Examples/MAX78000/CNN/camvid_unet/cnn.c +++ b/Examples/MAX78000/CNN/camvid_unet/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/camvid_unet/cnn.h b/Examples/MAX78000/CNN/camvid_unet/cnn.h index 287fc0b0341..bf1f3b59c35 100644 --- a/Examples/MAX78000/CNN/camvid_unet/cnn.h +++ b/Examples/MAX78000/CNN/camvid_unet/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/camvid_unet/main.c b/Examples/MAX78000/CNN/camvid_unet/main.c index b701fb2fae6..18da01f9e1f 100644 --- a/Examples/MAX78000/CNN/camvid_unet/main.c +++ b/Examples/MAX78000/CNN/camvid_unet/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/camvid_unet/project.mk b/Examples/MAX78000/CNN/camvid_unet/project.mk index 3f6d37b542f..7051651494b 100644 --- a/Examples/MAX78000/CNN/camvid_unet/project.mk +++ b/Examples/MAX78000/CNN/camvid_unet/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/camvid_unet/softmax.c b/Examples/MAX78000/CNN/camvid_unet/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/camvid_unet/softmax.c +++ b/Examples/MAX78000/CNN/camvid_unet/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cats-dogs/.vscode/README.md b/Examples/MAX78000/CNN/cats-dogs/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/cats-dogs/.vscode/README.md +++ b/Examples/MAX78000/CNN/cats-dogs/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/cats-dogs/.vscode/settings.json b/Examples/MAX78000/CNN/cats-dogs/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CNN/cats-dogs/.vscode/settings.json +++ b/Examples/MAX78000/CNN/cats-dogs/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/cats-dogs/Makefile b/Examples/MAX78000/CNN/cats-dogs/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/cats-dogs/Makefile +++ b/Examples/MAX78000/CNN/cats-dogs/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/cats-dogs/cnn.c b/Examples/MAX78000/CNN/cats-dogs/cnn.c index e0c85fe4325..26c8f2e197f 100644 --- a/Examples/MAX78000/CNN/cats-dogs/cnn.c +++ b/Examples/MAX78000/CNN/cats-dogs/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cats-dogs/cnn.h b/Examples/MAX78000/CNN/cats-dogs/cnn.h index 06e79dfc7b3..b5a7f3183e4 100644 --- a/Examples/MAX78000/CNN/cats-dogs/cnn.h +++ b/Examples/MAX78000/CNN/cats-dogs/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cats-dogs/main.c b/Examples/MAX78000/CNN/cats-dogs/main.c index a993bb2bfc3..5d7217cc8fc 100644 --- a/Examples/MAX78000/CNN/cats-dogs/main.c +++ b/Examples/MAX78000/CNN/cats-dogs/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cats-dogs/project.mk b/Examples/MAX78000/CNN/cats-dogs/project.mk index 3f6d37b542f..7051651494b 100644 --- a/Examples/MAX78000/CNN/cats-dogs/project.mk +++ b/Examples/MAX78000/CNN/cats-dogs/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/cats-dogs/softmax.c b/Examples/MAX78000/CNN/cats-dogs/softmax.c index 8730ca2ebe1..fad30194997 100644 --- a/Examples/MAX78000/CNN/cats-dogs/softmax.c +++ b/Examples/MAX78000/CNN/cats-dogs/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cats-dogs_demo/.vscode/README.md b/Examples/MAX78000/CNN/cats-dogs_demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/cats-dogs_demo/.vscode/README.md +++ b/Examples/MAX78000/CNN/cats-dogs_demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/cats-dogs_demo/.vscode/settings.json b/Examples/MAX78000/CNN/cats-dogs_demo/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/CNN/cats-dogs_demo/.vscode/settings.json +++ b/Examples/MAX78000/CNN/cats-dogs_demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/cats-dogs_demo/Makefile b/Examples/MAX78000/CNN/cats-dogs_demo/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/cats-dogs_demo/Makefile +++ b/Examples/MAX78000/CNN/cats-dogs_demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/cats-dogs_demo/README.md b/Examples/MAX78000/CNN/cats-dogs_demo/README.md index 53f90da75e9..ec48d18f844 100644 --- a/Examples/MAX78000/CNN/cats-dogs_demo/README.md +++ b/Examples/MAX78000/CNN/cats-dogs_demo/README.md @@ -5,7 +5,7 @@ Description ----------- -The model trained in this demo is used to classify images of cats and dogs. 25000 images dataset is used to train the model. The dataset can be downloaded using�[https://www.kaggle.com/c/dogs-vs-cats/data](https://www.kaggle.com/c/dogs-vs-cats/data)�link. The input size is 64x64 pixels RGB which is 3x64x64 in CHW format. +The model trained in this demo is used to classify images of cats and dogs. 25000 images dataset is used to train the model. The dataset can be downloaded using�[https://www.kaggle.com/c/dogs-vs-cats/data](https://www.kaggle.com/c/dogs-vs-cats/data)�link. The input size is 128x128 pixels RGB which is 3x128x128 in CHW format. The code uses a sampledata header (sampledata.h) file to test a pre-defined input sample. The example also supports live capture from camera module and displays the image on the TFT LCD. @@ -75,13 +75,13 @@ The PB1 (SW1) button is located as shown in picture bellow: ### Camera Mode -This mode uses OVM7692 camera module to capture an image in RGB888 format. Since the model is trained using 64x64 pixel image, the PCIF peripheral captures 64x64 pixel image and displays it on LCD. +This mode uses OVM7692 camera module to capture an image in RGB888 format. Since the model is trained using 128x128 pixel image, the PCIF peripheral captures 128x128 pixel image and displays it on LCD. ### Offline Mode To operate in this mode, uncomment "#define USE\_SAMPLEDATA", defined in main.c.� -This mode uses a header file "sampledata.h" containing RGB image data and it should be included in the project to use it as an input to the cnn network.� +This mode uses a header file "sampledata.h" containing RGB image data and it should be included in the project to use it as an input to the CNN network.� To create your own header file follow these steps: diff --git a/Examples/MAX78000/CNN/cats-dogs_demo/TFT/evkit/all_imgs.c b/Examples/MAX78000/CNN/cats-dogs_demo/TFT/evkit/all_imgs.c index c568dc9683e..8367f87034f 100644 --- a/Examples/MAX78000/CNN/cats-dogs_demo/TFT/evkit/all_imgs.c +++ b/Examples/MAX78000/CNN/cats-dogs_demo/TFT/evkit/all_imgs.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cats-dogs_demo/TFT/evkit/bitmap.h b/Examples/MAX78000/CNN/cats-dogs_demo/TFT/evkit/bitmap.h index a8ca538995a..10cd62eea4b 100644 --- a/Examples/MAX78000/CNN/cats-dogs_demo/TFT/evkit/bitmap.h +++ b/Examples/MAX78000/CNN/cats-dogs_demo/TFT/evkit/bitmap.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/bmp/bmp2c.py b/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/bmp/bmp2c.py index d85d42f200a..6e4a77a77e8 100644 --- a/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/bmp/bmp2c.py +++ b/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/bmp/bmp2c.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/bmp/template.txt b/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/bmp/template.txt index ba9d86c9a51..b2b7ff6425e 100644 --- a/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/bmp/template.txt +++ b/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/bmp/template.txt @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/img_1_rgb565.c b/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/img_1_rgb565.c index 9592dd787c9..35ece44c8ad 100644 --- a/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/img_1_rgb565.c +++ b/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/img_1_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/logo_rgb565.c b/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/logo_rgb565.c index 63657903560..1b1ef1bd6d4 100644 --- a/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/logo_rgb565.c +++ b/Examples/MAX78000/CNN/cats-dogs_demo/TFT/fthr/logo_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cats-dogs_demo/cnn.c b/Examples/MAX78000/CNN/cats-dogs_demo/cnn.c index e0c85fe4325..26c8f2e197f 100644 --- a/Examples/MAX78000/CNN/cats-dogs_demo/cnn.c +++ b/Examples/MAX78000/CNN/cats-dogs_demo/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cats-dogs_demo/cnn.h b/Examples/MAX78000/CNN/cats-dogs_demo/cnn.h index 06e79dfc7b3..b5a7f3183e4 100644 --- a/Examples/MAX78000/CNN/cats-dogs_demo/cnn.h +++ b/Examples/MAX78000/CNN/cats-dogs_demo/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cats-dogs_demo/main.c b/Examples/MAX78000/CNN/cats-dogs_demo/main.c index 2df16d9b068..c9145687a93 100644 --- a/Examples/MAX78000/CNN/cats-dogs_demo/main.c +++ b/Examples/MAX78000/CNN/cats-dogs_demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -152,9 +151,7 @@ static uint8_t *rx_data = NULL; void setup_dma_tft(uint32_t *src_ptr, uint16_t byte_cnt) { // TFT DMA - while ((MXC_DMA->ch[g_dma_channel_tft].status & MXC_F_DMA_STATUS_STATUS)) { - ; - } + while ((MXC_DMA->ch[g_dma_channel_tft].status & MXC_F_DMA_STATUS_STATUS)) {} MXC_DMA->ch[g_dma_channel_tft].status = MXC_F_DMA_STATUS_CTZ_IF; // Clear CTZ status flag MXC_DMA->ch[g_dma_channel_tft].dst = (uint32_t)rx_data; // Cast Pointer @@ -187,9 +184,7 @@ void setup_dma_tft(uint32_t *src_ptr, uint16_t byte_cnt) /* **************************************************************************** */ void start_tft_dma(uint32_t *src_ptr, uint16_t byte_cnt) { - while ((MXC_DMA->ch[g_dma_channel_tft].status & MXC_F_DMA_STATUS_STATUS)) { - ; - } + while ((MXC_DMA->ch[g_dma_channel_tft].status & MXC_F_DMA_STATUS_STATUS)) {} if (MXC_DMA->ch[g_dma_channel_tft].status & MXC_F_DMA_STATUS_CTZ_IF) { MXC_DMA->ch[g_dma_channel_tft].status = MXC_F_DMA_STATUS_CTZ_IF; @@ -401,8 +396,10 @@ int main(void) Camera_Power(POWER_ON); //MXC_Delay(300000); printf("\n\nCats-vs-Dogs Feather Demo\n"); -#else +#elif defined(BOARD_EVKIT_V1) printf("\n\nCats-vs-Dogs Evkit Demo\n"); +#else + printf("\n\nCats-vs-Dogs CAM02 Demo\n"); #endif /* Enable cache */ @@ -464,7 +461,8 @@ int main(void) #ifdef BOARD_EVKIT_V1 camera_write_reg(0x11, 0x1); // set camera clock prescaller to prevent streaming overflow -#else +#endif +#ifdef BOARD_FTHR_REVA camera_write_reg(0x11, 0x0); // set camera clock prescaller to prevent streaming overflow #endif @@ -478,8 +476,10 @@ int main(void) TFT_Print(buff, 20, 130, font_2, snprintf(buff, sizeof(buff), "PRESS PB1(SW1) TO START!")); #endif +#if defined(BOARD_EVKIT_V1) || defined(BOARD_FTHR_REVA) printf("********** Press PB1(SW1) to capture an image **********\r\n"); while (!PB_Get(0)) {} +#endif #ifdef TFT_ENABLE MXC_TFT_ClearScreen(); @@ -567,9 +567,12 @@ int main(void) #ifdef ASCII_ART asciiart((uint8_t *)input_0); - printf("********** Press PB1(SW1) to capture an image **********\r\n"); #endif + +#if defined(BOARD_EVKIT_V1) || defined(BOARD_FTHR_REVA) + printf("********** Press PB1(SW1) to capture an image **********\r\n"); while (!PB_Get(0)) {} +#endif } return 0; diff --git a/Examples/MAX78000/CNN/cats-dogs_demo/project.mk b/Examples/MAX78000/CNN/cats-dogs_demo/project.mk index 3866379ae28..a7048ae0d11 100644 --- a/Examples/MAX78000/CNN/cats-dogs_demo/project.mk +++ b/Examples/MAX78000/CNN/cats-dogs_demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -14,9 +31,20 @@ # Add your config here! # Uncomment the line below to build for the MAX78000FTHR #BOARD=FTHR_RevA +# Uncomment the line below to build for the MAX78000CAM02 +#BOARD = CAM02_RevA -$(info Note: This project is designed and tested for the OV7692 only.) -override CAMERA=OV7692 +ifeq ($(BOARD),EvKit_V1) +CAMERA = OV7692 +endif + +ifeq ($(BOARD),FTHR_RevA) +CAMERA = OV7692 +endif + +ifeq ($(BOARD),CAM02_RevA) +CAMERA = GC0308 +endif # Set a higher optimization level. The increased performance # is required for the CameraIF DMA code to work within the @@ -46,9 +74,3 @@ endif ifeq ($(BOARD),CAM01_RevA) $(error ERR_NOTSUPPORTED: This project is not supported for the CAM01 board) endif - -ifeq ($(BOARD),CAM02_RevA) -$(error ERR_NOTSUPPORTED: This project is not supported for the CAM02 board) -endif - - diff --git a/Examples/MAX78000/CNN/cats-dogs_demo/softmax.c b/Examples/MAX78000/CNN/cats-dogs_demo/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/cats-dogs_demo/softmax.c +++ b/Examples/MAX78000/CNN/cats-dogs_demo/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-10-auto-test/.vscode/README.md b/Examples/MAX78000/CNN/cifar-10-auto-test/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/cifar-10-auto-test/.vscode/README.md +++ b/Examples/MAX78000/CNN/cifar-10-auto-test/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/cifar-10-auto-test/.vscode/settings.json b/Examples/MAX78000/CNN/cifar-10-auto-test/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CNN/cifar-10-auto-test/.vscode/settings.json +++ b/Examples/MAX78000/CNN/cifar-10-auto-test/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/cifar-10-auto-test/Makefile b/Examples/MAX78000/CNN/cifar-10-auto-test/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/cifar-10-auto-test/Makefile +++ b/Examples/MAX78000/CNN/cifar-10-auto-test/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/cifar-10-auto-test/cifar-10-png-loader/main.py b/Examples/MAX78000/CNN/cifar-10-auto-test/cifar-10-png-loader/main.py index d19f00eae99..66b72c421c2 100644 --- a/Examples/MAX78000/CNN/cifar-10-auto-test/cifar-10-png-loader/main.py +++ b/Examples/MAX78000/CNN/cifar-10-auto-test/cifar-10-png-loader/main.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-10-auto-test/cifar-10-png-loader/requirements.txt b/Examples/MAX78000/CNN/cifar-10-auto-test/cifar-10-png-loader/requirements.txt index 4ac5dad1f0f..ffc5e247649 100644 --- a/Examples/MAX78000/CNN/cifar-10-auto-test/cifar-10-png-loader/requirements.txt +++ b/Examples/MAX78000/CNN/cifar-10-auto-test/cifar-10-png-loader/requirements.txt @@ -1,3 +1,3 @@ ft4222>=1.2.1 -Pillow>=8.1.0 +Pillow==10.0.1 pyserial>=3.5 diff --git a/Examples/MAX78000/CNN/cifar-10-auto-test/cnn.c b/Examples/MAX78000/CNN/cifar-10-auto-test/cnn.c index 917b1747730..fe2a0566b2f 100644 --- a/Examples/MAX78000/CNN/cifar-10-auto-test/cnn.c +++ b/Examples/MAX78000/CNN/cifar-10-auto-test/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-10-auto-test/cnn.h b/Examples/MAX78000/CNN/cifar-10-auto-test/cnn.h index fda9a1a2398..675750bfee1 100644 --- a/Examples/MAX78000/CNN/cifar-10-auto-test/cnn.h +++ b/Examples/MAX78000/CNN/cifar-10-auto-test/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-10-auto-test/main.c b/Examples/MAX78000/CNN/cifar-10-auto-test/main.c index c4656717dc3..2a40e82de64 100644 --- a/Examples/MAX78000/CNN/cifar-10-auto-test/main.c +++ b/Examples/MAX78000/CNN/cifar-10-auto-test/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-10-auto-test/project.mk b/Examples/MAX78000/CNN/cifar-10-auto-test/project.mk index 4a8c859560a..c858ef142e4 100644 --- a/Examples/MAX78000/CNN/cifar-10-auto-test/project.mk +++ b/Examples/MAX78000/CNN/cifar-10-auto-test/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/cifar-10-auto-test/softmax.c b/Examples/MAX78000/CNN/cifar-10-auto-test/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/cifar-10-auto-test/softmax.c +++ b/Examples/MAX78000/CNN/cifar-10-auto-test/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-10/.vscode/README.md b/Examples/MAX78000/CNN/cifar-10/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/cifar-10/.vscode/README.md +++ b/Examples/MAX78000/CNN/cifar-10/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/cifar-10/.vscode/settings.json b/Examples/MAX78000/CNN/cifar-10/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CNN/cifar-10/.vscode/settings.json +++ b/Examples/MAX78000/CNN/cifar-10/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/cifar-10/Makefile b/Examples/MAX78000/CNN/cifar-10/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/cifar-10/Makefile +++ b/Examples/MAX78000/CNN/cifar-10/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/cifar-10/cnn.c b/Examples/MAX78000/CNN/cifar-10/cnn.c index 2d418b8a531..9d42218501d 100644 --- a/Examples/MAX78000/CNN/cifar-10/cnn.c +++ b/Examples/MAX78000/CNN/cifar-10/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-10/cnn.h b/Examples/MAX78000/CNN/cifar-10/cnn.h index 8bc36980c17..bd9cacfc948 100644 --- a/Examples/MAX78000/CNN/cifar-10/cnn.h +++ b/Examples/MAX78000/CNN/cifar-10/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-10/main.c b/Examples/MAX78000/CNN/cifar-10/main.c index f2156302dfb..641aa438728 100644 --- a/Examples/MAX78000/CNN/cifar-10/main.c +++ b/Examples/MAX78000/CNN/cifar-10/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-10/project.mk b/Examples/MAX78000/CNN/cifar-10/project.mk index 3f6d37b542f..7051651494b 100644 --- a/Examples/MAX78000/CNN/cifar-10/project.mk +++ b/Examples/MAX78000/CNN/cifar-10/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/cifar-10/softmax.c b/Examples/MAX78000/CNN/cifar-10/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/cifar-10/softmax.c +++ b/Examples/MAX78000/CNN/cifar-10/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100-mixed/.vscode/README.md b/Examples/MAX78000/CNN/cifar-100-mixed/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/cifar-100-mixed/.vscode/README.md +++ b/Examples/MAX78000/CNN/cifar-100-mixed/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/cifar-100-mixed/.vscode/settings.json b/Examples/MAX78000/CNN/cifar-100-mixed/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CNN/cifar-100-mixed/.vscode/settings.json +++ b/Examples/MAX78000/CNN/cifar-100-mixed/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/cifar-100-mixed/Makefile b/Examples/MAX78000/CNN/cifar-100-mixed/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/cifar-100-mixed/Makefile +++ b/Examples/MAX78000/CNN/cifar-100-mixed/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/cifar-100-mixed/cnn.c b/Examples/MAX78000/CNN/cifar-100-mixed/cnn.c index 1ee588e036d..53f6f93c70f 100644 --- a/Examples/MAX78000/CNN/cifar-100-mixed/cnn.c +++ b/Examples/MAX78000/CNN/cifar-100-mixed/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100-mixed/cnn.h b/Examples/MAX78000/CNN/cifar-100-mixed/cnn.h index ca29beaaaf8..fd08790b42a 100644 --- a/Examples/MAX78000/CNN/cifar-100-mixed/cnn.h +++ b/Examples/MAX78000/CNN/cifar-100-mixed/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100-mixed/main.c b/Examples/MAX78000/CNN/cifar-100-mixed/main.c index 4d91961d810..be209025a37 100644 --- a/Examples/MAX78000/CNN/cifar-100-mixed/main.c +++ b/Examples/MAX78000/CNN/cifar-100-mixed/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100-mixed/project.mk b/Examples/MAX78000/CNN/cifar-100-mixed/project.mk index 3f6d37b542f..7051651494b 100644 --- a/Examples/MAX78000/CNN/cifar-100-mixed/project.mk +++ b/Examples/MAX78000/CNN/cifar-100-mixed/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/cifar-100-mixed/softmax.c b/Examples/MAX78000/CNN/cifar-100-mixed/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/cifar-100-mixed/softmax.c +++ b/Examples/MAX78000/CNN/cifar-100-mixed/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100-residual/.vscode/README.md b/Examples/MAX78000/CNN/cifar-100-residual/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/cifar-100-residual/.vscode/README.md +++ b/Examples/MAX78000/CNN/cifar-100-residual/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/cifar-100-residual/.vscode/settings.json b/Examples/MAX78000/CNN/cifar-100-residual/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CNN/cifar-100-residual/.vscode/settings.json +++ b/Examples/MAX78000/CNN/cifar-100-residual/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/cifar-100-residual/Makefile b/Examples/MAX78000/CNN/cifar-100-residual/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/cifar-100-residual/Makefile +++ b/Examples/MAX78000/CNN/cifar-100-residual/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/cifar-100-residual/cnn.c b/Examples/MAX78000/CNN/cifar-100-residual/cnn.c index 85aa830ef55..affbc878625 100644 --- a/Examples/MAX78000/CNN/cifar-100-residual/cnn.c +++ b/Examples/MAX78000/CNN/cifar-100-residual/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100-residual/cnn.h b/Examples/MAX78000/CNN/cifar-100-residual/cnn.h index 391c23b78e4..77319099cfc 100644 --- a/Examples/MAX78000/CNN/cifar-100-residual/cnn.h +++ b/Examples/MAX78000/CNN/cifar-100-residual/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100-residual/main.c b/Examples/MAX78000/CNN/cifar-100-residual/main.c index 2be7fce0d7b..b2319e577ae 100644 --- a/Examples/MAX78000/CNN/cifar-100-residual/main.c +++ b/Examples/MAX78000/CNN/cifar-100-residual/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100-residual/project.mk b/Examples/MAX78000/CNN/cifar-100-residual/project.mk index 3f6d37b542f..7051651494b 100644 --- a/Examples/MAX78000/CNN/cifar-100-residual/project.mk +++ b/Examples/MAX78000/CNN/cifar-100-residual/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/cifar-100-residual/softmax.c b/Examples/MAX78000/CNN/cifar-100-residual/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/cifar-100-residual/softmax.c +++ b/Examples/MAX78000/CNN/cifar-100-residual/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/.vscode/README.md b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/.vscode/README.md +++ b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/.vscode/settings.json b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/.vscode/settings.json +++ b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/Makefile b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/Makefile +++ b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/cnn.c b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/cnn.c index 601732c635c..b2a1d778cbf 100644 --- a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/cnn.c +++ b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/cnn.h b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/cnn.h index 4eedd36cc4a..4572a3ed01f 100644 --- a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/cnn.h +++ b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/main.c b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/main.c index 452bfea9588..bfc6e7ef6f9 100644 --- a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/main.c +++ b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/project.mk b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/project.mk index 3f6d37b542f..7051651494b 100644 --- a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/project.mk +++ b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/softmax.c b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/softmax.c +++ b/Examples/MAX78000/CNN/cifar-100-simplewide2x-mixed/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100/.vscode/README.md b/Examples/MAX78000/CNN/cifar-100/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/cifar-100/.vscode/README.md +++ b/Examples/MAX78000/CNN/cifar-100/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/cifar-100/.vscode/settings.json b/Examples/MAX78000/CNN/cifar-100/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CNN/cifar-100/.vscode/settings.json +++ b/Examples/MAX78000/CNN/cifar-100/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/cifar-100/Makefile b/Examples/MAX78000/CNN/cifar-100/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/cifar-100/Makefile +++ b/Examples/MAX78000/CNN/cifar-100/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/cifar-100/cnn.c b/Examples/MAX78000/CNN/cifar-100/cnn.c index 5bee6ebe03c..5b3fffff3a4 100644 --- a/Examples/MAX78000/CNN/cifar-100/cnn.c +++ b/Examples/MAX78000/CNN/cifar-100/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100/cnn.h b/Examples/MAX78000/CNN/cifar-100/cnn.h index 38d4c0df458..7b7c7224468 100644 --- a/Examples/MAX78000/CNN/cifar-100/cnn.h +++ b/Examples/MAX78000/CNN/cifar-100/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100/main.c b/Examples/MAX78000/CNN/cifar-100/main.c index c252d3ef902..777997af256 100644 --- a/Examples/MAX78000/CNN/cifar-100/main.c +++ b/Examples/MAX78000/CNN/cifar-100/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/cifar-100/project.mk b/Examples/MAX78000/CNN/cifar-100/project.mk index 3f6d37b542f..7051651494b 100644 --- a/Examples/MAX78000/CNN/cifar-100/project.mk +++ b/Examples/MAX78000/CNN/cifar-100/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/cifar-100/softmax.c b/Examples/MAX78000/CNN/cifar-100/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/cifar-100/softmax.c +++ b/Examples/MAX78000/CNN/cifar-100/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/digit-detection-demo/.vscode/README.md b/Examples/MAX78000/CNN/digit-detection-demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/digit-detection-demo/.vscode/README.md +++ b/Examples/MAX78000/CNN/digit-detection-demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/digit-detection-demo/.vscode/settings.json b/Examples/MAX78000/CNN/digit-detection-demo/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/CNN/digit-detection-demo/.vscode/settings.json +++ b/Examples/MAX78000/CNN/digit-detection-demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/digit-detection-demo/Makefile b/Examples/MAX78000/CNN/digit-detection-demo/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/digit-detection-demo/Makefile +++ b/Examples/MAX78000/CNN/digit-detection-demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/digit-detection-demo/TFT/evkit/resources/all_imgs.c b/Examples/MAX78000/CNN/digit-detection-demo/TFT/evkit/resources/all_imgs.c index fbd51a336e2..005c77e7e40 100644 --- a/Examples/MAX78000/CNN/digit-detection-demo/TFT/evkit/resources/all_imgs.c +++ b/Examples/MAX78000/CNN/digit-detection-demo/TFT/evkit/resources/all_imgs.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/digit-detection-demo/TFT/evkit/resources/bitmap.h b/Examples/MAX78000/CNN/digit-detection-demo/TFT/evkit/resources/bitmap.h index f07631ce401..b42e53cfb4f 100644 --- a/Examples/MAX78000/CNN/digit-detection-demo/TFT/evkit/resources/bitmap.h +++ b/Examples/MAX78000/CNN/digit-detection-demo/TFT/evkit/resources/bitmap.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/bmp/bmp2c.py b/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/bmp/bmp2c.py index d85d42f200a..6e4a77a77e8 100644 --- a/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/bmp/bmp2c.py +++ b/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/bmp/bmp2c.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/bmp/template.txt b/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/bmp/template.txt index ba9d86c9a51..b2b7ff6425e 100644 --- a/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/bmp/template.txt +++ b/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/bmp/template.txt @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/img/img_1_rgb565.c b/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/img/img_1_rgb565.c index 9592dd787c9..35ece44c8ad 100644 --- a/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/img/img_1_rgb565.c +++ b/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/img/img_1_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/img/logo_rgb565.c b/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/img/logo_rgb565.c index 63657903560..1b1ef1bd6d4 100644 --- a/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/img/logo_rgb565.c +++ b/Examples/MAX78000/CNN/digit-detection-demo/TFT/fthr/img/logo_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/digit-detection-demo/cnn.c b/Examples/MAX78000/CNN/digit-detection-demo/cnn.c index f3d1754e50b..2bf5ff9c242 100644 --- a/Examples/MAX78000/CNN/digit-detection-demo/cnn.c +++ b/Examples/MAX78000/CNN/digit-detection-demo/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/digit-detection-demo/cnn.h b/Examples/MAX78000/CNN/digit-detection-demo/cnn.h index 319ded09215..18d54b291bb 100644 --- a/Examples/MAX78000/CNN/digit-detection-demo/cnn.h +++ b/Examples/MAX78000/CNN/digit-detection-demo/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/digit-detection-demo/main.c b/Examples/MAX78000/CNN/digit-detection-demo/main.c index f4663d1b41f..f9bd90d79a3 100644 --- a/Examples/MAX78000/CNN/digit-detection-demo/main.c +++ b/Examples/MAX78000/CNN/digit-detection-demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/digit-detection-demo/post_process.c b/Examples/MAX78000/CNN/digit-detection-demo/post_process.c index 51e9167bde1..70825c89cca 100644 --- a/Examples/MAX78000/CNN/digit-detection-demo/post_process.c +++ b/Examples/MAX78000/CNN/digit-detection-demo/post_process.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/digit-detection-demo/post_process.h b/Examples/MAX78000/CNN/digit-detection-demo/post_process.h index 8640cd6e7fc..a63649b25e7 100644 --- a/Examples/MAX78000/CNN/digit-detection-demo/post_process.h +++ b/Examples/MAX78000/CNN/digit-detection-demo/post_process.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/digit-detection-demo/project.mk b/Examples/MAX78000/CNN/digit-detection-demo/project.mk index 3b619f8cf48..f2fb3c0d9b5 100644 --- a/Examples/MAX78000/CNN/digit-detection-demo/project.mk +++ b/Examples/MAX78000/CNN/digit-detection-demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/digit-detection-demo/tft_utils.c b/Examples/MAX78000/CNN/digit-detection-demo/tft_utils.c index e6285c3e4c8..b7620ca2d35 100644 --- a/Examples/MAX78000/CNN/digit-detection-demo/tft_utils.c +++ b/Examples/MAX78000/CNN/digit-detection-demo/tft_utils.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/digit-detection-demo/tft_utils.h b/Examples/MAX78000/CNN/digit-detection-demo/tft_utils.h index bcc982f6f0e..2da409a5ba9 100644 --- a/Examples/MAX78000/CNN/digit-detection-demo/tft_utils.h +++ b/Examples/MAX78000/CNN/digit-detection-demo/tft_utils.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/faceid_112/.vscode/README.md b/Examples/MAX78000/CNN/faceid_112/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/faceid_112/.vscode/README.md +++ b/Examples/MAX78000/CNN/faceid_112/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/faceid_112/.vscode/settings.json b/Examples/MAX78000/CNN/faceid_112/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CNN/faceid_112/.vscode/settings.json +++ b/Examples/MAX78000/CNN/faceid_112/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/faceid_112/Makefile b/Examples/MAX78000/CNN/faceid_112/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/faceid_112/Makefile +++ b/Examples/MAX78000/CNN/faceid_112/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/faceid_112/cnn.c b/Examples/MAX78000/CNN/faceid_112/cnn.c index 929e2c734ce..f9e0e02ddb0 100644 --- a/Examples/MAX78000/CNN/faceid_112/cnn.c +++ b/Examples/MAX78000/CNN/faceid_112/cnn.c @@ -1,7 +1,7 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), * Copyright (C) 2023-2024 Analog Devices, Inc. All Rights Reserved. This software * is proprietary to Analog Devices, Inc. and its licensors. * diff --git a/Examples/MAX78000/CNN/faceid_112/cnn.h b/Examples/MAX78000/CNN/faceid_112/cnn.h index 2612cde9071..5ea9c06a488 100644 --- a/Examples/MAX78000/CNN/faceid_112/cnn.h +++ b/Examples/MAX78000/CNN/faceid_112/cnn.h @@ -1,7 +1,7 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), * Copyright (C) 2023-2024 Analog Devices, Inc. All Rights Reserved. This software * is proprietary to Analog Devices, Inc. and its licensors. * diff --git a/Examples/MAX78000/CNN/faceid_112/main.c b/Examples/MAX78000/CNN/faceid_112/main.c index fcc5fd586b9..15b7dbd83d2 100644 --- a/Examples/MAX78000/CNN/faceid_112/main.c +++ b/Examples/MAX78000/CNN/faceid_112/main.c @@ -1,7 +1,7 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), * Copyright (C) 2023-2024 Analog Devices, Inc. All Rights Reserved. This software * is proprietary to Analog Devices, Inc. and its licensors. * diff --git a/Examples/MAX78000/CNN/faceid_112/project.mk b/Examples/MAX78000/CNN/faceid_112/project.mk index 0aea55bc677..c5f2e7ed631 100644 --- a/Examples/MAX78000/CNN/faceid_112/project.mk +++ b/Examples/MAX78000/CNN/faceid_112/project.mk @@ -1,9 +1,26 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # ********************************************************** diff --git a/Examples/MAX78000/CNN/faceid_112/softmax.c b/Examples/MAX78000/CNN/faceid_112/softmax.c index d1a1eb73ff0..f8a90a669d0 100644 --- a/Examples/MAX78000/CNN/faceid_112/softmax.c +++ b/Examples/MAX78000/CNN/faceid_112/softmax.c @@ -18,8 +18,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), * Copyright (C) 2023-2024 Analog Devices, Inc. All Rights Reserved. This software * is proprietary to Analog Devices, Inc. and its licensors. * diff --git a/Examples/MAX78000/CNN/facial_recognition/.vscode/README.md b/Examples/MAX78000/CNN/facial_recognition/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/facial_recognition/.vscode/README.md +++ b/Examples/MAX78000/CNN/facial_recognition/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/facial_recognition/.vscode/settings.json b/Examples/MAX78000/CNN/facial_recognition/.vscode/settings.json index 972c5fad40b..dadc3717535 100755 --- a/Examples/MAX78000/CNN/facial_recognition/.vscode/settings.json +++ b/Examples/MAX78000/CNN/facial_recognition/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/facial_recognition/Makefile b/Examples/MAX78000/CNN/facial_recognition/Makefile index a9913315a31..ce8dc438fe2 100644 --- a/Examples/MAX78000/CNN/facial_recognition/Makefile +++ b/Examples/MAX78000/CNN/facial_recognition/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/.vscode/README.md b/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/.vscode/README.md +++ b/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/.vscode/settings.json b/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/.vscode/settings.json index c4920424939..9f4e2cfe26a 100755 --- a/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/.vscode/settings.json +++ b/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/Makefile b/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/Makefile index d281b0c18b0..01caecb7dad 100644 --- a/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/Makefile +++ b/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/main.c b/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/main.c index ee8caa88e31..45989705bcc 100644 --- a/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/main.c +++ b/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -84,7 +83,7 @@ void generateMessage(unsigned length) } } -int mount() +int mount(void) { fs = &fs_obj; @@ -101,7 +100,7 @@ int mount() return err; } -int umount() +int umount(void) { if ((err = f_mount(NULL, "", 0)) != FR_OK) { //Unmount the default drive from its mount point printf("Error unmounting volume: %s\n", FF_ERRORS[err]); @@ -113,7 +112,7 @@ int umount() return err; } -int formatSDHC() +int formatSDHC(void) { printf("\n\n*****THE DRIVE WILL BE FORMATTED IN 5 SECONDS*****\n"); printf("**************PRESS ANY KEY TO ABORT**************\n\n"); @@ -147,7 +146,7 @@ int formatSDHC() return err; } -int getSize() +int getSize(void) { if (!mounted) { mount(); @@ -167,7 +166,7 @@ int getSize() return err; } -int ls() +int ls(void) { if (!mounted) { mount(); @@ -203,7 +202,7 @@ int ls() return err; } -int createFile() +int createFile(void) { unsigned int length = 128; @@ -251,7 +250,7 @@ int createFile() return err; } -int appendFile() +int appendFile(void) { unsigned int length = 0; @@ -299,7 +298,7 @@ int appendFile() return err; } -int mkdir() +int mkdir(void) { if (!mounted) { mount(); @@ -328,7 +327,7 @@ int mkdir() return err; } -int cd() +int cd(void) { if (!mounted) { mount(); @@ -354,7 +353,7 @@ int cd() return err; } -int delete () +int delete (void) { if (!mounted) { mount(); @@ -377,7 +376,7 @@ int delete () return err; } -int example() +int example(void) { unsigned int length = 256; @@ -508,7 +507,7 @@ int example() return 0; } -void waitCardInserted() +void waitCardInserted(void) { // On the MAX78000FTHR board, P0.12 will be pulled low when a card is inserted. mxc_gpio_cfg_t cardDetect; diff --git a/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/project.mk b/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/project.mk index b02dc63ee07..ad827751c86 100644 --- a/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/project.mk +++ b/Examples/MAX78000/CNN/facial_recognition/SDHC_weights/project.mk @@ -1,9 +1,26 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the diff --git a/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/ai85_adapter.py b/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/ai85_adapter.py index c9450b83368..db2e8f096f7 100644 --- a/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/ai85_adapter.py +++ b/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/ai85_adapter.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/ai85_simulator.py b/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/ai85_simulator.py index c9985b05bb3..2472ffd39dd 100644 --- a/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/ai85_simulator.py +++ b/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/ai85_simulator.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/ai8x.py b/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/ai8x.py index 9c6028b2400..ad1e2ea90cb 100644 --- a/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/ai8x.py +++ b/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/ai8x.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/devices.py b/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/devices.py index 7a4bc62bae3..488bb420b23 100644 --- a/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/devices.py +++ b/Examples/MAX78000/CNN/facial_recognition/db_gen/ai85/devices.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/db_gen/generate_face_db.py b/Examples/MAX78000/CNN/facial_recognition/db_gen/generate_face_db.py index 8a37197cc34..802e993467b 100644 --- a/Examples/MAX78000/CNN/facial_recognition/db_gen/generate_face_db.py +++ b/Examples/MAX78000/CNN/facial_recognition/db_gen/generate_face_db.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -22,12 +21,13 @@ """ Script to generate Face Id embeddings """ +import torch import argparse import numpy as np import os import os.path as path from ai85.ai85_adapter import AI85SimulatorAdapter -from hawk_eyes.face import RetinaFace +from batch_face import RetinaFace from utils import append_db_file_from_path, create_weights_include_file, create_embeddings_include_file, create_baseaddr_include_file @@ -43,8 +43,11 @@ def create_db_from_folder(args): ai85_adapter = AI85SimulatorAdapter(MODEL_PATH) - face_detector = RetinaFace(model_name='retina_l', conf=0.1) - + + if torch.cuda.is_available(): + face_detector = RetinaFace(gpu_id=torch.cuda.current_device(), network="resnet50") + else: + face_detector = RetinaFace(gpu_id=-1, network="resnet50") os.makedirs(args.db, exist_ok=True) emb_array, recorded_subject = append_db_file_from_path(args.db, face_detector, ai85_adapter) diff --git a/Examples/MAX78000/CNN/facial_recognition/db_gen/parse_qat_yaml.py b/Examples/MAX78000/CNN/facial_recognition/db_gen/parse_qat_yaml.py index 5ae6e0a76c6..9b25d115e43 100644 --- a/Examples/MAX78000/CNN/facial_recognition/db_gen/parse_qat_yaml.py +++ b/Examples/MAX78000/CNN/facial_recognition/db_gen/parse_qat_yaml.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/db_gen/utils.py b/Examples/MAX78000/CNN/facial_recognition/db_gen/utils.py index 23b0d6a3939..7c6e8e2d9a3 100644 --- a/Examples/MAX78000/CNN/facial_recognition/db_gen/utils.py +++ b/Examples/MAX78000/CNN/facial_recognition/db_gen/utils.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -27,7 +26,6 @@ from collections import defaultdict import numpy as np - from cv2 import imread from PIL import Image, ExifTags import torch @@ -102,7 +100,6 @@ def append_db_file_from_path(folder_path, face_detector, ai85_adapter): img = get_face_image(img, face_detector) if img is not None: - img = ((img+1)*128) img = (img.squeeze()).detach().cpu().numpy() img = img.astype(np.uint8) img = img.transpose([1, 2, 0]) @@ -119,28 +116,26 @@ def append_db_file_from_path(folder_path, face_detector, ai85_adapter): emb_id += 1 summary[subject] += 1 - #np.save('emb_array.npy', emb_array) print('Database Summary') for key in summary: print(f'\t{key}:', f'{summary[key]} images') - #Format summary for printing image counts per subject - - return emb_array, recorded_subject + def get_face_image(img, face_detector): """Detects face on the given image """ device = torch.device('cuda:0' if torch.cuda.is_available() else 'cpu') - bboxes, lndmrks = face_detector.detect(img) - try: - pbox = bboxes[0] - except IndexError: - print('No face detected') - return None + + faces = face_detector(img) + box, landmarks, score = faces[0] + + pbox = box + for i in range(4): + pbox[i] = np.clip(pbox[i], 0, None) + img = torch.Tensor(img.transpose([2, 0, 1])).to(device).unsqueeze(0) - img = Normalize_Img(img) #Normalize image for faceID # Convert bounding box to square height = pbox[3] - pbox[1] @@ -154,7 +149,7 @@ def get_face_image(img, face_detector): # Crop image with the square bounding box img = VF.crop(img=img, top=int(pbox[1]), left=int(pbox[0]), height=int(pbox[3]-pbox[1]), width=int(pbox[2]-pbox[0])) - + # Check if the cropped image is square, if not, pad it _, _, h, w = img.shape @@ -225,7 +220,7 @@ def create_weights_include_file(emb_array, weights_h_path, baseaddr): h_file.write('#define KERNELS_3 { \\\n ') for dim in range(Embedding_dimension): init_proccessor = False - for i in range(emb_array.shape[0] + 4): # nearest %9 == 0 for 1024 is 1027, it can be kept in 1028 bytes TODO: Change this from Hardcoded + for i in range(emb_array.shape[0] + 4): # nearest %9 == 0 for 1024 is 1027, it can be kept in 1028 bytes reindex = i + 8 - 2*(i%9) if reindex < 1024: # Total emb count is 1024, last index 1023 single_byte = str(format(emb_array[reindex][dim], 'x')) #Relocate emb for cnn kernel @@ -266,7 +261,7 @@ def create_weights_include_file(emb_array, weights_h_path, baseaddr): four_byte = 0 data_arr = bytearray(np.uint8([data_arr])) for dim in range(Embedding_dimension): - for i in range(emb_array.shape[0] + 4): # nearest %9 == 0 for 1024 is 1027, it can be kept in 1028 bytes TODO: Change this from Hardcoded + for i in range(emb_array.shape[0] + 4): # nearest %9 == 0 for 1024 is 1027, it can be kept in 1028 bytes reindex = i + 8 - 2*(i%9) if reindex < 1024: # Total emb count is 1024, last index 1023 single_byte = int(emb_array[reindex][dim]) #Relocate emb for cnn kernel diff --git a/Examples/MAX78000/CNN/facial_recognition/include/MAXCAM_Debug.h b/Examples/MAX78000/CNN/facial_recognition/include/MAXCAM_Debug.h index 6721c2cbe26..8c13f5eb1c4 100644 --- a/Examples/MAX78000/CNN/facial_recognition/include/MAXCAM_Debug.h +++ b/Examples/MAX78000/CNN/facial_recognition/include/MAXCAM_Debug.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/include/baseaddr.h b/Examples/MAX78000/CNN/facial_recognition/include/baseaddr.h index 7e92dec4ac8..71272b00cd8 100644 --- a/Examples/MAX78000/CNN/facial_recognition/include/baseaddr.h +++ b/Examples/MAX78000/CNN/facial_recognition/include/baseaddr.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/include/cnn_1.h b/Examples/MAX78000/CNN/facial_recognition/include/cnn_1.h index 5a9b7d2faea..d8dcb48d45c 100644 --- a/Examples/MAX78000/CNN/facial_recognition/include/cnn_1.h +++ b/Examples/MAX78000/CNN/facial_recognition/include/cnn_1.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/include/cnn_2.h b/Examples/MAX78000/CNN/facial_recognition/include/cnn_2.h index 4adead991b8..186b17c1ebe 100644 --- a/Examples/MAX78000/CNN/facial_recognition/include/cnn_2.h +++ b/Examples/MAX78000/CNN/facial_recognition/include/cnn_2.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/include/cnn_3.h b/Examples/MAX78000/CNN/facial_recognition/include/cnn_3.h index e3f517962ce..8f5bcf7d18a 100644 --- a/Examples/MAX78000/CNN/facial_recognition/include/cnn_3.h +++ b/Examples/MAX78000/CNN/facial_recognition/include/cnn_3.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/include/embeddings.h b/Examples/MAX78000/CNN/facial_recognition/include/embeddings.h index 642a8c1ea9e..e1387c87c84 100644 --- a/Examples/MAX78000/CNN/facial_recognition/include/embeddings.h +++ b/Examples/MAX78000/CNN/facial_recognition/include/embeddings.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/include/faceID.h b/Examples/MAX78000/CNN/facial_recognition/include/faceID.h index 9e882a199a9..5f13aad07d3 100644 --- a/Examples/MAX78000/CNN/facial_recognition/include/faceID.h +++ b/Examples/MAX78000/CNN/facial_recognition/include/faceID.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/include/facedetection.h b/Examples/MAX78000/CNN/facial_recognition/include/facedetection.h index 65cbd29f529..53f1bb29ff6 100644 --- a/Examples/MAX78000/CNN/facial_recognition/include/facedetection.h +++ b/Examples/MAX78000/CNN/facial_recognition/include/facedetection.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/include/ffconf.h b/Examples/MAX78000/CNN/facial_recognition/include/ffconf.h index 35d9e58ea07..8397063a2a2 100644 --- a/Examples/MAX78000/CNN/facial_recognition/include/ffconf.h +++ b/Examples/MAX78000/CNN/facial_recognition/include/ffconf.h @@ -2,20 +2,19 @@ / Configurations of FatFs Module /---------------------------------------------------------------------------*/ -#define FFCONF_DEF 80286 /* Revision ID */ +#define FFCONF_DEF 80286 /* Revision ID */ /*---------------------------------------------------------------------------/ / Function Configurations /---------------------------------------------------------------------------*/ -#define FF_FS_READONLY 0 +#define FF_FS_READONLY 0 /* This option switches read-only configuration. (0:Read/Write or 1:Read-only) / Read-only configuration removes writing API functions, f_write(), f_sync(), / f_unlink(), f_mkdir(), f_chmod(), f_rename(), f_truncate(), f_getfree() / and optional writing functions as well. */ - -#define FF_FS_MINIMIZE 0 +#define FF_FS_MINIMIZE 0 /* This option defines minimization level to remove some basic API functions. / / 0: Basic functions are fully enabled. @@ -24,42 +23,34 @@ / 2: f_opendir(), f_readdir() and f_closedir() are removed in addition to 1. / 3: f_lseek() function is removed in addition to 2. */ - -#define FF_USE_FIND 0 +#define FF_USE_FIND 0 /* This option switches filtered directory read functions, f_findfirst() and / f_findnext(). (0:Disable, 1:Enable 2:Enable with matching altname[] too) */ - -#define FF_USE_MKFS 1 +#define FF_USE_MKFS 1 /* This option switches f_mkfs() function. (0:Disable or 1:Enable) */ - -#define FF_USE_FASTSEEK 0 +#define FF_USE_FASTSEEK 0 /* This option switches fast seek function. (0:Disable or 1:Enable) */ - -#define FF_USE_EXPAND 0 +#define FF_USE_EXPAND 0 /* This option switches f_expand function. (0:Disable or 1:Enable) */ - -#define FF_USE_CHMOD 1 +#define FF_USE_CHMOD 1 /* This option switches attribute manipulation functions, f_chmod() and f_utime(). / (0:Disable or 1:Enable) Also FF_FS_READONLY needs to be 0 to enable this option. */ - -#define FF_USE_LABEL 1 +#define FF_USE_LABEL 1 /* This option switches volume label functions, f_getlabel() and f_setlabel(). / (0:Disable or 1:Enable) */ - -#define FF_USE_FORWARD 1 +#define FF_USE_FORWARD 1 /* This option switches f_forward() function. (0:Disable or 1:Enable) */ - -#define FF_USE_STRFUNC 0 -#define FF_PRINT_LLI 1 -#define FF_PRINT_FLOAT 1 -#define FF_STRF_ENCODE 3 +#define FF_USE_STRFUNC 0 +#define FF_PRINT_LLI 1 +#define FF_PRINT_FLOAT 1 +#define FF_STRF_ENCODE 3 /* FF_USE_STRFUNC switches string functions, f_gets(), f_putc(), f_puts() and / f_printf(). / @@ -79,12 +70,11 @@ / 3: Unicode in UTF-8 */ - /*---------------------------------------------------------------------------/ / Locale and Namespace Configurations /---------------------------------------------------------------------------*/ -#define FF_CODE_PAGE 932 +#define FF_CODE_PAGE 932 /* This option specifies the OEM code page to be used on the target system. / Incorrect code page setting can cause a file open failure. / @@ -112,9 +102,8 @@ / 0 - Include all code pages above and configured by f_setcp() */ - -#define FF_USE_LFN 1 -#define FF_MAX_LFN 255 +#define FF_USE_LFN 1 +#define FF_MAX_LFN 255 /* The FF_USE_LFN switches the support for LFN (long file name). / / 0: Disable LFN. FF_MAX_LFN has no effect. @@ -132,8 +121,7 @@ / memory for the working buffer, memory management functions, ff_memalloc() and / ff_memfree() exemplified in ffsystem.c, need to be added to the project. */ - -#define FF_LFN_UNICODE 0 +#define FF_LFN_UNICODE 0 /* This option switches the character encoding on the API when LFN is enabled. / / 0: ANSI/OEM in current CP (TCHAR = char) @@ -144,16 +132,14 @@ / Also behavior of string I/O functions will be affected by this option. / When LFN is not enabled, this option has no effect. */ - -#define FF_LFN_BUF 255 -#define FF_SFN_BUF 12 +#define FF_LFN_BUF 255 +#define FF_SFN_BUF 12 /* This set of options defines size of file name members in the FILINFO structure / which is used to read out directory items. These values should be suffcient for / the file names to read. The maximum possible length of the read file name depends / on character encoding. When LFN is not enabled, these options have no effect. */ - -#define FF_FS_RPATH 2 +#define FF_FS_RPATH 2 /* This option configures support for relative path. / / 0: Disable relative path and remove related functions. @@ -161,17 +147,15 @@ / 2: f_getcwd() function is available in addition to 1. */ - /*---------------------------------------------------------------------------/ / Drive/Volume Configurations /---------------------------------------------------------------------------*/ -#define FF_VOLUMES 1 +#define FF_VOLUMES 1 /* Number of volumes (logical drives) to be used. (1-10) */ - -#define FF_STR_VOLUME_ID 0 -#define FF_VOLUME_STRS "RAM","NAND","CF","SD","SD2","USB","USB2","USB3" +#define FF_STR_VOLUME_ID 0 +#define FF_VOLUME_STRS "RAM", "NAND", "CF", "SD", "SD2", "USB", "USB2", "USB3" /* FF_STR_VOLUME_ID switches support for volume ID in arbitrary strings. / When FF_STR_VOLUME_ID is set to 1 or 2, arbitrary strings can be used as drive / number in the path name. FF_VOLUME_STRS defines the volume ID strings for each @@ -183,8 +167,7 @@ / const char* VolumeStr[FF_VOLUMES] = {"ram","flash","sd","usb",... */ - -#define FF_MULTI_PARTITION 0 +#define FF_MULTI_PARTITION 0 /* This option switches support for multiple volumes on the physical drive. / By default (0), each logical drive number is bound to the same physical drive / number and only an FAT volume found on the physical drive will be mounted. @@ -192,9 +175,8 @@ / arbitrary physical drive and partition listed in the VolToPart[]. Also f_fdisk() / function will be available. */ - -#define FF_MIN_SS 512 -#define FF_MAX_SS 512 +#define FF_MIN_SS 512 +#define FF_MAX_SS 512 /* This set of options configures the range of sector size to be supported. (512, / 1024, 2048 or 4096) Always set both 512 for most systems, generic memory card and / harddisk, but a larger value may be required for on-board flash memory and some @@ -202,45 +184,38 @@ / for variable sector size mode and disk_ioctl() function needs to implement / GET_SECTOR_SIZE command. */ - -#define FF_LBA64 0 +#define FF_LBA64 0 /* This option switches support for 64-bit LBA. (0:Disable or 1:Enable) / To enable the 64-bit LBA, also exFAT needs to be enabled. (FF_FS_EXFAT == 1) */ - -#define FF_MIN_GPT 0x10000000 +#define FF_MIN_GPT 0x10000000 /* Minimum number of sectors to switch GPT as partitioning format in f_mkfs and / f_fdisk function. 0x100000000 max. This option has no effect when FF_LBA64 == 0. */ - -#define FF_USE_TRIM 0 +#define FF_USE_TRIM 0 /* This option switches support for ATA-TRIM. (0:Disable or 1:Enable) / To enable Trim function, also CTRL_TRIM command should be implemented to the / disk_ioctl() function. */ - - /*---------------------------------------------------------------------------/ / System Configurations /---------------------------------------------------------------------------*/ -#define FF_FS_TINY 0 +#define FF_FS_TINY 0 /* This option switches tiny buffer configuration. (0:Normal or 1:Tiny) / At the tiny configuration, size of file object (FIL) is shrinked FF_MAX_SS bytes. / Instead of private sector buffer eliminated from the file object, common sector / buffer in the filesystem object (FATFS) is used for the file data transfer. */ - -#define FF_FS_EXFAT 0 +#define FF_FS_EXFAT 0 /* This option switches support for exFAT filesystem. (0:Disable or 1:Enable) / To enable exFAT, also LFN needs to be enabled. (FF_USE_LFN >= 1) / Note that enabling exFAT discards ANSI C (C89) compatibility. */ - -#define FF_FS_NORTC 1 -#define FF_NORTC_MON 1 -#define FF_NORTC_MDAY 1 -#define FF_NORTC_YEAR 2022 +#define FF_FS_NORTC 1 +#define FF_NORTC_MON 1 +#define FF_NORTC_MDAY 1 +#define FF_NORTC_YEAR 2022 /* The option FF_FS_NORTC switches timestamp feature. If the system does not have / an RTC or valid timestamp is not needed, set FF_FS_NORTC = 1 to disable the / timestamp feature. Every object modified by FatFs will have a fixed timestamp @@ -250,8 +225,7 @@ / FF_NORTC_MDAY and FF_NORTC_YEAR have no effect. / These options have no effect in read-only configuration (FF_FS_READONLY = 1). */ - -#define FF_FS_NOFSINFO 0 +#define FF_FS_NOFSINFO 0 /* If you need to know correct free space on the FAT32 volume, set bit 0 of this / option, and f_getfree() function at the first time after volume mount will force / a full FAT scan. Bit 1 controls the use of last allocated cluster number. @@ -262,8 +236,7 @@ / bit1=1: Do not trust last allocated cluster number in the FSINFO. */ - -#define FF_FS_LOCK 0 +#define FF_FS_LOCK 0 /* The option FF_FS_LOCK switches file lock function to control duplicated file open / and illegal operation to open objects. This option must be 0 when FF_FS_READONLY / is 1. @@ -274,9 +247,8 @@ / can be opened simultaneously under file lock control. Note that the file / lock control is independent of re-entrancy. */ - -#define FF_FS_REENTRANT 0 -#define FF_FS_TIMEOUT 1000 +#define FF_FS_REENTRANT 0 +#define FF_FS_TIMEOUT 1000 /* The option FF_FS_REENTRANT switches the re-entrancy (thread safe) of the FatFs / module itself. Note that regardless of this option, file access to different / volume is always re-entrant and volume control functions, f_mount(), f_mkfs() @@ -291,6 +263,4 @@ / The FF_FS_TIMEOUT defines timeout period in unit of O/S time tick. */ - - /*--- End of configuration options ---*/ diff --git a/Examples/MAX78000/CNN/facial_recognition/include/post_process.h b/Examples/MAX78000/CNN/facial_recognition/include/post_process.h index 3cb17e711eb..2788b5320b6 100644 --- a/Examples/MAX78000/CNN/facial_recognition/include/post_process.h +++ b/Examples/MAX78000/CNN/facial_recognition/include/post_process.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/include/tft_utils.h b/Examples/MAX78000/CNN/facial_recognition/include/tft_utils.h index 59006f76565..be333be3f1b 100644 --- a/Examples/MAX78000/CNN/facial_recognition/include/tft_utils.h +++ b/Examples/MAX78000/CNN/facial_recognition/include/tft_utils.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/include/utils.h b/Examples/MAX78000/CNN/facial_recognition/include/utils.h index b2074cacdcc..82e6eea1578 100644 --- a/Examples/MAX78000/CNN/facial_recognition/include/utils.h +++ b/Examples/MAX78000/CNN/facial_recognition/include/utils.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/main.c b/Examples/MAX78000/CNN/facial_recognition/main.c index 30a06bbedcc..d13d35b5b9e 100644 --- a/Examples/MAX78000/CNN/facial_recognition/main.c +++ b/Examples/MAX78000/CNN/facial_recognition/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -56,7 +55,7 @@ extern volatile uint8_t face_detected; volatile char names[1024][7]; mxc_uart_regs_t *CommUart; -void init_names() +void init_names(void) { char default_names[DEFAULT_EMBS_NUM][7] = DEFAULT_NAMES; #pragma GCC diagnostic push diff --git a/Examples/MAX78000/CNN/facial_recognition/project.mk b/Examples/MAX78000/CNN/facial_recognition/project.mk index faf9d8210df..7a7323aef4c 100644 --- a/Examples/MAX78000/CNN/facial_recognition/project.mk +++ b/Examples/MAX78000/CNN/facial_recognition/project.mk @@ -1,9 +1,26 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the diff --git a/Examples/MAX78000/CNN/facial_recognition/src/cnn_1.c b/Examples/MAX78000/CNN/facial_recognition/src/cnn_1.c index 951ef7195cf..60d4c06e76a 100644 --- a/Examples/MAX78000/CNN/facial_recognition/src/cnn_1.c +++ b/Examples/MAX78000/CNN/facial_recognition/src/cnn_1.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/src/cnn_2.c b/Examples/MAX78000/CNN/facial_recognition/src/cnn_2.c index 33dac05f852..2c50329598b 100644 --- a/Examples/MAX78000/CNN/facial_recognition/src/cnn_2.c +++ b/Examples/MAX78000/CNN/facial_recognition/src/cnn_2.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/src/cnn_3.c b/Examples/MAX78000/CNN/facial_recognition/src/cnn_3.c index 05b8ce94116..412d35d1e44 100644 --- a/Examples/MAX78000/CNN/facial_recognition/src/cnn_3.c +++ b/Examples/MAX78000/CNN/facial_recognition/src/cnn_3.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/src/faceID.c b/Examples/MAX78000/CNN/facial_recognition/src/faceID.c index a9e06ed9388..e766aaf31cd 100644 --- a/Examples/MAX78000/CNN/facial_recognition/src/faceID.c +++ b/Examples/MAX78000/CNN/facial_recognition/src/faceID.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/src/facedetection.c b/Examples/MAX78000/CNN/facial_recognition/src/facedetection.c index e8397fd73a3..61eb3b6b871 100644 --- a/Examples/MAX78000/CNN/facial_recognition/src/facedetection.c +++ b/Examples/MAX78000/CNN/facial_recognition/src/facedetection.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/src/post_process.c b/Examples/MAX78000/CNN/facial_recognition/src/post_process.c index dd17f7ce2c4..439e4ad0c8c 100644 --- a/Examples/MAX78000/CNN/facial_recognition/src/post_process.c +++ b/Examples/MAX78000/CNN/facial_recognition/src/post_process.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/src/sd.c b/Examples/MAX78000/CNN/facial_recognition/src/sd.c index b0823115a88..9f6805f6a78 100644 --- a/Examples/MAX78000/CNN/facial_recognition/src/sd.c +++ b/Examples/MAX78000/CNN/facial_recognition/src/sd.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -75,7 +74,7 @@ void generateMessage(unsigned length) } } -int mount() +int mount(void) { fs = &fs_obj; @@ -92,7 +91,7 @@ int mount() return err; } -int umount() +int umount(void) { if ((err = f_mount(NULL, "", 0)) != FR_OK) { //Unmount the default drive from its mount point PR_INFO("Error unmounting volume: %s\n", FF_ERRORS[err]); @@ -104,7 +103,7 @@ int umount() return err; } -void waitCardInserted() +void waitCardInserted(void) { // On the MAX78000FTHR board, P0.12 will be pulled low when a card is inserted. mxc_gpio_cfg_t cardDetect; diff --git a/Examples/MAX78000/CNN/facial_recognition/src/tft_utils.c b/Examples/MAX78000/CNN/facial_recognition/src/tft_utils.c index 2b3fa52bcf6..060d81bdcd8 100644 --- a/Examples/MAX78000/CNN/facial_recognition/src/tft_utils.c +++ b/Examples/MAX78000/CNN/facial_recognition/src/tft_utils.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/facial_recognition/src/utils.c b/Examples/MAX78000/CNN/facial_recognition/src/utils.c index f24b2243bca..f5b1b9b1b2c 100644 --- a/Examples/MAX78000/CNN/facial_recognition/src/utils.c +++ b/Examples/MAX78000/CNN/facial_recognition/src/utils.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/.vscode/README.md b/Examples/MAX78000/CNN/kws20_demo-riscv/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/.vscode/README.md +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/.vscode/settings.json b/Examples/MAX78000/CNN/kws20_demo-riscv/.vscode/settings.json index 9b7b2a14bd6..68ff2c9c2b1 100755 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/.vscode/settings.json +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/Makefile b/Examples/MAX78000/CNN/kws20_demo-riscv/Makefile index c922ec260e8..f31f758a45b 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/Makefile +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/Makefile.ARM b/Examples/MAX78000/CNN/kws20_demo-riscv/Makefile.ARM index 230a8498a86..22099d8c1e9 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/Makefile.ARM +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/Makefile.ARM @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/Makefile.RISCV b/Examples/MAX78000/CNN/kws20_demo-riscv/Makefile.RISCV index e68692a0ee0..a010d530c81 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/Makefile.RISCV +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/Makefile.RISCV @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/evkit/all_imgs.c b/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/evkit/all_imgs.c index c568dc9683e..8367f87034f 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/evkit/all_imgs.c +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/evkit/all_imgs.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/evkit/bitmap.h b/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/evkit/bitmap.h index a8ca538995a..10cd62eea4b 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/evkit/bitmap.h +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/evkit/bitmap.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/bmp/bmp2c.py b/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/bmp/bmp2c.py index d85d42f200a..6e4a77a77e8 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/bmp/bmp2c.py +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/bmp/bmp2c.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/bmp/template.txt b/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/bmp/template.txt index ba9d86c9a51..b2b7ff6425e 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/bmp/template.txt +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/bmp/template.txt @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/img_1_rgb565.c b/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/img_1_rgb565.c index 9592dd787c9..35ece44c8ad 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/img_1_rgb565.c +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/img_1_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/logo_rgb565.c b/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/logo_rgb565.c index 63657903560..1b1ef1bd6d4 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/logo_rgb565.c +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/TFT/fthr/logo_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/Utility/RealtimeAudio.py b/Examples/MAX78000/CNN/kws20_demo-riscv/Utility/RealtimeAudio.py index 31da54b9441..c54a7c6fa87 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/Utility/RealtimeAudio.py +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/Utility/RealtimeAudio.py @@ -2,10 +2,9 @@ ################################################################################################### ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/Utility/VoiceRecorder.py b/Examples/MAX78000/CNN/kws20_demo-riscv/Utility/VoiceRecorder.py index e467e45b2e0..ca4a3d5c893 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/Utility/VoiceRecorder.py +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/Utility/VoiceRecorder.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/cnn.c b/Examples/MAX78000/CNN/kws20_demo-riscv/cnn.c index c8b27b2d995..e759d3c1f6c 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/cnn.c +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/cnn.h b/Examples/MAX78000/CNN/kws20_demo-riscv/cnn.h index 969e6cceb16..7eb8459214d 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/cnn.h +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/main.c b/Examples/MAX78000/CNN/kws20_demo-riscv/main.c index 6ec09180cec..0599f12ac77 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/main.c +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/main_riscv.c b/Examples/MAX78000/CNN/kws20_demo-riscv/main_riscv.c index 1975893884d..f0f9b5917ef 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/main_riscv.c +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/main_riscv.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -146,7 +145,7 @@ uint8_t MicReadChunk(uint8_t *pBuff, uint16_t *avg); uint8_t AddTranspose(uint8_t *pIn, uint8_t *pOut, uint16_t inSize, uint16_t outSize, uint16_t width); uint8_t check_inference(q15_t *ml_soft, int32_t *ml_data, int16_t *out_class, double *out_prob); -void I2SInit(); +void I2SInit(void); void HPF_init(void); int16_t HPF(int16_t input); @@ -464,7 +463,7 @@ int main(void) /* **************************************************************************** */ #ifdef ENABLE_MIC_PROCESSING -void I2SInit() +void I2SInit(void) { mxc_i2s_req_t req; int32_t err; diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/project.mk b/Examples/MAX78000/CNN/kws20_demo-riscv/project.mk index 2da3325324e..a74c3b94dd7 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/project.mk +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/kws20_demo-riscv/softmax.c b/Examples/MAX78000/CNN/kws20_demo-riscv/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/kws20_demo-riscv/softmax.c +++ b/Examples/MAX78000/CNN/kws20_demo-riscv/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo/.vscode/README.md b/Examples/MAX78000/CNN/kws20_demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/kws20_demo/.vscode/README.md +++ b/Examples/MAX78000/CNN/kws20_demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/kws20_demo/.vscode/settings.json b/Examples/MAX78000/CNN/kws20_demo/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/CNN/kws20_demo/.vscode/settings.json +++ b/Examples/MAX78000/CNN/kws20_demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/kws20_demo/Makefile b/Examples/MAX78000/CNN/kws20_demo/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/kws20_demo/Makefile +++ b/Examples/MAX78000/CNN/kws20_demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/kws20_demo/TFT/evkit/all_imgs.c b/Examples/MAX78000/CNN/kws20_demo/TFT/evkit/all_imgs.c index c568dc9683e..8367f87034f 100644 --- a/Examples/MAX78000/CNN/kws20_demo/TFT/evkit/all_imgs.c +++ b/Examples/MAX78000/CNN/kws20_demo/TFT/evkit/all_imgs.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo/TFT/evkit/bitmap.h b/Examples/MAX78000/CNN/kws20_demo/TFT/evkit/bitmap.h index a8ca538995a..10cd62eea4b 100644 --- a/Examples/MAX78000/CNN/kws20_demo/TFT/evkit/bitmap.h +++ b/Examples/MAX78000/CNN/kws20_demo/TFT/evkit/bitmap.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/bmp/bmp2c.py b/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/bmp/bmp2c.py index d85d42f200a..6e4a77a77e8 100644 --- a/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/bmp/bmp2c.py +++ b/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/bmp/bmp2c.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/bmp/template.txt b/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/bmp/template.txt index ba9d86c9a51..b2b7ff6425e 100644 --- a/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/bmp/template.txt +++ b/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/bmp/template.txt @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/img_1_rgb565.c b/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/img_1_rgb565.c index 9592dd787c9..35ece44c8ad 100644 --- a/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/img_1_rgb565.c +++ b/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/img_1_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/logo_rgb565.c b/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/logo_rgb565.c index 63657903560..1b1ef1bd6d4 100644 --- a/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/logo_rgb565.c +++ b/Examples/MAX78000/CNN/kws20_demo/TFT/fthr/logo_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo/Utility/RealtimeAudio.py b/Examples/MAX78000/CNN/kws20_demo/Utility/RealtimeAudio.py index 31da54b9441..c54a7c6fa87 100644 --- a/Examples/MAX78000/CNN/kws20_demo/Utility/RealtimeAudio.py +++ b/Examples/MAX78000/CNN/kws20_demo/Utility/RealtimeAudio.py @@ -2,10 +2,9 @@ ################################################################################################### ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo/Utility/VoiceRecorder.py b/Examples/MAX78000/CNN/kws20_demo/Utility/VoiceRecorder.py index e467e45b2e0..ca4a3d5c893 100644 --- a/Examples/MAX78000/CNN/kws20_demo/Utility/VoiceRecorder.py +++ b/Examples/MAX78000/CNN/kws20_demo/Utility/VoiceRecorder.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo/Utility/bin2wav.py b/Examples/MAX78000/CNN/kws20_demo/Utility/bin2wav.py index 56145021c88..a0126277700 100644 --- a/Examples/MAX78000/CNN/kws20_demo/Utility/bin2wav.py +++ b/Examples/MAX78000/CNN/kws20_demo/Utility/bin2wav.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo/Utility/capture_serial_bin.py b/Examples/MAX78000/CNN/kws20_demo/Utility/capture_serial_bin.py index 47043c995cf..3e6fabcd667 100644 --- a/Examples/MAX78000/CNN/kws20_demo/Utility/capture_serial_bin.py +++ b/Examples/MAX78000/CNN/kws20_demo/Utility/capture_serial_bin.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo/Utility/convert_segment_wav.py b/Examples/MAX78000/CNN/kws20_demo/Utility/convert_segment_wav.py index 688326530c1..47ec74e9e09 100644 --- a/Examples/MAX78000/CNN/kws20_demo/Utility/convert_segment_wav.py +++ b/Examples/MAX78000/CNN/kws20_demo/Utility/convert_segment_wav.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo/cnn.c b/Examples/MAX78000/CNN/kws20_demo/cnn.c index a020ff0c859..d7a99d78dfd 100644 --- a/Examples/MAX78000/CNN/kws20_demo/cnn.c +++ b/Examples/MAX78000/CNN/kws20_demo/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo/cnn.h b/Examples/MAX78000/CNN/kws20_demo/cnn.h index 65499d53baa..69ba6816af5 100644 --- a/Examples/MAX78000/CNN/kws20_demo/cnn.h +++ b/Examples/MAX78000/CNN/kws20_demo/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_demo/main.c b/Examples/MAX78000/CNN/kws20_demo/main.c index b3aaca05e2d..ed8fffa6e3c 100644 --- a/Examples/MAX78000/CNN/kws20_demo/main.c +++ b/Examples/MAX78000/CNN/kws20_demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -234,7 +233,7 @@ uint8_t MicReadChunk(uint16_t *avg); uint8_t AddTranspose(uint8_t *pIn, uint8_t *pOut, uint16_t inSize, uint16_t outSize, uint16_t width); uint8_t check_inference(q15_t *ml_soft, int32_t *ml_data, int16_t *out_class, double *out_prob); -void I2SInit(); +void I2SInit(void); static void codec_init(void); void HPF_init(void); int16_t HPF(int16_t input); @@ -256,7 +255,7 @@ int font_2 = (int)&Liberation_Sans16x16[0]; int32_t tot_usec = -100000; #ifdef WUT_ENABLE -void WUT_IRQHandler() +void WUT_IRQHandler(void) { i2s_flag = 1; MXC_WUT_IntClear(); @@ -915,7 +914,7 @@ static void codec_init(void) printf("Error enabling record path"); } #endif -void I2SInit() +void I2SInit(void) { mxc_i2s_req_t req; int32_t err; diff --git a/Examples/MAX78000/CNN/kws20_demo/project.mk b/Examples/MAX78000/CNN/kws20_demo/project.mk index 97bcfa64cf2..3609230168d 100644 --- a/Examples/MAX78000/CNN/kws20_demo/project.mk +++ b/Examples/MAX78000/CNN/kws20_demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/kws20_demo/sd_util.c b/Examples/MAX78000/CNN/kws20_demo/sd_util.c index 335256d8c3e..7fd8510bf56 100644 --- a/Examples/MAX78000/CNN/kws20_demo/sd_util.c +++ b/Examples/MAX78000/CNN/kws20_demo/sd_util.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -83,7 +82,7 @@ void generateMessage(unsigned length) } } -int mount() +int mount(void) { fs = &fs_obj; @@ -100,7 +99,7 @@ int mount() return err; } -int umount() +int umount(void) { if ((err = f_mount(NULL, "", 0)) != FR_OK) { //Unmount the default drive from its mount point printf("Error unmounting volume: %s\n", FF_ERRORS[err]); @@ -112,7 +111,7 @@ int umount() return err; } -int formatSDHC() +int formatSDHC(void) { printf("\n\n*****THE DRIVE WILL BE FORMATTED IN 5 SECONDS*****\n"); printf("**************PRESS ANY KEY TO ABORT**************\n\n"); @@ -146,7 +145,7 @@ int formatSDHC() return err; } -int getSize() +int getSize(void) { if (!mounted) { mount(); @@ -166,7 +165,7 @@ int getSize() return err; } -int ls() +int ls(void) { if (!mounted) { mount(); @@ -247,7 +246,7 @@ int writeSoundSnippet(char *snippetFilename, unsigned int snippetLength, int8_t return err; } -int createFile() +int createFile(void) { unsigned int length = 128; @@ -295,7 +294,7 @@ int createFile() return err; } -int appendFile() +int appendFile(void) { unsigned int length = 0; @@ -395,7 +394,7 @@ int mkdirSoundSnippet_CD() return err; } -int mkdir() +int mkdir(void) { if (!mounted) { mount(); @@ -424,7 +423,7 @@ int mkdir() return err; } -int cd() +int cd(void) { if (!mounted) { mount(); @@ -450,7 +449,7 @@ int cd() return err; } -int delete () +int delete (void) { if (!mounted) { mount(); diff --git a/Examples/MAX78000/CNN/kws20_demo/softmax.c b/Examples/MAX78000/CNN/kws20_demo/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/kws20_demo/softmax.c +++ b/Examples/MAX78000/CNN/kws20_demo/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_v3/.vscode/README.md b/Examples/MAX78000/CNN/kws20_v3/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/kws20_v3/.vscode/README.md +++ b/Examples/MAX78000/CNN/kws20_v3/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/kws20_v3/.vscode/settings.json b/Examples/MAX78000/CNN/kws20_v3/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CNN/kws20_v3/.vscode/settings.json +++ b/Examples/MAX78000/CNN/kws20_v3/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/kws20_v3/Makefile b/Examples/MAX78000/CNN/kws20_v3/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/kws20_v3/Makefile +++ b/Examples/MAX78000/CNN/kws20_v3/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/kws20_v3/cnn.c b/Examples/MAX78000/CNN/kws20_v3/cnn.c index a020ff0c859..d7a99d78dfd 100644 --- a/Examples/MAX78000/CNN/kws20_v3/cnn.c +++ b/Examples/MAX78000/CNN/kws20_v3/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_v3/cnn.h b/Examples/MAX78000/CNN/kws20_v3/cnn.h index 65499d53baa..69ba6816af5 100644 --- a/Examples/MAX78000/CNN/kws20_v3/cnn.h +++ b/Examples/MAX78000/CNN/kws20_v3/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_v3/main.c b/Examples/MAX78000/CNN/kws20_v3/main.c index 7e5b800f161..d118f174294 100644 --- a/Examples/MAX78000/CNN/kws20_v3/main.c +++ b/Examples/MAX78000/CNN/kws20_v3/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/kws20_v3/project.mk b/Examples/MAX78000/CNN/kws20_v3/project.mk index 3f6d37b542f..7051651494b 100644 --- a/Examples/MAX78000/CNN/kws20_v3/project.mk +++ b/Examples/MAX78000/CNN/kws20_v3/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/kws20_v3/softmax.c b/Examples/MAX78000/CNN/kws20_v3/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/kws20_v3/softmax.c +++ b/Examples/MAX78000/CNN/kws20_v3/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/mnist-riscv/.vscode/README.md b/Examples/MAX78000/CNN/mnist-riscv/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/mnist-riscv/.vscode/README.md +++ b/Examples/MAX78000/CNN/mnist-riscv/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/mnist-riscv/.vscode/settings.json b/Examples/MAX78000/CNN/mnist-riscv/.vscode/settings.json index a8651f1e3cb..310a5e1d147 100755 --- a/Examples/MAX78000/CNN/mnist-riscv/.vscode/settings.json +++ b/Examples/MAX78000/CNN/mnist-riscv/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/mnist-riscv/Makefile b/Examples/MAX78000/CNN/mnist-riscv/Makefile index 135806b2993..c77339e248a 100644 --- a/Examples/MAX78000/CNN/mnist-riscv/Makefile +++ b/Examples/MAX78000/CNN/mnist-riscv/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/mnist-riscv/Makefile.ARM b/Examples/MAX78000/CNN/mnist-riscv/Makefile.ARM index d5a4e60869c..c38cfc45e94 100644 --- a/Examples/MAX78000/CNN/mnist-riscv/Makefile.ARM +++ b/Examples/MAX78000/CNN/mnist-riscv/Makefile.ARM @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/mnist-riscv/Makefile.RISCV b/Examples/MAX78000/CNN/mnist-riscv/Makefile.RISCV index 4d9eff18b94..19560aa4068 100644 --- a/Examples/MAX78000/CNN/mnist-riscv/Makefile.RISCV +++ b/Examples/MAX78000/CNN/mnist-riscv/Makefile.RISCV @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/mnist-riscv/cnn.c b/Examples/MAX78000/CNN/mnist-riscv/cnn.c index e545dd2e24a..4b7091b3598 100644 --- a/Examples/MAX78000/CNN/mnist-riscv/cnn.c +++ b/Examples/MAX78000/CNN/mnist-riscv/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/mnist-riscv/cnn.h b/Examples/MAX78000/CNN/mnist-riscv/cnn.h index 02b6031cd58..94b73c0962d 100644 --- a/Examples/MAX78000/CNN/mnist-riscv/cnn.h +++ b/Examples/MAX78000/CNN/mnist-riscv/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/mnist-riscv/main.c b/Examples/MAX78000/CNN/mnist-riscv/main.c index 11e86c42454..5916e128149 100644 --- a/Examples/MAX78000/CNN/mnist-riscv/main.c +++ b/Examples/MAX78000/CNN/mnist-riscv/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/mnist-riscv/main_riscv.c b/Examples/MAX78000/CNN/mnist-riscv/main_riscv.c index 1edf6fdfa72..79547e04ef1 100644 --- a/Examples/MAX78000/CNN/mnist-riscv/main_riscv.c +++ b/Examples/MAX78000/CNN/mnist-riscv/main_riscv.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/mnist-riscv/softmax.c b/Examples/MAX78000/CNN/mnist-riscv/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/mnist-riscv/softmax.c +++ b/Examples/MAX78000/CNN/mnist-riscv/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/mnist/.vscode/README.md b/Examples/MAX78000/CNN/mnist/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/mnist/.vscode/README.md +++ b/Examples/MAX78000/CNN/mnist/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/mnist/.vscode/settings.json b/Examples/MAX78000/CNN/mnist/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CNN/mnist/.vscode/settings.json +++ b/Examples/MAX78000/CNN/mnist/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/mnist/Makefile b/Examples/MAX78000/CNN/mnist/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/mnist/Makefile +++ b/Examples/MAX78000/CNN/mnist/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/mnist/cnn.c b/Examples/MAX78000/CNN/mnist/cnn.c index f44057dae2d..75c4584d882 100644 --- a/Examples/MAX78000/CNN/mnist/cnn.c +++ b/Examples/MAX78000/CNN/mnist/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/mnist/cnn.h b/Examples/MAX78000/CNN/mnist/cnn.h index ae5ba2e9603..c0cb98f2002 100644 --- a/Examples/MAX78000/CNN/mnist/cnn.h +++ b/Examples/MAX78000/CNN/mnist/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/mnist/main.c b/Examples/MAX78000/CNN/mnist/main.c index a9af3b5d8f4..db69d950e02 100644 --- a/Examples/MAX78000/CNN/mnist/main.c +++ b/Examples/MAX78000/CNN/mnist/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/mnist/project.mk b/Examples/MAX78000/CNN/mnist/project.mk index 3f6d37b542f..7051651494b 100644 --- a/Examples/MAX78000/CNN/mnist/project.mk +++ b/Examples/MAX78000/CNN/mnist/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/mnist/softmax.c b/Examples/MAX78000/CNN/mnist/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/mnist/softmax.c +++ b/Examples/MAX78000/CNN/mnist/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/rps-demo/.vscode/README.md b/Examples/MAX78000/CNN/rps-demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/rps-demo/.vscode/README.md +++ b/Examples/MAX78000/CNN/rps-demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/rps-demo/.vscode/settings.json b/Examples/MAX78000/CNN/rps-demo/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/CNN/rps-demo/.vscode/settings.json +++ b/Examples/MAX78000/CNN/rps-demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/rps-demo/Makefile b/Examples/MAX78000/CNN/rps-demo/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/rps-demo/Makefile +++ b/Examples/MAX78000/CNN/rps-demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/rps-demo/TFT/evkit/all_imgs.c b/Examples/MAX78000/CNN/rps-demo/TFT/evkit/all_imgs.c index c568dc9683e..8367f87034f 100644 --- a/Examples/MAX78000/CNN/rps-demo/TFT/evkit/all_imgs.c +++ b/Examples/MAX78000/CNN/rps-demo/TFT/evkit/all_imgs.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/rps-demo/TFT/evkit/bitmap.h b/Examples/MAX78000/CNN/rps-demo/TFT/evkit/bitmap.h index a8ca538995a..10cd62eea4b 100644 --- a/Examples/MAX78000/CNN/rps-demo/TFT/evkit/bitmap.h +++ b/Examples/MAX78000/CNN/rps-demo/TFT/evkit/bitmap.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/rps-demo/TFT/fthr/bmp/bmp2c.py b/Examples/MAX78000/CNN/rps-demo/TFT/fthr/bmp/bmp2c.py index d85d42f200a..6e4a77a77e8 100644 --- a/Examples/MAX78000/CNN/rps-demo/TFT/fthr/bmp/bmp2c.py +++ b/Examples/MAX78000/CNN/rps-demo/TFT/fthr/bmp/bmp2c.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/rps-demo/TFT/fthr/bmp/template.txt b/Examples/MAX78000/CNN/rps-demo/TFT/fthr/bmp/template.txt index ba9d86c9a51..b2b7ff6425e 100644 --- a/Examples/MAX78000/CNN/rps-demo/TFT/fthr/bmp/template.txt +++ b/Examples/MAX78000/CNN/rps-demo/TFT/fthr/bmp/template.txt @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/rps-demo/TFT/fthr/img_1_rgb565.c b/Examples/MAX78000/CNN/rps-demo/TFT/fthr/img_1_rgb565.c index 9592dd787c9..35ece44c8ad 100644 --- a/Examples/MAX78000/CNN/rps-demo/TFT/fthr/img_1_rgb565.c +++ b/Examples/MAX78000/CNN/rps-demo/TFT/fthr/img_1_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/rps-demo/TFT/fthr/logo_rgb565.c b/Examples/MAX78000/CNN/rps-demo/TFT/fthr/logo_rgb565.c index 63657903560..1b1ef1bd6d4 100644 --- a/Examples/MAX78000/CNN/rps-demo/TFT/fthr/logo_rgb565.c +++ b/Examples/MAX78000/CNN/rps-demo/TFT/fthr/logo_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/rps-demo/cnn.c b/Examples/MAX78000/CNN/rps-demo/cnn.c index fd10d09d6e6..05763528be3 100644 --- a/Examples/MAX78000/CNN/rps-demo/cnn.c +++ b/Examples/MAX78000/CNN/rps-demo/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/rps-demo/cnn.h b/Examples/MAX78000/CNN/rps-demo/cnn.h index 133428b9744..20153c9e181 100644 --- a/Examples/MAX78000/CNN/rps-demo/cnn.h +++ b/Examples/MAX78000/CNN/rps-demo/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/rps-demo/main.c b/Examples/MAX78000/CNN/rps-demo/main.c index 4261274aa23..251db7465a2 100644 --- a/Examples/MAX78000/CNN/rps-demo/main.c +++ b/Examples/MAX78000/CNN/rps-demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/rps-demo/project.mk b/Examples/MAX78000/CNN/rps-demo/project.mk index 3866379ae28..5ca849bea0b 100644 --- a/Examples/MAX78000/CNN/rps-demo/project.mk +++ b/Examples/MAX78000/CNN/rps-demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/rps-demo/softmax.c b/Examples/MAX78000/CNN/rps-demo/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/rps-demo/softmax.c +++ b/Examples/MAX78000/CNN/rps-demo/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/rps/.vscode/README.md b/Examples/MAX78000/CNN/rps/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/rps/.vscode/README.md +++ b/Examples/MAX78000/CNN/rps/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/rps/.vscode/settings.json b/Examples/MAX78000/CNN/rps/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CNN/rps/.vscode/settings.json +++ b/Examples/MAX78000/CNN/rps/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/rps/Makefile b/Examples/MAX78000/CNN/rps/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/rps/Makefile +++ b/Examples/MAX78000/CNN/rps/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/rps/cnn.c b/Examples/MAX78000/CNN/rps/cnn.c index fd10d09d6e6..05763528be3 100644 --- a/Examples/MAX78000/CNN/rps/cnn.c +++ b/Examples/MAX78000/CNN/rps/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/rps/cnn.h b/Examples/MAX78000/CNN/rps/cnn.h index 133428b9744..20153c9e181 100644 --- a/Examples/MAX78000/CNN/rps/cnn.h +++ b/Examples/MAX78000/CNN/rps/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/rps/main.c b/Examples/MAX78000/CNN/rps/main.c index 1490813b996..68a85602277 100644 --- a/Examples/MAX78000/CNN/rps/main.c +++ b/Examples/MAX78000/CNN/rps/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/rps/project.mk b/Examples/MAX78000/CNN/rps/project.mk index 3f6d37b542f..7051651494b 100644 --- a/Examples/MAX78000/CNN/rps/project.mk +++ b/Examples/MAX78000/CNN/rps/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/rps/softmax.c b/Examples/MAX78000/CNN/rps/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/rps/softmax.c +++ b/Examples/MAX78000/CNN/rps/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/snake_game_demo/.vscode/README.md b/Examples/MAX78000/CNN/snake_game_demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/snake_game_demo/.vscode/README.md +++ b/Examples/MAX78000/CNN/snake_game_demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/snake_game_demo/.vscode/settings.json b/Examples/MAX78000/CNN/snake_game_demo/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/CNN/snake_game_demo/.vscode/settings.json +++ b/Examples/MAX78000/CNN/snake_game_demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/snake_game_demo/Makefile b/Examples/MAX78000/CNN/snake_game_demo/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/snake_game_demo/Makefile +++ b/Examples/MAX78000/CNN/snake_game_demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/snake_game_demo/TFT/evkit/all_imgs.c b/Examples/MAX78000/CNN/snake_game_demo/TFT/evkit/all_imgs.c index c568dc9683e..8367f87034f 100644 --- a/Examples/MAX78000/CNN/snake_game_demo/TFT/evkit/all_imgs.c +++ b/Examples/MAX78000/CNN/snake_game_demo/TFT/evkit/all_imgs.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/snake_game_demo/TFT/evkit/bitmap.h b/Examples/MAX78000/CNN/snake_game_demo/TFT/evkit/bitmap.h index a8ca538995a..10cd62eea4b 100644 --- a/Examples/MAX78000/CNN/snake_game_demo/TFT/evkit/bitmap.h +++ b/Examples/MAX78000/CNN/snake_game_demo/TFT/evkit/bitmap.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/bmp/bmp2c.py b/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/bmp/bmp2c.py index d85d42f200a..6e4a77a77e8 100644 --- a/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/bmp/bmp2c.py +++ b/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/bmp/bmp2c.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/bmp/template.txt b/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/bmp/template.txt index ba9d86c9a51..b2b7ff6425e 100644 --- a/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/bmp/template.txt +++ b/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/bmp/template.txt @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/img_1_rgb565.c b/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/img_1_rgb565.c index 9592dd787c9..35ece44c8ad 100644 --- a/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/img_1_rgb565.c +++ b/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/img_1_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/logo_rgb565.c b/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/logo_rgb565.c index 63657903560..1b1ef1bd6d4 100644 --- a/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/logo_rgb565.c +++ b/Examples/MAX78000/CNN/snake_game_demo/TFT/fthr/logo_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/snake_game_demo/cnn.c b/Examples/MAX78000/CNN/snake_game_demo/cnn.c index c67199c7d32..706ec576e20 100644 --- a/Examples/MAX78000/CNN/snake_game_demo/cnn.c +++ b/Examples/MAX78000/CNN/snake_game_demo/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/snake_game_demo/cnn.h b/Examples/MAX78000/CNN/snake_game_demo/cnn.h index 969e6cceb16..7eb8459214d 100644 --- a/Examples/MAX78000/CNN/snake_game_demo/cnn.h +++ b/Examples/MAX78000/CNN/snake_game_demo/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/snake_game_demo/main.c b/Examples/MAX78000/CNN/snake_game_demo/main.c index af7dfee9015..74d97512cdf 100644 --- a/Examples/MAX78000/CNN/snake_game_demo/main.c +++ b/Examples/MAX78000/CNN/snake_game_demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -181,18 +180,18 @@ uint8_t MicReadChunk(uint8_t *pBuff, uint16_t *avg); uint8_t AddTranspose(uint8_t *pIn, uint8_t *pOut, uint16_t inSize, uint16_t outSize, uint16_t width); uint8_t check_inference(q15_t *ml_soft, int32_t *ml_data, int16_t *out_class, double *out_prob); -void I2SInit(); +void I2SInit(void); void HPF_init(void); int16_t HPF(int16_t input); -void snakeIntro(); -void setup(); -void placeFruit(); -boolean fruitIsEaten(); -void drawSnakeHead(); -void moveTheSnake(); +void snakeIntro(void); +void setup(void); +void placeFruit(void); +boolean fruitIsEaten(void); +void drawSnakeHead(void); +void moveTheSnake(void); void setSnakeDirection(int top_index); -void checkSnakeCollision(); +void checkSnakeCollision(void); // ****************************************************************************** static uint32_t setColor(int r, int g, int b) @@ -590,7 +589,7 @@ int main(void) } /* **************************************************************************** */ -void I2SInit() +void I2SInit(void) { mxc_i2s_req_t req; int32_t err; @@ -936,7 +935,7 @@ void snakeIntro(void) } // ****************************************************************************** -void setup() +void setup(void) { uint32_t color; mxc_tmr_cfg_t tmr1 = { TMR_PRES_4, TMR_MODE_CONTINUOUS, @@ -988,7 +987,7 @@ void setup() } // ****************************************************************************** -void placeFruit() +void placeFruit(void) { uint32_t color; @@ -1090,7 +1089,7 @@ void setSnakeDirection(int top_index) } // ****************************************************************************** -void checkSnakeCollision() +void checkSnakeCollision(void) { for (int k = 0; k < snakeLength - 1; k++) { if (positions[0][k] == positions[0][snakeLength - 1] && @@ -1101,7 +1100,7 @@ void checkSnakeCollision() } // ****************************************************************************** -boolean fruitIsEaten() +boolean fruitIsEaten(void) { uint32_t color; @@ -1160,7 +1159,7 @@ boolean fruitIsEaten() } // ****************************************************************************** -void updatePositions() +void updatePositions(void) { uint32_t color; // Delete the tail of the snake @@ -1176,7 +1175,7 @@ void updatePositions() } // ****************************************************************************** -void drawSnakeHead() +void drawSnakeHead(void) { uint32_t color; // this function draw the new head of the snake @@ -1186,7 +1185,7 @@ void drawSnakeHead() } // ****************************************************************************** -void moveTheSnake() +void moveTheSnake(void) { // move the snake according to the direction switch (snakeDirection) { diff --git a/Examples/MAX78000/CNN/snake_game_demo/project.mk b/Examples/MAX78000/CNN/snake_game_demo/project.mk index 88fcbe7632a..43ddad49e8f 100644 --- a/Examples/MAX78000/CNN/snake_game_demo/project.mk +++ b/Examples/MAX78000/CNN/snake_game_demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/snake_game_demo/softmax.c b/Examples/MAX78000/CNN/snake_game_demo/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/snake_game_demo/softmax.c +++ b/Examples/MAX78000/CNN/snake_game_demo/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/svhn_tinierssd/.vscode/README.md b/Examples/MAX78000/CNN/svhn_tinierssd/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CNN/svhn_tinierssd/.vscode/README.md +++ b/Examples/MAX78000/CNN/svhn_tinierssd/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CNN/svhn_tinierssd/.vscode/settings.json b/Examples/MAX78000/CNN/svhn_tinierssd/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CNN/svhn_tinierssd/.vscode/settings.json +++ b/Examples/MAX78000/CNN/svhn_tinierssd/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CNN/svhn_tinierssd/Makefile b/Examples/MAX78000/CNN/svhn_tinierssd/Makefile index bc9f51b8434..8c8c1353a9d 100644 --- a/Examples/MAX78000/CNN/svhn_tinierssd/Makefile +++ b/Examples/MAX78000/CNN/svhn_tinierssd/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CNN/svhn_tinierssd/cnn.c b/Examples/MAX78000/CNN/svhn_tinierssd/cnn.c index 14d818f028c..2faa9b821ff 100644 --- a/Examples/MAX78000/CNN/svhn_tinierssd/cnn.c +++ b/Examples/MAX78000/CNN/svhn_tinierssd/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/svhn_tinierssd/cnn.h b/Examples/MAX78000/CNN/svhn_tinierssd/cnn.h index b551e917b14..6c62bcee313 100644 --- a/Examples/MAX78000/CNN/svhn_tinierssd/cnn.h +++ b/Examples/MAX78000/CNN/svhn_tinierssd/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/svhn_tinierssd/main.c b/Examples/MAX78000/CNN/svhn_tinierssd/main.c index 5ae3627c5cb..bebca65c819 100644 --- a/Examples/MAX78000/CNN/svhn_tinierssd/main.c +++ b/Examples/MAX78000/CNN/svhn_tinierssd/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CNN/svhn_tinierssd/project.mk b/Examples/MAX78000/CNN/svhn_tinierssd/project.mk index 3f6d37b542f..7051651494b 100644 --- a/Examples/MAX78000/CNN/svhn_tinierssd/project.mk +++ b/Examples/MAX78000/CNN/svhn_tinierssd/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CNN/svhn_tinierssd/softmax.c b/Examples/MAX78000/CNN/svhn_tinierssd/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78000/CNN/svhn_tinierssd/softmax.c +++ b/Examples/MAX78000/CNN/svhn_tinierssd/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CRC/.vscode/README.md b/Examples/MAX78000/CRC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CRC/.vscode/README.md +++ b/Examples/MAX78000/CRC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CRC/.vscode/settings.json b/Examples/MAX78000/CRC/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/CRC/.vscode/settings.json +++ b/Examples/MAX78000/CRC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CRC/Makefile b/Examples/MAX78000/CRC/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/CRC/Makefile +++ b/Examples/MAX78000/CRC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CRC/main.c b/Examples/MAX78000/CRC/main.c index 60577eaf74f..a7c0547a69e 100644 --- a/Examples/MAX78000/CRC/main.c +++ b/Examples/MAX78000/CRC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CRC/project.mk b/Examples/MAX78000/CRC/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX78000/CRC/project.mk +++ b/Examples/MAX78000/CRC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CameraIF/.vscode/README.md b/Examples/MAX78000/CameraIF/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CameraIF/.vscode/README.md +++ b/Examples/MAX78000/CameraIF/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CameraIF/.vscode/settings.json b/Examples/MAX78000/CameraIF/.vscode/settings.json index a51700c2ca7..7eb4950dc2d 100755 --- a/Examples/MAX78000/CameraIF/.vscode/settings.json +++ b/Examples/MAX78000/CameraIF/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CameraIF/Makefile b/Examples/MAX78000/CameraIF/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/CameraIF/Makefile +++ b/Examples/MAX78000/CameraIF/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CameraIF/main.c b/Examples/MAX78000/CameraIF/main.c index 224c699f100..49fb4926510 100644 --- a/Examples/MAX78000/CameraIF/main.c +++ b/Examples/MAX78000/CameraIF/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CameraIF/pc_utility/comManager.py b/Examples/MAX78000/CameraIF/pc_utility/comManager.py index 24b55b3f486..5f727114ea6 100644 --- a/Examples/MAX78000/CameraIF/pc_utility/comManager.py +++ b/Examples/MAX78000/CameraIF/pc_utility/comManager.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CameraIF/pc_utility/grab_image.py b/Examples/MAX78000/CameraIF/pc_utility/grab_image.py index 15d7b6054c6..8c3aed5a3fd 100644 --- a/Examples/MAX78000/CameraIF/pc_utility/grab_image.py +++ b/Examples/MAX78000/CameraIF/pc_utility/grab_image.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CameraIF/pc_utility/imgConverter.py b/Examples/MAX78000/CameraIF/pc_utility/imgConverter.py index a798bcb6bd0..a1a2a345e4a 100644 --- a/Examples/MAX78000/CameraIF/pc_utility/imgConverter.py +++ b/Examples/MAX78000/CameraIF/pc_utility/imgConverter.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CameraIF/pc_utility/requirements.txt b/Examples/MAX78000/CameraIF/pc_utility/requirements.txt index af188cbbcb5..820c3eff323 100644 --- a/Examples/MAX78000/CameraIF/pc_utility/requirements.txt +++ b/Examples/MAX78000/CameraIF/pc_utility/requirements.txt @@ -1,4 +1,4 @@ numpy==1.22.4 opencv-python==4.5.5.64 -Pillow==9.3.0 +Pillow==10.0.1 pyserial==3.5 diff --git a/Examples/MAX78000/CameraIF/project.mk b/Examples/MAX78000/CameraIF/project.mk index 0af00526489..0d34f524e46 100644 --- a/Examples/MAX78000/CameraIF/project.mk +++ b/Examples/MAX78000/CameraIF/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CameraIF/utils.c b/Examples/MAX78000/CameraIF/utils.c index 6c8152b69e6..fa6bd55e2d9 100644 --- a/Examples/MAX78000/CameraIF/utils.c +++ b/Examples/MAX78000/CameraIF/utils.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CameraIF/utils.h b/Examples/MAX78000/CameraIF/utils.h index b457ca05612..d0584af7e4d 100644 --- a/Examples/MAX78000/CameraIF/utils.h +++ b/Examples/MAX78000/CameraIF/utils.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CameraIF_Debayer/.vscode/README.md b/Examples/MAX78000/CameraIF_Debayer/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/CameraIF_Debayer/.vscode/README.md +++ b/Examples/MAX78000/CameraIF_Debayer/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/CameraIF_Debayer/.vscode/settings.json b/Examples/MAX78000/CameraIF_Debayer/.vscode/settings.json index a51700c2ca7..7eb4950dc2d 100755 --- a/Examples/MAX78000/CameraIF_Debayer/.vscode/settings.json +++ b/Examples/MAX78000/CameraIF_Debayer/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/CameraIF_Debayer/Makefile b/Examples/MAX78000/CameraIF_Debayer/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/CameraIF_Debayer/Makefile +++ b/Examples/MAX78000/CameraIF_Debayer/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/CameraIF_Debayer/main.c b/Examples/MAX78000/CameraIF_Debayer/main.c index 9c4d62adade..e2dd967879a 100644 --- a/Examples/MAX78000/CameraIF_Debayer/main.c +++ b/Examples/MAX78000/CameraIF_Debayer/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CameraIF_Debayer/pc_utility/comManager.py b/Examples/MAX78000/CameraIF_Debayer/pc_utility/comManager.py index 24b55b3f486..5f727114ea6 100644 --- a/Examples/MAX78000/CameraIF_Debayer/pc_utility/comManager.py +++ b/Examples/MAX78000/CameraIF_Debayer/pc_utility/comManager.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CameraIF_Debayer/pc_utility/grab_image.py b/Examples/MAX78000/CameraIF_Debayer/pc_utility/grab_image.py index d3a643b9025..57bd4e382b4 100644 --- a/Examples/MAX78000/CameraIF_Debayer/pc_utility/grab_image.py +++ b/Examples/MAX78000/CameraIF_Debayer/pc_utility/grab_image.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CameraIF_Debayer/pc_utility/imgConverter.py b/Examples/MAX78000/CameraIF_Debayer/pc_utility/imgConverter.py index 37221267ea7..11d8393ef5b 100644 --- a/Examples/MAX78000/CameraIF_Debayer/pc_utility/imgConverter.py +++ b/Examples/MAX78000/CameraIF_Debayer/pc_utility/imgConverter.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CameraIF_Debayer/pc_utility/temo/comManager.py b/Examples/MAX78000/CameraIF_Debayer/pc_utility/temo/comManager.py index 24b55b3f486..5f727114ea6 100644 --- a/Examples/MAX78000/CameraIF_Debayer/pc_utility/temo/comManager.py +++ b/Examples/MAX78000/CameraIF_Debayer/pc_utility/temo/comManager.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CameraIF_Debayer/pc_utility/temo/grab_image.py b/Examples/MAX78000/CameraIF_Debayer/pc_utility/temo/grab_image.py index 25a4c970202..80ecce24770 100644 --- a/Examples/MAX78000/CameraIF_Debayer/pc_utility/temo/grab_image.py +++ b/Examples/MAX78000/CameraIF_Debayer/pc_utility/temo/grab_image.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CameraIF_Debayer/pc_utility/temo/imgConverter.py b/Examples/MAX78000/CameraIF_Debayer/pc_utility/temo/imgConverter.py index e3f75c118dd..def85e03fe5 100644 --- a/Examples/MAX78000/CameraIF_Debayer/pc_utility/temo/imgConverter.py +++ b/Examples/MAX78000/CameraIF_Debayer/pc_utility/temo/imgConverter.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CameraIF_Debayer/project.mk b/Examples/MAX78000/CameraIF_Debayer/project.mk index eecba6018c0..d0ee4d5fc2a 100644 --- a/Examples/MAX78000/CameraIF_Debayer/project.mk +++ b/Examples/MAX78000/CameraIF_Debayer/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/CameraIF_Debayer/utils.c b/Examples/MAX78000/CameraIF_Debayer/utils.c index fa0835ef872..a73c627c3b7 100644 --- a/Examples/MAX78000/CameraIF_Debayer/utils.c +++ b/Examples/MAX78000/CameraIF_Debayer/utils.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/CameraIF_Debayer/utils.h b/Examples/MAX78000/CameraIF_Debayer/utils.h index d0f27cd8291..ac955c8212f 100644 --- a/Examples/MAX78000/CameraIF_Debayer/utils.h +++ b/Examples/MAX78000/CameraIF_Debayer/utils.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/Coremark/.vscode/README.md b/Examples/MAX78000/Coremark/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/Coremark/.vscode/README.md +++ b/Examples/MAX78000/Coremark/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/Coremark/.vscode/settings.json b/Examples/MAX78000/Coremark/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/Coremark/.vscode/settings.json +++ b/Examples/MAX78000/Coremark/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/Coremark/Makefile b/Examples/MAX78000/Coremark/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/Coremark/Makefile +++ b/Examples/MAX78000/Coremark/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/Coremark/project.mk b/Examples/MAX78000/Coremark/project.mk index 9ded8091069..a6efc624169 100644 --- a/Examples/MAX78000/Coremark/project.mk +++ b/Examples/MAX78000/Coremark/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/DMA/.vscode/README.md b/Examples/MAX78000/DMA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/DMA/.vscode/README.md +++ b/Examples/MAX78000/DMA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/DMA/.vscode/settings.json b/Examples/MAX78000/DMA/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/DMA/.vscode/settings.json +++ b/Examples/MAX78000/DMA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/DMA/Makefile b/Examples/MAX78000/DMA/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/DMA/Makefile +++ b/Examples/MAX78000/DMA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/DMA/main.c b/Examples/MAX78000/DMA/main.c index 978a3ca2b49..d47359178db 100644 --- a/Examples/MAX78000/DMA/main.c +++ b/Examples/MAX78000/DMA/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -58,7 +57,7 @@ void memCpyComplete(void *dest) flag++; } -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); } diff --git a/Examples/MAX78000/DMA/project.mk b/Examples/MAX78000/DMA/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX78000/DMA/project.mk +++ b/Examples/MAX78000/DMA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ECC/.vscode/README.md b/Examples/MAX78000/ECC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ECC/.vscode/README.md +++ b/Examples/MAX78000/ECC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ECC/.vscode/settings.json b/Examples/MAX78000/ECC/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/ECC/.vscode/settings.json +++ b/Examples/MAX78000/ECC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ECC/Makefile b/Examples/MAX78000/ECC/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/ECC/Makefile +++ b/Examples/MAX78000/ECC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ECC/main.c b/Examples/MAX78000/ECC/main.c index 92c030d1243..4ab231a00eb 100644 --- a/Examples/MAX78000/ECC/main.c +++ b/Examples/MAX78000/ECC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/ECC/project.mk b/Examples/MAX78000/ECC/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX78000/ECC/project.mk +++ b/Examples/MAX78000/ECC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/EEPROM_Emulator/.vscode/README.md b/Examples/MAX78000/EEPROM_Emulator/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/EEPROM_Emulator/.vscode/README.md +++ b/Examples/MAX78000/EEPROM_Emulator/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/EEPROM_Emulator/.vscode/settings.json b/Examples/MAX78000/EEPROM_Emulator/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/EEPROM_Emulator/.vscode/settings.json +++ b/Examples/MAX78000/EEPROM_Emulator/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/EEPROM_Emulator/Makefile b/Examples/MAX78000/EEPROM_Emulator/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/EEPROM_Emulator/Makefile +++ b/Examples/MAX78000/EEPROM_Emulator/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/EEPROM_Emulator/include/cache.h b/Examples/MAX78000/EEPROM_Emulator/include/cache.h index 454a85aa1bc..93796bfeeb7 100644 --- a/Examples/MAX78000/EEPROM_Emulator/include/cache.h +++ b/Examples/MAX78000/EEPROM_Emulator/include/cache.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/EEPROM_Emulator/include/eeprom.h b/Examples/MAX78000/EEPROM_Emulator/include/eeprom.h index be3f060ffe4..454e634067b 100644 --- a/Examples/MAX78000/EEPROM_Emulator/include/eeprom.h +++ b/Examples/MAX78000/EEPROM_Emulator/include/eeprom.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/EEPROM_Emulator/main.c b/Examples/MAX78000/EEPROM_Emulator/main.c index 2c286d5a280..6ddbc2e6db6 100644 --- a/Examples/MAX78000/EEPROM_Emulator/main.c +++ b/Examples/MAX78000/EEPROM_Emulator/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/EEPROM_Emulator/project.mk b/Examples/MAX78000/EEPROM_Emulator/project.mk index c5bb8a2183b..df25f6eb71c 100644 --- a/Examples/MAX78000/EEPROM_Emulator/project.mk +++ b/Examples/MAX78000/EEPROM_Emulator/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/EEPROM_Emulator/src/cache.c b/Examples/MAX78000/EEPROM_Emulator/src/cache.c index 17bc7b57c13..adf98b89839 100644 --- a/Examples/MAX78000/EEPROM_Emulator/src/cache.c +++ b/Examples/MAX78000/EEPROM_Emulator/src/cache.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/EEPROM_Emulator/src/eeprom.c b/Examples/MAX78000/EEPROM_Emulator/src/eeprom.c index 22ede1df092..266766e2e42 100644 --- a/Examples/MAX78000/EEPROM_Emulator/src/eeprom.c +++ b/Examples/MAX78000/EEPROM_Emulator/src/eeprom.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/FTHR_I2C/.vscode/README.md b/Examples/MAX78000/FTHR_I2C/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/FTHR_I2C/.vscode/README.md +++ b/Examples/MAX78000/FTHR_I2C/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/FTHR_I2C/.vscode/settings.json b/Examples/MAX78000/FTHR_I2C/.vscode/settings.json index c4920424939..9f4e2cfe26a 100755 --- a/Examples/MAX78000/FTHR_I2C/.vscode/settings.json +++ b/Examples/MAX78000/FTHR_I2C/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/FTHR_I2C/Makefile b/Examples/MAX78000/FTHR_I2C/Makefile index 6a71f2f2f92..cd931a35c02 100644 --- a/Examples/MAX78000/FTHR_I2C/Makefile +++ b/Examples/MAX78000/FTHR_I2C/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/FTHR_I2C/main.c b/Examples/MAX78000/FTHR_I2C/main.c index 7433358181a..5c403f7a313 100644 --- a/Examples/MAX78000/FTHR_I2C/main.c +++ b/Examples/MAX78000/FTHR_I2C/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -85,7 +84,7 @@ void SetLEDs(int state) } } -int main() +int main(void) { MXC_Delay(MXC_DELAY_MSEC(500)); //Wait for PMIC to power-up printf("\n******** Featherboard I2C Demo *********\n"); diff --git a/Examples/MAX78000/FTHR_I2C/project.mk b/Examples/MAX78000/FTHR_I2C/project.mk index 29264b5f9fb..3dd8b107223 100644 --- a/Examples/MAX78000/FTHR_I2C/project.mk +++ b/Examples/MAX78000/FTHR_I2C/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/FTHR_SRAM/.vscode/README.md b/Examples/MAX78000/FTHR_SRAM/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/FTHR_SRAM/.vscode/README.md +++ b/Examples/MAX78000/FTHR_SRAM/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/FTHR_SRAM/.vscode/settings.json b/Examples/MAX78000/FTHR_SRAM/.vscode/settings.json index b0d25720645..226444ec03c 100755 --- a/Examples/MAX78000/FTHR_SRAM/.vscode/settings.json +++ b/Examples/MAX78000/FTHR_SRAM/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/FTHR_SRAM/Makefile b/Examples/MAX78000/FTHR_SRAM/Makefile index 6a71f2f2f92..cd931a35c02 100644 --- a/Examples/MAX78000/FTHR_SRAM/Makefile +++ b/Examples/MAX78000/FTHR_SRAM/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/FTHR_SRAM/fastspi.old b/Examples/MAX78000/FTHR_SRAM/fastspi.old index 981a3a60e84..c73c7e0799f 100644 --- a/Examples/MAX78000/FTHR_SRAM/fastspi.old +++ b/Examples/MAX78000/FTHR_SRAM/fastspi.old @@ -60,7 +60,7 @@ uint32_t g_tx_len; ((x) == 2) ? DMA2_IRQn : \ DMA3_IRQn)) -void DMA_TX_IRQHandler() +void DMA_TX_IRQHandler(void) { volatile mxc_dma_ch_regs_t *ch = &MXC_DMA->ch[g_tx_channel]; // Cast the pointer for readability in this ISR @@ -76,7 +76,7 @@ void DMA_TX_IRQHandler() } } -void DMA_RX_IRQHandler() +void DMA_RX_IRQHandler(void) { volatile mxc_dma_ch_regs_t *ch = &MXC_DMA->ch[g_rx_channel]; // Cast the pointer for readability in this ISR @@ -92,7 +92,7 @@ void DMA_RX_IRQHandler() } } -void processSPI() +void processSPI(void) { // Unload any SPI data that has come in while (g_rx_buffer && (SPI->dma & MXC_F_SPI_DMA_RX_LVL) && g_rx_len > 0) { @@ -186,7 +186,7 @@ int dma_init() return err; } -int spi_init() +int spi_init(void) { // TODO(Jake): Add software-controlled slave select functionality MXC_SYS_ClockEnable(MXC_SYS_PERIPH_CLOCK_SPI0); diff --git a/Examples/MAX78000/FTHR_SRAM/main.c b/Examples/MAX78000/FTHR_SRAM/main.c index e301284796e..5620cc2c252 100644 --- a/Examples/MAX78000/FTHR_SRAM/main.c +++ b/Examples/MAX78000/FTHR_SRAM/main.c @@ -1,7 +1,6 @@ /****************************************************************************** * - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/FTHR_SRAM/project.mk b/Examples/MAX78000/FTHR_SRAM/project.mk index c6a3275d83c..de01ef6e4fa 100644 --- a/Examples/MAX78000/FTHR_SRAM/project.mk +++ b/Examples/MAX78000/FTHR_SRAM/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/Flash/.vscode/README.md b/Examples/MAX78000/Flash/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/Flash/.vscode/README.md +++ b/Examples/MAX78000/Flash/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/Flash/.vscode/settings.json b/Examples/MAX78000/Flash/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/Flash/.vscode/settings.json +++ b/Examples/MAX78000/Flash/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/Flash/Makefile b/Examples/MAX78000/Flash/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/Flash/Makefile +++ b/Examples/MAX78000/Flash/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/Flash/main.c b/Examples/MAX78000/Flash/main.c index 9ceda99abe1..b4eb6a75b99 100644 --- a/Examples/MAX78000/Flash/main.c +++ b/Examples/MAX78000/Flash/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -62,7 +61,7 @@ volatile uint32_t isr_flags; //****************************************************************************** int button_pressed = 0; -void button_handler() +void button_handler(void) { button_pressed = 1; } @@ -123,7 +122,7 @@ void setup_irqs(void) isr_cnt = 0; } -int write_test_pattern() +int write_test_pattern(void) { int err; // A flash address must be in the erased state before writing to it, because the @@ -165,7 +164,7 @@ int write_test_pattern() return err; } -int validate_test_pattern() +int validate_test_pattern(void) { int err = 0; @@ -185,7 +184,7 @@ int validate_test_pattern() return err; } -int erase_magic() +int erase_magic(void) { /* To modify a location in flash that has already been written to, diff --git a/Examples/MAX78000/Flash/project.mk b/Examples/MAX78000/Flash/project.mk index a0b56247f10..1c0862aaf1e 100644 --- a/Examples/MAX78000/Flash/project.mk +++ b/Examples/MAX78000/Flash/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/Flash_CLI/.vscode/README.md b/Examples/MAX78000/Flash_CLI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/Flash_CLI/.vscode/README.md +++ b/Examples/MAX78000/Flash_CLI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/Flash_CLI/.vscode/settings.json b/Examples/MAX78000/Flash_CLI/.vscode/settings.json index d8450cc9d11..c687ef96b1a 100755 --- a/Examples/MAX78000/Flash_CLI/.vscode/settings.json +++ b/Examples/MAX78000/Flash_CLI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/Flash_CLI/FreeRTOSConfig.h b/Examples/MAX78000/Flash_CLI/FreeRTOSConfig.h index 14ea933783a..71745936859 100644 --- a/Examples/MAX78000/Flash_CLI/FreeRTOSConfig.h +++ b/Examples/MAX78000/Flash_CLI/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/Flash_CLI/Makefile b/Examples/MAX78000/Flash_CLI/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/Flash_CLI/Makefile +++ b/Examples/MAX78000/Flash_CLI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/Flash_CLI/definitions.h b/Examples/MAX78000/Flash_CLI/definitions.h index 2dc0fa60156..1bf71c7063e 100644 --- a/Examples/MAX78000/Flash_CLI/definitions.h +++ b/Examples/MAX78000/Flash_CLI/definitions.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/Flash_CLI/main.c b/Examples/MAX78000/Flash_CLI/main.c index 02ab99a5bc0..7f729096f4d 100644 --- a/Examples/MAX78000/Flash_CLI/main.c +++ b/Examples/MAX78000/Flash_CLI/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/Flash_CLI/project.mk b/Examples/MAX78000/Flash_CLI/project.mk index c57a7e47a00..1ff79eed05c 100644 --- a/Examples/MAX78000/Flash_CLI/project.mk +++ b/Examples/MAX78000/Flash_CLI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/FreeRTOSDemo/.vscode/README.md b/Examples/MAX78000/FreeRTOSDemo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/FreeRTOSDemo/.vscode/README.md +++ b/Examples/MAX78000/FreeRTOSDemo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/FreeRTOSDemo/.vscode/settings.json b/Examples/MAX78000/FreeRTOSDemo/.vscode/settings.json index 037f65d8c76..9e9177f89f9 100755 --- a/Examples/MAX78000/FreeRTOSDemo/.vscode/settings.json +++ b/Examples/MAX78000/FreeRTOSDemo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/FreeRTOSDemo/FreeRTOSConfig.h b/Examples/MAX78000/FreeRTOSDemo/FreeRTOSConfig.h index ed4be6e9fcc..0ddbcd0bf36 100644 --- a/Examples/MAX78000/FreeRTOSDemo/FreeRTOSConfig.h +++ b/Examples/MAX78000/FreeRTOSDemo/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -25,6 +24,27 @@ #include #include "max78000.h" +// MSDK Debug flags +#if defined(DEBUG) && DEBUG == 1 +// RTOS Stats Timer Functions +extern void ConfigTimerForStats(void); +extern uint32_t GetTimerForStats(void); +#define portCONFIGURE_TIMER_FOR_RUN_TIME_STATS() (ConfigTimerForStats()) +#define portGET_RUN_TIME_COUNTER_VALUE() (GetTimerForStats()) +#define configGENERATE_RUN_TIME_STATS 1 + +// RTOS Assert & other debug configuration +#define configASSERT(x) \ + if ((x) == 0) { \ + taskDISABLE_INTERRUPTS(); \ + for (;;) {} \ + } +#define configENABLE_BACKWARD_COMPATIBILITY 1 +#define configQUEUE_REGISTRY_SIZE 10 +#define configRECORD_STACK_HIGH_ADDRESS 1 + +#endif + /*----------------------------------------------------------- * Application specific definitions. * diff --git a/Examples/MAX78000/FreeRTOSDemo/FreeRTOS_Debug.c b/Examples/MAX78000/FreeRTOSDemo/FreeRTOS_Debug.c new file mode 100644 index 00000000000..594b465010d --- /dev/null +++ b/Examples/MAX78000/FreeRTOSDemo/FreeRTOS_Debug.c @@ -0,0 +1,121 @@ +/****************************************************************************** + * + * Copyright (C) 2023-2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file FreeRTOS_Debug.c + * @brief FreeRTOS Debug utilities including RTOS Stats Timer + * and template HardFault Handler + */ + +#include "FreeRTOS.h" +#include "task.h" +#include "tmr.h" +#include "nvic_table.h" + +// Only include the contents of this file if DEBUG == 1 +#if defined(DEBUG) && (DEBUG == 1) + +// Scheduler tick is 1ms +// RTOS Stats Clock should be 10-100x faster +#define RTOS_STATS_TMR MXC_TMR0 +#define RTOS_STATS_TMR_SRC MXC_TMR_32K_CLK +#define RTOS_STATS_TMR_CNT 0xFFFFFFFF + +/** NOTE: + * Based on this configuration, this timer will roll over after 2^32 / (TMR_SRC / prescaler) seconds. + * Because the RTOS tracks the total time, rollover events cannot be protected by the application. + * Thus, rollover events will affect statistics over long periods of measurement. + * + * EXAMPLE: + * With APB Clock as the source & 2048 prescale, this will be 2^32 / 32000 = 134,217 s. or ~93 days. + * + * **/ +void ConfigTimerForStats() +{ + mxc_tmr_cfg_t tmr; + + MXC_TMR_Shutdown(RTOS_STATS_TMR); + + tmr.pres = MXC_TMR_PRES_1; + tmr.mode = TMR_MODE_CONTINUOUS; + tmr.bitMode = MXC_TMR_BIT_MODE_32; + tmr.clock = RTOS_STATS_TMR_SRC; + tmr.cmp_cnt = RTOS_STATS_TMR_CNT; //SystemCoreClock*(1/interval_time); + tmr.pol = 0; + MXC_TMR_Init(RTOS_STATS_TMR, &tmr, true); + + MXC_TMR_Start(RTOS_STATS_TMR); +} + +uint32_t GetTimerForStats() +{ + return MXC_TMR_GetCount(RTOS_STATS_TMR); +} + +void prvGetRegistersFromStack(uint32_t *pulFaultStackAddress) +{ + /* These are volatile to try and prevent the compiler/linker optimising them + away as the variables never actually get used. If the debugger won't show the + values of the variables, make them global my moving their declaration outside + of this function. */ + volatile uint32_t r0; + volatile uint32_t r1; + volatile uint32_t r2; + volatile uint32_t r3; + volatile uint32_t r12; + volatile uint32_t lr; /* Link register. */ + volatile uint32_t pc; /* Program counter. */ + volatile uint32_t psr; /* Program status register. */ + + r0 = pulFaultStackAddress[0]; + r1 = pulFaultStackAddress[1]; + r2 = pulFaultStackAddress[2]; + r3 = pulFaultStackAddress[3]; + + r12 = pulFaultStackAddress[4]; + lr = pulFaultStackAddress[5]; + pc = pulFaultStackAddress[6]; + psr = pulFaultStackAddress[7]; + + /* When the following line is hit, the variables contain the register values. */ + for (;;) {} +} + +void vApplicationStackOverflowHook(TaskHandle_t xTask, signed char *pcTaskName) +{ + for (;;) {} +} + +/* The prototype shows it is a naked function - in effect this is just an +assembly function. */ +void HardFault_Handler(void) __attribute__((naked, aligned(8))); + +/* The fault handler implementation calls a function called +prvGetRegistersFromStack(). */ +void HardFault_Handler(void) +{ + __asm volatile(" tst lr, #4 \n" + " ite eq \n" + " mrseq r0, msp \n" + " mrsne r0, psp \n" + " ldr r1, [r0, #24] \n" + " ldr r2, handler2_address_const \n" + " bx r2 \n" + " handler2_address_const: .word prvGetRegistersFromStack \n"); +} +#endif diff --git a/Examples/MAX78000/FreeRTOSDemo/Makefile b/Examples/MAX78000/FreeRTOSDemo/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/FreeRTOSDemo/Makefile +++ b/Examples/MAX78000/FreeRTOSDemo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/FreeRTOSDemo/README.md b/Examples/MAX78000/FreeRTOSDemo/README.md index 71758a50180..009de8385ef 100644 --- a/Examples/MAX78000/FreeRTOSDemo/README.md +++ b/Examples/MAX78000/FreeRTOSDemo/README.md @@ -6,11 +6,13 @@ A basic getting started application for FreeRTOS. ### Project Usage +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. ### Project-Specific Build Notes -* This project comes pre-configured for the MAX78000EVKIT. See [Board Support Packages](https://analogdevicesinc.github.io/msdk/USERGUIDE/#board-support-packages) in the UG for instructions on changing the target board. +* This project comes pre-configured for the MAX78000EVKIT. See [Board Support Packages](https://analogdevicesinc.github.io/msdk/USERGUIDE/#board-support-packages) in the UG for instructions on changing the target board. +* Setting the "DEBUG" flag to 1 in project.mk will configure TMR0 as an RTOS Stats Timer running at 32 kHz. Timer configuration is provided in FreeRTOS_Debug.c. ## Required Connections @@ -38,3 +40,17 @@ Uptime is 0x00000000 (0 seconds), tickless-idle is disabled Enter 'help' to view a list of available commands. cmd> ``` + +## Debugging + +Some extra debug features are provided as recommended practice in FreeRTOS_Debug.c. These are based on recommendations from the FreeRTOS documentation. They include: +- A timer setup using TMR0 as an RTOS Statistics timer to profile task runtime. +- A custom HardFaultHandler which copies CPU register state to C variables for viewing inside a debugger program. + - This is useful to diagnose the system state at the moment the HardFault occured. + +The statistics timer can be used by numerous RTOS Debug utilities which detect a kernel and use the kernel's profiling routines to output useful information to the user. A similar timer configuration could also be used for RTOS kernels other than FreeRTOS. Be aware that TMR0 may not behave properly when using Low-Power features -- for these use-cases a Low-Power timer on the device should be used. + +An example of using the HardFaultHandler can be observed by placing a privileged memory access (e.g. ```int y = *(uint32_t *)0xFFFFFFFF```) inside an RTOS task. The program counter will show as a C variable, which can be used with a Disassembly View to find the location of the HardFault. An image is provided below as an example: + +![Disassembly View in VSCode](img/HardFault.png) + diff --git a/Examples/MAX78000/FreeRTOSDemo/freertos_tickless.c b/Examples/MAX78000/FreeRTOSDemo/freertos_tickless.c index 000acd3b92f..6fc84f7cc72 100644 --- a/Examples/MAX78000/FreeRTOSDemo/freertos_tickless.c +++ b/Examples/MAX78000/FreeRTOSDemo/freertos_tickless.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/FreeRTOSDemo/img/HardFault.png b/Examples/MAX78000/FreeRTOSDemo/img/HardFault.png new file mode 100644 index 00000000000..359a8ae9ddd Binary files /dev/null and b/Examples/MAX78000/FreeRTOSDemo/img/HardFault.png differ diff --git a/Examples/MAX78000/FreeRTOSDemo/main.c b/Examples/MAX78000/FreeRTOSDemo/main.c index e37b2a5ef2b..80f2dd4bfa1 100644 --- a/Examples/MAX78000/FreeRTOSDemo/main.c +++ b/Examples/MAX78000/FreeRTOSDemo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/FreeRTOSDemo/project.mk b/Examples/MAX78000/FreeRTOSDemo/project.mk index 363dc2ba3c5..411adb574c0 100644 --- a/Examples/MAX78000/FreeRTOSDemo/project.mk +++ b/Examples/MAX78000/FreeRTOSDemo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -12,9 +29,15 @@ # ********************************************************** # Add your config here! +DEBUG=1 LIB_FREERTOS = 1 +# Can provide a value for the FREERTOS heap allocation scheme +# Default value is 4 +# FREERTOS_HEAP_TYPE := 2 +# export FREERTOS_HEAP_TYPE + ifeq ($(BOARD),Aud01_RevA) $(error ERR_NOTSUPPORTED: This project is not supported for the Audio board) endif \ No newline at end of file diff --git a/Examples/MAX78000/GPIO/.vscode/README.md b/Examples/MAX78000/GPIO/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/GPIO/.vscode/README.md +++ b/Examples/MAX78000/GPIO/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/GPIO/.vscode/settings.json b/Examples/MAX78000/GPIO/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/GPIO/.vscode/settings.json +++ b/Examples/MAX78000/GPIO/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/GPIO/Makefile b/Examples/MAX78000/GPIO/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/GPIO/Makefile +++ b/Examples/MAX78000/GPIO/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/GPIO/main.c b/Examples/MAX78000/GPIO/main.c index 588ffdd432a..6f2c15eab85 100644 --- a/Examples/MAX78000/GPIO/main.c +++ b/Examples/MAX78000/GPIO/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/GPIO/project.mk b/Examples/MAX78000/GPIO/project.mk index 5262c778397..25071e3a1c8 100644 --- a/Examples/MAX78000/GPIO/project.mk +++ b/Examples/MAX78000/GPIO/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/Hello_World/.vscode/README.md b/Examples/MAX78000/Hello_World/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/Hello_World/.vscode/README.md +++ b/Examples/MAX78000/Hello_World/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/Hello_World/.vscode/settings.json b/Examples/MAX78000/Hello_World/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/Hello_World/.vscode/settings.json +++ b/Examples/MAX78000/Hello_World/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/Hello_World/Makefile b/Examples/MAX78000/Hello_World/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/Hello_World/Makefile +++ b/Examples/MAX78000/Hello_World/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/Hello_World/main.c b/Examples/MAX78000/Hello_World/main.c index ec5abad81f2..a8e765661d6 100644 --- a/Examples/MAX78000/Hello_World/main.c +++ b/Examples/MAX78000/Hello_World/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/Hello_World/project.mk b/Examples/MAX78000/Hello_World/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX78000/Hello_World/project.mk +++ b/Examples/MAX78000/Hello_World/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/Hello_World_Cpp/.vscode/README.md b/Examples/MAX78000/Hello_World_Cpp/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/Hello_World_Cpp/.vscode/README.md +++ b/Examples/MAX78000/Hello_World_Cpp/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/Hello_World_Cpp/.vscode/settings.json b/Examples/MAX78000/Hello_World_Cpp/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/Hello_World_Cpp/.vscode/settings.json +++ b/Examples/MAX78000/Hello_World_Cpp/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/Hello_World_Cpp/Makefile b/Examples/MAX78000/Hello_World_Cpp/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/Hello_World_Cpp/Makefile +++ b/Examples/MAX78000/Hello_World_Cpp/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/Hello_World_Cpp/main.cpp b/Examples/MAX78000/Hello_World_Cpp/main.cpp index daade0e995d..fdf8363cde1 100644 --- a/Examples/MAX78000/Hello_World_Cpp/main.cpp +++ b/Examples/MAX78000/Hello_World_Cpp/main.cpp @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -66,7 +65,7 @@ class LED { int blink_count; }; -int main() +int main(void) { LED led = LED(0); diff --git a/Examples/MAX78000/Hello_World_Cpp/project.mk b/Examples/MAX78000/Hello_World_Cpp/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX78000/Hello_World_Cpp/project.mk +++ b/Examples/MAX78000/Hello_World_Cpp/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/I2C_ADXL343/.vscode/README.md b/Examples/MAX78000/I2C_ADXL343/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/I2C_ADXL343/.vscode/README.md +++ b/Examples/MAX78000/I2C_ADXL343/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/I2C_ADXL343/.vscode/settings.json b/Examples/MAX78000/I2C_ADXL343/.vscode/settings.json index b0d25720645..226444ec03c 100755 --- a/Examples/MAX78000/I2C_ADXL343/.vscode/settings.json +++ b/Examples/MAX78000/I2C_ADXL343/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/I2C_ADXL343/Makefile b/Examples/MAX78000/I2C_ADXL343/Makefile index 6a71f2f2f92..cd931a35c02 100644 --- a/Examples/MAX78000/I2C_ADXL343/Makefile +++ b/Examples/MAX78000/I2C_ADXL343/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/I2C_ADXL343/adxl343.c b/Examples/MAX78000/I2C_ADXL343/adxl343.c index 2349f2825ce..d1493595dea 100644 --- a/Examples/MAX78000/I2C_ADXL343/adxl343.c +++ b/Examples/MAX78000/I2C_ADXL343/adxl343.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/I2C_ADXL343/adxl343.h b/Examples/MAX78000/I2C_ADXL343/adxl343.h index 87ff1bbaa5d..4d0334126d3 100644 --- a/Examples/MAX78000/I2C_ADXL343/adxl343.h +++ b/Examples/MAX78000/I2C_ADXL343/adxl343.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/I2C_ADXL343/main.c b/Examples/MAX78000/I2C_ADXL343/main.c index d5f49ffb532..dde451ab442 100644 --- a/Examples/MAX78000/I2C_ADXL343/main.c +++ b/Examples/MAX78000/I2C_ADXL343/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/I2C_ADXL343/project.mk b/Examples/MAX78000/I2C_ADXL343/project.mk index 34d11d4013c..aa1652764cb 100644 --- a/Examples/MAX78000/I2C_ADXL343/project.mk +++ b/Examples/MAX78000/I2C_ADXL343/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/I2C_MNGR/.vscode/README.md b/Examples/MAX78000/I2C_MNGR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/I2C_MNGR/.vscode/README.md +++ b/Examples/MAX78000/I2C_MNGR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/I2C_MNGR/.vscode/settings.json b/Examples/MAX78000/I2C_MNGR/.vscode/settings.json index 3c413674cf8..ca4b61e9b39 100755 --- a/Examples/MAX78000/I2C_MNGR/.vscode/settings.json +++ b/Examples/MAX78000/I2C_MNGR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/I2C_MNGR/FreeRTOSConfig.h b/Examples/MAX78000/I2C_MNGR/FreeRTOSConfig.h index c6cba833cab..e38048ec4df 100644 --- a/Examples/MAX78000/I2C_MNGR/FreeRTOSConfig.h +++ b/Examples/MAX78000/I2C_MNGR/FreeRTOSConfig.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/I2C_MNGR/Makefile b/Examples/MAX78000/I2C_MNGR/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/I2C_MNGR/Makefile +++ b/Examples/MAX78000/I2C_MNGR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/I2C_MNGR/i2c_mngr/i2c_mngr.c b/Examples/MAX78000/I2C_MNGR/i2c_mngr/i2c_mngr.c index 2677dfbbda2..d2c41b1d609 100644 --- a/Examples/MAX78000/I2C_MNGR/i2c_mngr/i2c_mngr.c +++ b/Examples/MAX78000/I2C_MNGR/i2c_mngr/i2c_mngr.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +38,7 @@ typedef struct { static i2c_txn_mngr_t s_mngr; /******************************************************************************/ -int I2C_MNGR_Init() +int I2C_MNGR_Init(void) { s_mngr.inst0 = MXC_I2C0; s_mngr.inst1 = MXC_I2C1; diff --git a/Examples/MAX78000/I2C_MNGR/i2c_mngr/i2c_mngr.h b/Examples/MAX78000/I2C_MNGR/i2c_mngr/i2c_mngr.h index 1e076ca2e0f..14c901794a9 100644 --- a/Examples/MAX78000/I2C_MNGR/i2c_mngr/i2c_mngr.h +++ b/Examples/MAX78000/I2C_MNGR/i2c_mngr/i2c_mngr.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,7 +54,7 @@ typedef struct { * @brief Initializes I2C transaction manager * @return #E_NO_ERROR if succeeded, error code otherwise */ -int I2C_MNGR_Init(); +int I2C_MNGR_Init(void); /* * @brief Executes I2C transaction diff --git a/Examples/MAX78000/I2C_MNGR/main.c b/Examples/MAX78000/I2C_MNGR/main.c index fff23cd837a..1e0e406bbdb 100644 --- a/Examples/MAX78000/I2C_MNGR/main.c +++ b/Examples/MAX78000/I2C_MNGR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/I2C_MNGR/project.mk b/Examples/MAX78000/I2C_MNGR/project.mk index c0a17b00490..e643b0c1efd 100644 --- a/Examples/MAX78000/I2C_MNGR/project.mk +++ b/Examples/MAX78000/I2C_MNGR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/I2C_SCAN/.vscode/README.md b/Examples/MAX78000/I2C_SCAN/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/I2C_SCAN/.vscode/README.md +++ b/Examples/MAX78000/I2C_SCAN/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/I2C_SCAN/.vscode/settings.json b/Examples/MAX78000/I2C_SCAN/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/I2C_SCAN/.vscode/settings.json +++ b/Examples/MAX78000/I2C_SCAN/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/I2C_SCAN/Makefile b/Examples/MAX78000/I2C_SCAN/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/I2C_SCAN/Makefile +++ b/Examples/MAX78000/I2C_SCAN/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/I2C_SCAN/main.c b/Examples/MAX78000/I2C_SCAN/main.c index a5524c12b57..e54a256bce6 100644 --- a/Examples/MAX78000/I2C_SCAN/main.c +++ b/Examples/MAX78000/I2C_SCAN/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -54,7 +53,7 @@ uint8_t counter = 0; // ***************************************************************************** -int main() +int main(void) { printf("\n\n******** I2C SLAVE ADDRESS SCANNER *********\n"); printf("\nThis example finds the addresses of any I2C Slave devices connected to the"); diff --git a/Examples/MAX78000/I2C_SCAN/project.mk b/Examples/MAX78000/I2C_SCAN/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX78000/I2C_SCAN/project.mk +++ b/Examples/MAX78000/I2C_SCAN/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/I2C_Sensor/.vscode/README.md b/Examples/MAX78000/I2C_Sensor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/I2C_Sensor/.vscode/README.md +++ b/Examples/MAX78000/I2C_Sensor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/I2C_Sensor/.vscode/settings.json b/Examples/MAX78000/I2C_Sensor/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/I2C_Sensor/.vscode/settings.json +++ b/Examples/MAX78000/I2C_Sensor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/I2C_Sensor/Makefile b/Examples/MAX78000/I2C_Sensor/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/I2C_Sensor/Makefile +++ b/Examples/MAX78000/I2C_Sensor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/I2C_Sensor/main.c b/Examples/MAX78000/I2C_Sensor/main.c index 86e85d6886e..46fa7a12645 100644 --- a/Examples/MAX78000/I2C_Sensor/main.c +++ b/Examples/MAX78000/I2C_Sensor/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/I2C_Sensor/project.mk b/Examples/MAX78000/I2C_Sensor/project.mk index 6a77af63372..fa0464ac6ba 100644 --- a/Examples/MAX78000/I2C_Sensor/project.mk +++ b/Examples/MAX78000/I2C_Sensor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/I2S/.vscode/README.md b/Examples/MAX78000/I2S/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/I2S/.vscode/README.md +++ b/Examples/MAX78000/I2S/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/I2S/.vscode/settings.json b/Examples/MAX78000/I2S/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/I2S/.vscode/settings.json +++ b/Examples/MAX78000/I2S/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/I2S/Makefile b/Examples/MAX78000/I2S/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/I2S/Makefile +++ b/Examples/MAX78000/I2S/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/I2S/main.c b/Examples/MAX78000/I2S/main.c index 5acd6bccbb8..eb0f767152a 100644 --- a/Examples/MAX78000/I2S/main.c +++ b/Examples/MAX78000/I2S/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -60,7 +59,7 @@ void i2s_isr(void) } /*****************************************************************/ -int main() +int main(void) { int32_t err; mxc_i2s_req_t req; diff --git a/Examples/MAX78000/I2S/project.mk b/Examples/MAX78000/I2S/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX78000/I2S/project.mk +++ b/Examples/MAX78000/I2S/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/I2S_DMA/.vscode/README.md b/Examples/MAX78000/I2S_DMA/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/I2S_DMA/.vscode/README.md +++ b/Examples/MAX78000/I2S_DMA/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/I2S_DMA/.vscode/settings.json b/Examples/MAX78000/I2S_DMA/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/I2S_DMA/.vscode/settings.json +++ b/Examples/MAX78000/I2S_DMA/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/I2S_DMA/Makefile b/Examples/MAX78000/I2S_DMA/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/I2S_DMA/Makefile +++ b/Examples/MAX78000/I2S_DMA/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/I2S_DMA/main.c b/Examples/MAX78000/I2S_DMA/main.c index bb029d32b03..634befdfa75 100644 --- a/Examples/MAX78000/I2S_DMA/main.c +++ b/Examples/MAX78000/I2S_DMA/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -70,7 +69,7 @@ void i2s_dma_cb(int channel, int error) #endif /*****************************************************************/ -int main() +int main(void) { int32_t err; mxc_i2s_req_t req; diff --git a/Examples/MAX78000/I2S_DMA/project.mk b/Examples/MAX78000/I2S_DMA/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX78000/I2S_DMA/project.mk +++ b/Examples/MAX78000/I2S_DMA/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/I2S_DMA_Target/.vscode/README.md b/Examples/MAX78000/I2S_DMA_Target/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/I2S_DMA_Target/.vscode/README.md +++ b/Examples/MAX78000/I2S_DMA_Target/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/I2S_DMA_Target/.vscode/settings.json b/Examples/MAX78000/I2S_DMA_Target/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/I2S_DMA_Target/.vscode/settings.json +++ b/Examples/MAX78000/I2S_DMA_Target/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/I2S_DMA_Target/Makefile b/Examples/MAX78000/I2S_DMA_Target/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/I2S_DMA_Target/Makefile +++ b/Examples/MAX78000/I2S_DMA_Target/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/I2S_DMA_Target/main.c b/Examples/MAX78000/I2S_DMA_Target/main.c index 96d8ddc0f0e..6962769eb73 100644 --- a/Examples/MAX78000/I2S_DMA_Target/main.c +++ b/Examples/MAX78000/I2S_DMA_Target/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/I2S_DMA_Target/project.mk b/Examples/MAX78000/I2S_DMA_Target/project.mk index 07321dca518..c69c81b30d1 100644 --- a/Examples/MAX78000/I2S_DMA_Target/project.mk +++ b/Examples/MAX78000/I2S_DMA_Target/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ICC/.vscode/README.md b/Examples/MAX78000/ICC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ICC/.vscode/README.md +++ b/Examples/MAX78000/ICC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ICC/.vscode/settings.json b/Examples/MAX78000/ICC/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/ICC/.vscode/settings.json +++ b/Examples/MAX78000/ICC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ICC/Makefile b/Examples/MAX78000/ICC/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/ICC/Makefile +++ b/Examples/MAX78000/ICC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ICC/main.c b/Examples/MAX78000/ICC/main.c index 6d26a056e55..3c440870999 100644 --- a/Examples/MAX78000/ICC/main.c +++ b/Examples/MAX78000/ICC/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/ICC/project.mk b/Examples/MAX78000/ICC/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX78000/ICC/project.mk +++ b/Examples/MAX78000/ICC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/ImgCapture/.vscode/README.md b/Examples/MAX78000/ImgCapture/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/ImgCapture/.vscode/README.md +++ b/Examples/MAX78000/ImgCapture/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/ImgCapture/.vscode/settings.json b/Examples/MAX78000/ImgCapture/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/ImgCapture/.vscode/settings.json +++ b/Examples/MAX78000/ImgCapture/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/ImgCapture/Makefile b/Examples/MAX78000/ImgCapture/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/ImgCapture/Makefile +++ b/Examples/MAX78000/ImgCapture/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/ImgCapture/include/cnn_memutils.h b/Examples/MAX78000/ImgCapture/include/cnn_memutils.h index 610e2cf6361..47d70f37224 100644 --- a/Examples/MAX78000/ImgCapture/include/cnn_memutils.h +++ b/Examples/MAX78000/ImgCapture/include/cnn_memutils.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/ImgCapture/include/console.h b/Examples/MAX78000/ImgCapture/include/console.h index ae4085e7899..3f53a2d690f 100644 --- a/Examples/MAX78000/ImgCapture/include/console.h +++ b/Examples/MAX78000/ImgCapture/include/console.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -73,7 +72,7 @@ extern int g_num_commands; int MXC_UART_WriteBytes(mxc_uart_regs_t *uart, const uint8_t *bytes, int len); -int console_init(); +int console_init(void); int send_msg(const char *msg); int recv_msg(char *buffer); int recv_cmd(cmd_t *out_cmd); diff --git a/Examples/MAX78000/ImgCapture/include/example_config.h b/Examples/MAX78000/ImgCapture/include/example_config.h index 5199ec74fdf..89f6511a00d 100644 --- a/Examples/MAX78000/ImgCapture/include/example_config.h +++ b/Examples/MAX78000/ImgCapture/include/example_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/ImgCapture/include/sd.h b/Examples/MAX78000/ImgCapture/include/sd.h index 8a181cea031..31e35afe134 100644 --- a/Examples/MAX78000/ImgCapture/include/sd.h +++ b/Examples/MAX78000/ImgCapture/include/sd.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/ImgCapture/main.c b/Examples/MAX78000/ImgCapture/main.c index 3602c2e2289..183693a0a48 100644 --- a/Examples/MAX78000/ImgCapture/main.c +++ b/Examples/MAX78000/ImgCapture/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -427,7 +426,7 @@ void save_stream_sd(cnn_img_data_t img_data, char *file) /** * @brief Receive and service any received console commands. ****************************************************************************/ -void service_console() +void service_console(void) { // Check for any incoming serial commands cmd_t cmd = CMD_UNKNOWN; diff --git a/Examples/MAX78000/ImgCapture/project.mk b/Examples/MAX78000/ImgCapture/project.mk index 949dc364339..30175fdde04 100644 --- a/Examples/MAX78000/ImgCapture/project.mk +++ b/Examples/MAX78000/ImgCapture/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. @@ -7,6 +24,8 @@ # ********************************************************** +# Note: To change the target board, see https://analogdevicesinc.github.io/msdk//USERGUIDE/#board-support-packages + # Project options: # Set to 1 to enable, 0 to disable CONSOLE = 1 @@ -28,6 +47,10 @@ ifeq ($(BOARD),CAM01_RevA) CAMERA = HM0360_COLOR endif +ifeq ($(BOARD),CAM02_RevA) +CAMERA = GC0308 +endif + ifeq ($(BOARD),FTHR_RevA) CAMERA = OV7692 endif diff --git a/Examples/MAX78000/ImgCapture/src/console/console.c b/Examples/MAX78000/ImgCapture/src/console/console.c index 02b9d9cb2db..7e5e88f9d2e 100644 --- a/Examples/MAX78000/ImgCapture/src/console/console.c +++ b/Examples/MAX78000/ImgCapture/src/console/console.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/ImgCapture/src/sd/sd.c b/Examples/MAX78000/ImgCapture/src/sd/sd.c index be12411cfb1..bfee5f8a441 100644 --- a/Examples/MAX78000/ImgCapture/src/sd/sd.c +++ b/Examples/MAX78000/ImgCapture/src/sd/sd.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/ImgCapture/utils/batchconvert.py b/Examples/MAX78000/ImgCapture/utils/batchconvert.py index c2388f6704b..4eaf949670b 100644 --- a/Examples/MAX78000/ImgCapture/utils/batchconvert.py +++ b/Examples/MAX78000/ImgCapture/utils/batchconvert.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/ImgCapture/utils/console.py b/Examples/MAX78000/ImgCapture/utils/console.py index a887cd18328..74d8de375ce 100644 --- a/Examples/MAX78000/ImgCapture/utils/console.py +++ b/Examples/MAX78000/ImgCapture/utils/console.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/ImgCapture/utils/imgConverter.py b/Examples/MAX78000/ImgCapture/utils/imgConverter.py index ee25df9b04e..9d342cd0cc3 100644 --- a/Examples/MAX78000/ImgCapture/utils/imgConverter.py +++ b/Examples/MAX78000/ImgCapture/utils/imgConverter.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/ImgCapture/utils/requirements.txt b/Examples/MAX78000/ImgCapture/utils/requirements.txt index af188cbbcb5..820c3eff323 100644 --- a/Examples/MAX78000/ImgCapture/utils/requirements.txt +++ b/Examples/MAX78000/ImgCapture/utils/requirements.txt @@ -1,4 +1,4 @@ numpy==1.22.4 opencv-python==4.5.5.64 -Pillow==9.3.0 +Pillow==10.0.1 pyserial==3.5 diff --git a/Examples/MAX78000/LP/.vscode/README.md b/Examples/MAX78000/LP/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/LP/.vscode/README.md +++ b/Examples/MAX78000/LP/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/LP/.vscode/settings.json b/Examples/MAX78000/LP/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/LP/.vscode/settings.json +++ b/Examples/MAX78000/LP/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/LP/Makefile b/Examples/MAX78000/LP/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/LP/Makefile +++ b/Examples/MAX78000/LP/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/LP/main.c b/Examples/MAX78000/LP/main.c index 862414a64c6..5dee60ba380 100644 --- a/Examples/MAX78000/LP/main.c +++ b/Examples/MAX78000/LP/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/LP/project.mk b/Examples/MAX78000/LP/project.mk index 5262c778397..25071e3a1c8 100644 --- a/Examples/MAX78000/LP/project.mk +++ b/Examples/MAX78000/LP/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/LPCMP/.vscode/README.md b/Examples/MAX78000/LPCMP/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/LPCMP/.vscode/README.md +++ b/Examples/MAX78000/LPCMP/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/LPCMP/.vscode/settings.json b/Examples/MAX78000/LPCMP/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/LPCMP/.vscode/settings.json +++ b/Examples/MAX78000/LPCMP/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/LPCMP/Makefile b/Examples/MAX78000/LPCMP/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/LPCMP/Makefile +++ b/Examples/MAX78000/LPCMP/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/LPCMP/main.c b/Examples/MAX78000/LPCMP/main.c index 771240397c2..1ec0467a3e8 100644 --- a/Examples/MAX78000/LPCMP/main.c +++ b/Examples/MAX78000/LPCMP/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/LPCMP/project.mk b/Examples/MAX78000/LPCMP/project.mk index 5262c778397..25071e3a1c8 100644 --- a/Examples/MAX78000/LPCMP/project.mk +++ b/Examples/MAX78000/LPCMP/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/Library_Generate/.vscode/README.md b/Examples/MAX78000/Library_Generate/.vscode/README.md index e2e9a1a6522..a740741c3ab 100644 --- a/Examples/MAX78000/Library_Generate/.vscode/README.md +++ b/Examples/MAX78000/Library_Generate/.vscode/README.md @@ -7,11 +7,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) * If it's not in the README, check the UG. * If it's not in the UG, open a ticket! -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -38,7 +38,7 @@ The steps below are also available in video form in "Understanding Artificial In 2. Run the installer executable, and ensure that "Visual Studio Code Support" is enabled for your installation. - ![Selected Components](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/installer_components.JPG) + ![Selected Components](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/installer_components.JPG) 3. Finish the MSDK installation, taking note of where the MSDK was installed. @@ -54,7 +54,7 @@ The steps below are also available in video form in "Understanding Artificial In 9. Type "open settings json" and select the "Preferences: Open Settings (JSON)" option (_not_ the "Preferences: Open _Default_ Settings (JSON)"). This will open your user settings.json file in VS Code's editor. - ![Open Settings JSON Command](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/open_settings_json.jpg) + ![Open Settings JSON Command](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/open_settings_json.jpg) 10. Add the entries below into your user settings.json file. @@ -82,7 +82,7 @@ This section covers basic usage of the VSCode-Maxim project files. For document Visual Studio Code is built around a "working directory" paradigm. The editor is always rooted in a working directory, and the main mechanism for changing that directory is `File -> Open Folder...`. -![File -> Open Folder](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/file_openfolder.JPG) +![File -> Open Folder](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/file_openfolder.JPG) As a result, you'll notice that there is no "New Project" mechanism. A "project" in VS Code is simply a folder. It will look inside of the opened folder for a `.vscode` _sub_-folder to load project-specific settings from. @@ -90,11 +90,11 @@ A project that is configured for VS Code will have, at minimum, a .vscode sub-fo Ex: -![Example Directory Contents](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/opening_projects_2.jpg) +![Example Directory Contents](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/opening_projects_2.jpg) ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MSDK installation. @@ -102,7 +102,7 @@ Additionally, empty project templates and a drag-and-drop folder for "injecting" Once a project is opened 4 available build tasks will become available via `Terminal > Run Build task...` or the shortcut `Ctrl+Shift+B`. These tasks are configured by the `.vscode/task.json` file. -![Build Tasks Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/buildtasks.JPG) +![Build Tasks Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/buildtasks.JPG) #### Build @@ -138,7 +138,7 @@ Once a project is opened 4 available build tasks will become available via `Term ### Debugging -![Debug Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger.JPG) +![Debug Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger.JPG) Debugging is enabled by Visual Studio Code's integrated debugger. Launch configurations can be found in the `.vscode/launch.json` file. @@ -162,11 +162,11 @@ In general, the MAX-series microcontrollers have the following debugger limitati 3. Launch the debugger with `Run > Start Debugging`, with the shortcut `F5`, or via the `Run and Debug` window (Ctrl + Shift + D) and the green "launch" arrow. - ![Debug Tab](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_window.JPG) + ![Debug Tab](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_window.JPG) 4. The debugger will launch a GDB client & OpenOCD server, reset the microcontroller, and should break on entry into `main`. - ![Debugger Break on Main](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_breakmain.JPG) + ![Debugger Break on Main](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_breakmain.JPG) #### Using the Debugger @@ -174,13 +174,13 @@ In general, the MAX-series microcontrollers have the following debugger limitati The main interface for the debugger is the debugger control bar: -![Debugger Control Bar Image](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/debugger_bar.JPG) +![Debugger Control Bar Image](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/debugger_bar.JPG) `Continue | Step Over | Step Into | Step Out | Restart | Stop` Breakpoints can be set by clicking in the space next to the line number in a source code file. A red dot indicates a line to break on. Breakpoints can be removed by clicking on them again. Ex: -![Breakpoint](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/breakpoint.JPG) +![Breakpoint](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/breakpoint.JPG) ## Project Configuration @@ -190,7 +190,7 @@ Breakpoints can be set by clicking in the space next to the line number in a sou **When a change is made to this file, VS Code should be reloaded with CTRL+SHIFT+P -> Reload Window (or alternatively restarted completely) to force a re-parse.** -![Reload Window](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/reload_window.JPG) +![Reload Window](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/reload_window.JPG) The default project configuration should work for most use cases as long as `"target"` and `"board"` are set correctly. @@ -227,7 +227,7 @@ The following configuration options are available: * ... can be found in the `Libraries/Boards` folder of the MSDK * For example, the supported options for the MAX78000 are `"EvKit_V1"`, `"FTHR_RevA"`, and `"MAXREFDES178"`. - ![MAX78000 Boards](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/main/img/78000_boards.JPG) + ![MAX78000 Boards](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/main/img/78000_boards.JPG) ### Advanced Config Options @@ -353,7 +353,7 @@ A project's build system is managed by two files found in the project's root dir * `Makefile` * `project.mk` -![Files are located in the root directory](https://raw.githubusercontent.com/Analog-Devices-MSDK/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) +![Files are located in the root directory](https://raw.githubusercontent.com/analogdevicesinc/VSCode-Maxim/65af7c61800c7039956f3c1971ffd7915008668d/img/projectmk.JPG) When the command... @@ -416,7 +416,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the @@ -540,7 +540,7 @@ If you want to start from scratch, take this option. ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/Library_Generate/Makefile b/Examples/MAX78000/Library_Generate/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/Library_Generate/Makefile +++ b/Examples/MAX78000/Library_Generate/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/Library_Generate/gpiolib.c b/Examples/MAX78000/Library_Generate/gpiolib.c index 5c8845edc78..252f6df4c44 100644 --- a/Examples/MAX78000/Library_Generate/gpiolib.c +++ b/Examples/MAX78000/Library_Generate/gpiolib.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/Library_Generate/gpiolib.h b/Examples/MAX78000/Library_Generate/gpiolib.h index 2363deeeb9e..fb33837cbf9 100644 --- a/Examples/MAX78000/Library_Generate/gpiolib.h +++ b/Examples/MAX78000/Library_Generate/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/Library_Generate/project.mk b/Examples/MAX78000/Library_Generate/project.mk index 01dcd9fbb2a..b5729be6ef0 100644 --- a/Examples/MAX78000/Library_Generate/project.mk +++ b/Examples/MAX78000/Library_Generate/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/Library_Use/.vscode/README.md b/Examples/MAX78000/Library_Use/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/Library_Use/.vscode/README.md +++ b/Examples/MAX78000/Library_Use/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/Library_Use/.vscode/settings.json b/Examples/MAX78000/Library_Use/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/Library_Use/.vscode/settings.json +++ b/Examples/MAX78000/Library_Use/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/Library_Use/Makefile b/Examples/MAX78000/Library_Use/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/Library_Use/Makefile +++ b/Examples/MAX78000/Library_Use/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/Library_Use/lib/include/gpiolib.h b/Examples/MAX78000/Library_Use/lib/include/gpiolib.h index d536b594637..f9ca5956c7a 100644 --- a/Examples/MAX78000/Library_Use/lib/include/gpiolib.h +++ b/Examples/MAX78000/Library_Use/lib/include/gpiolib.h @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/Library_Use/main.c b/Examples/MAX78000/Library_Use/main.c index a9c20ec444f..c686476d185 100644 --- a/Examples/MAX78000/Library_Use/main.c +++ b/Examples/MAX78000/Library_Use/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/Library_Use/project.mk b/Examples/MAX78000/Library_Use/project.mk index d1767c7cef7..889965aaf43 100644 --- a/Examples/MAX78000/Library_Use/project.mk +++ b/Examples/MAX78000/Library_Use/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/Pulse_Train/.vscode/README.md b/Examples/MAX78000/Pulse_Train/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/Pulse_Train/.vscode/README.md +++ b/Examples/MAX78000/Pulse_Train/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/Pulse_Train/.vscode/settings.json b/Examples/MAX78000/Pulse_Train/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/Pulse_Train/.vscode/settings.json +++ b/Examples/MAX78000/Pulse_Train/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/Pulse_Train/Makefile b/Examples/MAX78000/Pulse_Train/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/Pulse_Train/Makefile +++ b/Examples/MAX78000/Pulse_Train/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/Pulse_Train/main.c b/Examples/MAX78000/Pulse_Train/main.c index 1e0805067c3..3bd4d588aac 100644 --- a/Examples/MAX78000/Pulse_Train/main.c +++ b/Examples/MAX78000/Pulse_Train/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/Pulse_Train/project.mk b/Examples/MAX78000/Pulse_Train/project.mk index 7d1d2426730..46ef0eab276 100644 --- a/Examples/MAX78000/Pulse_Train/project.mk +++ b/Examples/MAX78000/Pulse_Train/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/RTC/.vscode/README.md b/Examples/MAX78000/RTC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/RTC/.vscode/README.md +++ b/Examples/MAX78000/RTC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/RTC/.vscode/settings.json b/Examples/MAX78000/RTC/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/RTC/.vscode/settings.json +++ b/Examples/MAX78000/RTC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/RTC/Makefile b/Examples/MAX78000/RTC/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/RTC/Makefile +++ b/Examples/MAX78000/RTC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/RTC/main.c b/Examples/MAX78000/RTC/main.c index beb6ec2f419..c8778a26163 100644 --- a/Examples/MAX78000/RTC/main.c +++ b/Examples/MAX78000/RTC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -111,12 +110,12 @@ void RTC_IRQHandler(void) } volatile int buttonPressed = 0; -void buttonHandler() +void buttonHandler(void) { buttonPressed = 1; } -void printTime() +void printTime(void) { int day, hr, min, err; uint32_t sec, rtc_readout; diff --git a/Examples/MAX78000/RTC/project.mk b/Examples/MAX78000/RTC/project.mk index 5262c778397..25071e3a1c8 100644 --- a/Examples/MAX78000/RTC/project.mk +++ b/Examples/MAX78000/RTC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/RTC_Backup/.vscode/README.md b/Examples/MAX78000/RTC_Backup/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/RTC_Backup/.vscode/README.md +++ b/Examples/MAX78000/RTC_Backup/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/RTC_Backup/.vscode/settings.json b/Examples/MAX78000/RTC_Backup/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/RTC_Backup/.vscode/settings.json +++ b/Examples/MAX78000/RTC_Backup/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/RTC_Backup/Makefile b/Examples/MAX78000/RTC_Backup/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/RTC_Backup/Makefile +++ b/Examples/MAX78000/RTC_Backup/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/RTC_Backup/main.c b/Examples/MAX78000/RTC_Backup/main.c index ab6d8921679..f3c5d55ad53 100644 --- a/Examples/MAX78000/RTC_Backup/main.c +++ b/Examples/MAX78000/RTC_Backup/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -61,7 +60,7 @@ void RTC_IRQHandler(void) {} // ***************************************************************************** -void rescheduleAlarm() +void rescheduleAlarm(void) { uint32_t time; int flags = MXC_RTC_GetFlags(); @@ -87,7 +86,7 @@ void rescheduleAlarm() } // ***************************************************************************** -void printTime() +void printTime(void) { int day, hr, min; uint32_t sec; @@ -108,7 +107,7 @@ void printTime() } // ***************************************************************************** -int configureRTC() +int configureRTC(void) { volatile int i; diff --git a/Examples/MAX78000/RTC_Backup/project.mk b/Examples/MAX78000/RTC_Backup/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX78000/RTC_Backup/project.mk +++ b/Examples/MAX78000/RTC_Backup/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/RV_ARM_Loader/.vscode/README.md b/Examples/MAX78000/RV_ARM_Loader/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/RV_ARM_Loader/.vscode/README.md +++ b/Examples/MAX78000/RV_ARM_Loader/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/RV_ARM_Loader/.vscode/settings.json b/Examples/MAX78000/RV_ARM_Loader/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/RV_ARM_Loader/.vscode/settings.json +++ b/Examples/MAX78000/RV_ARM_Loader/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/RV_ARM_Loader/Makefile b/Examples/MAX78000/RV_ARM_Loader/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/RV_ARM_Loader/Makefile +++ b/Examples/MAX78000/RV_ARM_Loader/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/RV_ARM_Loader/main.c b/Examples/MAX78000/RV_ARM_Loader/main.c index 055fb4a24bd..079cff10321 100644 --- a/Examples/MAX78000/RV_ARM_Loader/main.c +++ b/Examples/MAX78000/RV_ARM_Loader/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/RV_ARM_Loader/project.mk b/Examples/MAX78000/RV_ARM_Loader/project.mk index d1f655ba86f..9c809bc6724 100644 --- a/Examples/MAX78000/RV_ARM_Loader/project.mk +++ b/Examples/MAX78000/RV_ARM_Loader/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/SDHC_FTHR/.vscode/README.md b/Examples/MAX78000/SDHC_FTHR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/SDHC_FTHR/.vscode/README.md +++ b/Examples/MAX78000/SDHC_FTHR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/SDHC_FTHR/.vscode/settings.json b/Examples/MAX78000/SDHC_FTHR/.vscode/settings.json index 59e88f5ddcc..7ac42f4c3d7 100755 --- a/Examples/MAX78000/SDHC_FTHR/.vscode/settings.json +++ b/Examples/MAX78000/SDHC_FTHR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/SDHC_FTHR/Makefile b/Examples/MAX78000/SDHC_FTHR/Makefile index 6a71f2f2f92..cd931a35c02 100644 --- a/Examples/MAX78000/SDHC_FTHR/Makefile +++ b/Examples/MAX78000/SDHC_FTHR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/SDHC_FTHR/include/sdhc.h b/Examples/MAX78000/SDHC_FTHR/include/sdhc.h index fae0193c3b7..0ab9dc0c951 100644 --- a/Examples/MAX78000/SDHC_FTHR/include/sdhc.h +++ b/Examples/MAX78000/SDHC_FTHR/include/sdhc.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -44,15 +43,15 @@ void generateMessage(unsigned length); -int mount(); +int mount(void); -int umount(); +int umount(void); -int formatSDHC(); +int formatSDHC(void); -int getSize(); +int getSize(void); -int ls(); +int ls(void); int createFile(char *file_name, unsigned int length); @@ -64,8 +63,8 @@ int cd(char *dir_name); int deleteFile(char *file_name); -int example(); +int example(void); -void waitCardInserted(); +void waitCardInserted(void); #endif // EXAMPLES_MAX78000_SDHC_FTHR_INCLUDE_SDHC_H_ diff --git a/Examples/MAX78000/SDHC_FTHR/include/user-cli.h b/Examples/MAX78000/SDHC_FTHR/include/user-cli.h index 0c73a23422a..3a283e0871b 100644 --- a/Examples/MAX78000/SDHC_FTHR/include/user-cli.h +++ b/Examples/MAX78000/SDHC_FTHR/include/user-cli.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/SDHC_FTHR/main.c b/Examples/MAX78000/SDHC_FTHR/main.c index c28c2564f9a..7e102c73339 100644 --- a/Examples/MAX78000/SDHC_FTHR/main.c +++ b/Examples/MAX78000/SDHC_FTHR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/SDHC_FTHR/project.mk b/Examples/MAX78000/SDHC_FTHR/project.mk index 3a225d92c63..63bac5977aa 100644 --- a/Examples/MAX78000/SDHC_FTHR/project.mk +++ b/Examples/MAX78000/SDHC_FTHR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/SDHC_FTHR/src/sdhc.c b/Examples/MAX78000/SDHC_FTHR/src/sdhc.c index 84cb9305965..d7db31d7748 100644 --- a/Examples/MAX78000/SDHC_FTHR/src/sdhc.c +++ b/Examples/MAX78000/SDHC_FTHR/src/sdhc.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -50,7 +49,7 @@ void generateMessage(unsigned length) } } -int mount() +int mount(void) { fs = &fs_obj; @@ -67,7 +66,7 @@ int mount() return err; } -int umount() +int umount(void) { if ((err = f_mount(NULL, "", 0)) != FR_OK) { //Unmount the default drive from its mount point printf("Error unmounting volume: %s\n", FF_ERRORS[err]); @@ -79,7 +78,7 @@ int umount() return err; } -int formatSDHC() +int formatSDHC(void) { printf("\n\n*****THE DRIVE WILL BE FORMATTED IN 5 SECONDS*****\n"); printf("**************PRESS ANY KEY TO ABORT**************\n\n"); @@ -112,7 +111,7 @@ int formatSDHC() return err; } -int getSize() +int getSize(void) { if (!mounted) { mount(); @@ -132,7 +131,7 @@ int getSize() return err; } -int ls() +int ls(void) { if (!mounted) { mount(); @@ -331,7 +330,7 @@ int deleteFile(char *file_name) return err; } -int example() +int example(void) { unsigned int length = 256; @@ -462,7 +461,7 @@ int example() return 0; } -void waitCardInserted() +void waitCardInserted(void) { // On the MAX78000FTHR board, P0.12 will be pulled low when a card is inserted. mxc_gpio_cfg_t cardDetect; diff --git a/Examples/MAX78000/SDHC_FTHR/src/user-cli.c b/Examples/MAX78000/SDHC_FTHR/src/user-cli.c index f0ba36207ed..1e0235cb946 100644 --- a/Examples/MAX78000/SDHC_FTHR/src/user-cli.c +++ b/Examples/MAX78000/SDHC_FTHR/src/user-cli.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/SPI/.vscode/README.md b/Examples/MAX78000/SPI/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/SPI/.vscode/README.md +++ b/Examples/MAX78000/SPI/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/SPI/.vscode/settings.json b/Examples/MAX78000/SPI/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/SPI/.vscode/settings.json +++ b/Examples/MAX78000/SPI/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/SPI/Makefile b/Examples/MAX78000/SPI/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/SPI/Makefile +++ b/Examples/MAX78000/SPI/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/SPI/main.c b/Examples/MAX78000/SPI/main.c index c6f569bac13..703942b652c 100644 --- a/Examples/MAX78000/SPI/main.c +++ b/Examples/MAX78000/SPI/main.c @@ -7,10 +7,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/SPI/project.mk b/Examples/MAX78000/SPI/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX78000/SPI/project.mk +++ b/Examples/MAX78000/SPI/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/TFT_Demo/.vscode/README.md b/Examples/MAX78000/TFT_Demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/TFT_Demo/.vscode/README.md +++ b/Examples/MAX78000/TFT_Demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/TFT_Demo/.vscode/settings.json b/Examples/MAX78000/TFT_Demo/.vscode/settings.json index a51700c2ca7..7eb4950dc2d 100755 --- a/Examples/MAX78000/TFT_Demo/.vscode/settings.json +++ b/Examples/MAX78000/TFT_Demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/TFT_Demo/Makefile b/Examples/MAX78000/TFT_Demo/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/TFT_Demo/Makefile +++ b/Examples/MAX78000/TFT_Demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/TFT_Demo/example_config.h b/Examples/MAX78000/TFT_Demo/example_config.h index cc531c8409e..9ec2e81a224 100644 --- a/Examples/MAX78000/TFT_Demo/example_config.h +++ b/Examples/MAX78000/TFT_Demo/example_config.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TFT_Demo/include/keypad.h b/Examples/MAX78000/TFT_Demo/include/keypad.h index 392871bc6c1..90c6a0121a2 100644 --- a/Examples/MAX78000/TFT_Demo/include/keypad.h +++ b/Examples/MAX78000/TFT_Demo/include/keypad.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TFT_Demo/include/state.h b/Examples/MAX78000/TFT_Demo/include/state.h index e0ff0438568..164673419cd 100644 --- a/Examples/MAX78000/TFT_Demo/include/state.h +++ b/Examples/MAX78000/TFT_Demo/include/state.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TFT_Demo/include/utils.h b/Examples/MAX78000/TFT_Demo/include/utils.h index c1d7b22673f..660b5ebdac9 100644 --- a/Examples/MAX78000/TFT_Demo/include/utils.h +++ b/Examples/MAX78000/TFT_Demo/include/utils.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TFT_Demo/main.c b/Examples/MAX78000/TFT_Demo/main.c index 57cb0e87f56..a61d8ce9966 100644 --- a/Examples/MAX78000/TFT_Demo/main.c +++ b/Examples/MAX78000/TFT_Demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TFT_Demo/project.mk b/Examples/MAX78000/TFT_Demo/project.mk index a474421aa09..6228dc61149 100644 --- a/Examples/MAX78000/TFT_Demo/project.mk +++ b/Examples/MAX78000/TFT_Demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/TFT_Demo/resources/bitmap.h b/Examples/MAX78000/TFT_Demo/resources/bitmap.h index 81a7d682591..4d683130843 100644 --- a/Examples/MAX78000/TFT_Demo/resources/bitmap.h +++ b/Examples/MAX78000/TFT_Demo/resources/bitmap.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TFT_Demo/resources/tft_evkit/all_imgs.c b/Examples/MAX78000/TFT_Demo/resources/tft_evkit/all_imgs.c index d1cb49fb623..1c59ff8903d 100644 --- a/Examples/MAX78000/TFT_Demo/resources/tft_evkit/all_imgs.c +++ b/Examples/MAX78000/TFT_Demo/resources/tft_evkit/all_imgs.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TFT_Demo/resources/tft_fthr/bmp/bmp2c.py b/Examples/MAX78000/TFT_Demo/resources/tft_fthr/bmp/bmp2c.py index d85d42f200a..6e4a77a77e8 100644 --- a/Examples/MAX78000/TFT_Demo/resources/tft_fthr/bmp/bmp2c.py +++ b/Examples/MAX78000/TFT_Demo/resources/tft_fthr/bmp/bmp2c.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TFT_Demo/resources/tft_fthr/bmp/template.txt b/Examples/MAX78000/TFT_Demo/resources/tft_fthr/bmp/template.txt index ba9d86c9a51..b2b7ff6425e 100644 --- a/Examples/MAX78000/TFT_Demo/resources/tft_fthr/bmp/template.txt +++ b/Examples/MAX78000/TFT_Demo/resources/tft_fthr/bmp/template.txt @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TFT_Demo/resources/tft_fthr/img_1_rgb565.c b/Examples/MAX78000/TFT_Demo/resources/tft_fthr/img_1_rgb565.c index 22f829428f3..c809ae761ba 100644 --- a/Examples/MAX78000/TFT_Demo/resources/tft_fthr/img_1_rgb565.c +++ b/Examples/MAX78000/TFT_Demo/resources/tft_fthr/img_1_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TFT_Demo/src/state.c b/Examples/MAX78000/TFT_Demo/src/state.c index 2863da8c713..73e8fa1e30f 100644 --- a/Examples/MAX78000/TFT_Demo/src/state.c +++ b/Examples/MAX78000/TFT_Demo/src/state.c @@ -4,10 +4,9 @@ */ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TFT_Demo/src/state_home.c b/Examples/MAX78000/TFT_Demo/src/state_home.c index 06e1c2bd8c9..9d628417f5f 100644 --- a/Examples/MAX78000/TFT_Demo/src/state_home.c +++ b/Examples/MAX78000/TFT_Demo/src/state_home.c @@ -4,10 +4,9 @@ */ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TFT_Demo/src/state_info.c b/Examples/MAX78000/TFT_Demo/src/state_info.c index 2186d921431..aae3f8a93a9 100644 --- a/Examples/MAX78000/TFT_Demo/src/state_info.c +++ b/Examples/MAX78000/TFT_Demo/src/state_info.c @@ -4,10 +4,9 @@ */ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TFT_Demo/src/state_keypad.c b/Examples/MAX78000/TFT_Demo/src/state_keypad.c index 668fa58e618..663a3e79606 100644 --- a/Examples/MAX78000/TFT_Demo/src/state_keypad.c +++ b/Examples/MAX78000/TFT_Demo/src/state_keypad.c @@ -4,10 +4,9 @@ */ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TFT_Demo/src/utils.c b/Examples/MAX78000/TFT_Demo/src/utils.c index e6887fd14ba..32e766d5fe6 100644 --- a/Examples/MAX78000/TFT_Demo/src/utils.c +++ b/Examples/MAX78000/TFT_Demo/src/utils.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TMR/.vscode/README.md b/Examples/MAX78000/TMR/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/TMR/.vscode/README.md +++ b/Examples/MAX78000/TMR/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/TMR/.vscode/settings.json b/Examples/MAX78000/TMR/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/TMR/.vscode/settings.json +++ b/Examples/MAX78000/TMR/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/TMR/Makefile b/Examples/MAX78000/TMR/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/TMR/Makefile +++ b/Examples/MAX78000/TMR/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/TMR/main.c b/Examples/MAX78000/TMR/main.c index 5cf625fd592..4b30debc028 100644 --- a/Examples/MAX78000/TMR/main.c +++ b/Examples/MAX78000/TMR/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -51,9 +50,9 @@ #define PB2 1 // Parameters for PWM output -#define OST_CLOCK_SOURCE MXC_TMR_8K_CLK // \ref mxc_tmr_clock_t -#define PWM_CLOCK_SOURCE MXC_TMR_32K_CLK // \ref mxc_tmr_clock_t -#define CONT_CLOCK_SOURCE MXC_TMR_8M_CLK // \ref mxc_tmr_clock_t +#define OST_CLOCK_SOURCE MXC_TMR_INRO_CLK // \ref mxc_tmr_clock_t +#define PWM_CLOCK_SOURCE MXC_TMR_ERTCO_CLK // \ref mxc_tmr_clock_t +#define CONT_CLOCK_SOURCE MXC_TMR_IBRO_CLK // \ref mxc_tmr_clock_t // Parameters for Continuous timer #define OST_FREQ 1 // (Hz) @@ -80,7 +79,7 @@ #endif /***** Functions *****/ -void PWMTimer() +void PWMTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; // to configure timer @@ -121,14 +120,14 @@ void PWMTimer() } // Toggles GPIO when continuous timer repeats -void ContinuousTimerHandler() +void ContinuousTimerHandler(void) { // Clear interrupt MXC_TMR_ClearFlags(CONT_TIMER); LED_Toggle(LED1); } -void ContinuousTimer() +void ContinuousTimer(void) { // Declare variables mxc_tmr_cfg_t tmr; @@ -160,7 +159,7 @@ void ContinuousTimer() printf("Continuous timer started.\n\n"); } -void OneshotTimerHandler() +void OneshotTimerHandler(void) { // Clear interrupt MXC_TMR_ClearFlags(OST_TIMER); @@ -175,7 +174,7 @@ void OneshotTimerHandler() } } -void OneshotTimer() +void OneshotTimer(void) { for (int i = 0; i < 5000; i++) {} //Button debounce @@ -218,7 +217,7 @@ void OneshotTimer() MXC_TMR_Start(OST_TIMER); } -void PB1Handler() +void PB1Handler(void) { PWMTimer(); diff --git a/Examples/MAX78000/TMR/project.mk b/Examples/MAX78000/TMR/project.mk index 5262c778397..25071e3a1c8 100644 --- a/Examples/MAX78000/TMR/project.mk +++ b/Examples/MAX78000/TMR/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/TRNG/.vscode/README.md b/Examples/MAX78000/TRNG/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/TRNG/.vscode/README.md +++ b/Examples/MAX78000/TRNG/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/TRNG/.vscode/settings.json b/Examples/MAX78000/TRNG/.vscode/settings.json index 0c015ad737c..07365686d9e 100755 --- a/Examples/MAX78000/TRNG/.vscode/settings.json +++ b/Examples/MAX78000/TRNG/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/TRNG/Makefile b/Examples/MAX78000/TRNG/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/TRNG/Makefile +++ b/Examples/MAX78000/TRNG/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/TRNG/main.c b/Examples/MAX78000/TRNG/main.c index ba6489b9847..595adaabb3f 100644 --- a/Examples/MAX78000/TRNG/main.c +++ b/Examples/MAX78000/TRNG/main.c @@ -6,10 +6,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/TRNG/project.mk b/Examples/MAX78000/TRNG/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX78000/TRNG/project.mk +++ b/Examples/MAX78000/TRNG/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/Temp_Monitor/.vscode/README.md b/Examples/MAX78000/Temp_Monitor/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/Temp_Monitor/.vscode/README.md +++ b/Examples/MAX78000/Temp_Monitor/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/Temp_Monitor/.vscode/settings.json b/Examples/MAX78000/Temp_Monitor/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/Temp_Monitor/.vscode/settings.json +++ b/Examples/MAX78000/Temp_Monitor/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/Temp_Monitor/Makefile b/Examples/MAX78000/Temp_Monitor/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/Temp_Monitor/Makefile +++ b/Examples/MAX78000/Temp_Monitor/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/Temp_Monitor/main.c b/Examples/MAX78000/Temp_Monitor/main.c index 050de159653..b70212a287b 100644 --- a/Examples/MAX78000/Temp_Monitor/main.c +++ b/Examples/MAX78000/Temp_Monitor/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/Temp_Monitor/project.mk b/Examples/MAX78000/Temp_Monitor/project.mk index 7f5fa2bf60d..e2cee5d1b12 100644 --- a/Examples/MAX78000/Temp_Monitor/project.mk +++ b/Examples/MAX78000/Temp_Monitor/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/Temp_Monitor/temp_monitor.c b/Examples/MAX78000/Temp_Monitor/temp_monitor.c index 46f213910c6..04604c9047b 100644 --- a/Examples/MAX78000/Temp_Monitor/temp_monitor.c +++ b/Examples/MAX78000/Temp_Monitor/temp_monitor.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/Temp_Monitor/temp_monitor.h b/Examples/MAX78000/Temp_Monitor/temp_monitor.h index d1c2415b9e4..d53fbc310a1 100644 --- a/Examples/MAX78000/Temp_Monitor/temp_monitor.h +++ b/Examples/MAX78000/Temp_Monitor/temp_monitor.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/UART/.vscode/README.md b/Examples/MAX78000/UART/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/UART/.vscode/README.md +++ b/Examples/MAX78000/UART/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/UART/.vscode/settings.json b/Examples/MAX78000/UART/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/UART/.vscode/settings.json +++ b/Examples/MAX78000/UART/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/UART/Makefile b/Examples/MAX78000/UART/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/UART/Makefile +++ b/Examples/MAX78000/UART/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/UART/main.c b/Examples/MAX78000/UART/main.c index 278e059bed8..1250a042d04 100644 --- a/Examples/MAX78000/UART/main.c +++ b/Examples/MAX78000/UART/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/UART/project.mk b/Examples/MAX78000/UART/project.mk index 5262c778397..25071e3a1c8 100644 --- a/Examples/MAX78000/UART/project.mk +++ b/Examples/MAX78000/UART/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/UART_DMA/.cproject b/Examples/MAX78000/UART_DMA/.cproject new file mode 100644 index 00000000000..bbbb2e72e57 --- /dev/null +++ b/Examples/MAX78000/UART_DMA/.cproject @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX78000/UART_DMA/.project b/Examples/MAX78000/UART_DMA/.project new file mode 100644 index 00000000000..523d770068f --- /dev/null +++ b/Examples/MAX78000/UART_DMA/.project @@ -0,0 +1,26 @@ + + + UART_DMA + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/Examples/MAX78000/UART_DMA/.settings/language.settings.xml b/Examples/MAX78000/UART_DMA/.settings/language.settings.xml new file mode 100644 index 00000000000..d32717b6f37 --- /dev/null +++ b/Examples/MAX78000/UART_DMA/.settings/language.settings.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/Examples/MAX78000/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs b/Examples/MAX78000/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs new file mode 100644 index 00000000000..59c0b37ba75 --- /dev/null +++ b/Examples/MAX78000/UART_DMA/.settings/org.eclipse.cdt.codan.core.prefs @@ -0,0 +1,93 @@ +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"} +org.eclipse.cdt.codan.checkers.nocommentinside=-Error +org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"} +org.eclipse.cdt.codan.checkers.nolinecomment=-Error +org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"} +org.eclipse.cdt.codan.checkers.noreturn=Error +org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"} +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CStyleCastProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"C-Style cast instead of C++ cast\\")"} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"} +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning +org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true} +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CopyrightProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Lack of copyright information\\")",regex\=>".*Copyright.*"} +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem=Error +org.eclipse.cdt.codan.internal.checkers.DecltypeAutoProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid 'decltype(auto)' specifier\\")"} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.GotoStatementProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Goto statement used\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissCaseProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing cases in switch\\")"} +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissDefaultProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing default in switch\\")",defaultWithAllEnums\=>false} +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing reference return value in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.MissSelfCheckProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Missing self check in assignment operator\\")"} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UsingInHeaderProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Using directive in header\\")"} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"} +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VirtualMethodCallProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Virtual method call in constructor/destructor\\")"} +org.eclipse.cdt.qt.core.qtproblem=Warning +org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null} diff --git a/Examples/MAX78000/UART_DMA/.settings/org.eclipse.cdt.core.prefs b/Examples/MAX78000/UART_DMA/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 00000000000..f882afd1da2 --- /dev/null +++ b/Examples/MAX78000/UART_DMA/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,15 @@ +eclipse.preferences.version=1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/BOARD/value=EvKit_V1 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/operation=replace +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/GCC_PREFIX/value=arm-none-eabi- +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/PROJECT/value=UART_DMA +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/delimiter=; +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/operation=append +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/TARGET/value=MAX78000 +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/append=true +environment/project/cdt.managedbuild.toolchain.gnu.cross.base.1028364529/appendContributed=true diff --git a/Examples/MAX78000/UART_DMA/.settings/org.eclipse.core.resources.prefs b/Examples/MAX78000/UART_DMA/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 00000000000..99f26c0203a --- /dev/null +++ b/Examples/MAX78000/UART_DMA/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/Examples/MAX78000/UART_DMA/.vscode/README.md b/Examples/MAX78000/UART_DMA/.vscode/README.md new file mode 100755 index 00000000000..5b355bd51c9 --- /dev/null +++ b/Examples/MAX78000/UART_DMA/.vscode/README.md @@ -0,0 +1,47 @@ +# VSCode-Maxim + +_(If you're viewing this document from within Visual Studio Code you can press `CTRL+SHIFT+V` to open a Markdown preview window.)_ + +## Quick Links + +* [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) + +## Introduction + +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). + +The following features are supported: + +* Code editing with intellisense down to the register level +* Code compilation with the ability to easily re-target a project for different microcontrollers and boards +* Flashing programs +* GUI and command-line debugging + +## Dependencies + +* [Visual Studio Code](https://code.visualstudio.com/) + * [C/C++ VSCode Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) + * [Cortex-Debug Extension](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) +* [Analog Devices MSDK](https://analogdevicesinc.github.io/msdk/) + +## Installation + +Install the MSDK, then set `"MAXIM_PATH"` in your _user_ VS Code settings. + +See [Getting Started with Visual Studio Code](https://analogdevicesinc.github.io/msdk/USERGUIDE/#getting-started-with-visual-studio-code) in the MSDK User Guide for detailed instructions. + +## Usage + +See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#visual-studio-code) for detailed usage info. + +## Issue Tracker + +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. + +New issues should contain _at minimum_ the following information: + +* Visual Studio Code version #s (see `Help -> About`) +* C/C++ Extension version # +* Target microcontroller and evaluation platform +* The projects `.vscode` folder and `Makefile` (where applicable). Standard compression formats such as `.zip`, `.rar`, `.tar.gz`, etc. are all acceptable. diff --git a/Examples/MAX78000/UART_DMA/.vscode/c_cpp_properties.json b/Examples/MAX78000/UART_DMA/.vscode/c_cpp_properties.json new file mode 100644 index 00000000000..dfbed47b581 --- /dev/null +++ b/Examples/MAX78000/UART_DMA/.vscode/c_cpp_properties.json @@ -0,0 +1,53 @@ +{ + "configurations": [ + { + "name": "Win32", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc.exe", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Linux", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + }, + { + "name": "Mac", + "includePath": [ + "${default}" + ], + "defines": [ + "${default}" + ], + "intelliSenseMode": "gcc-arm", + "compilerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gcc", + "browse": { + "path": [ + "${default}" + ] + } + } + ], + "version": 4 +} \ No newline at end of file diff --git a/Examples/MAX78000/UART_DMA/.vscode/flash.gdb b/Examples/MAX78000/UART_DMA/.vscode/flash.gdb new file mode 100644 index 00000000000..8f22801a47d --- /dev/null +++ b/Examples/MAX78000/UART_DMA/.vscode/flash.gdb @@ -0,0 +1,17 @@ +define flash_m4 + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor reset halt +end + +define flash_m4_run + set architecture armv7e-m + set remotetimeout 10 + target remote | openocd -c "gdb_port pipe;log_output flash.log" -s $arg0/scripts -f interface/$arg1 -f target/$arg2 -c "init; reset halt" + load + compare-sections + monitor resume +end diff --git a/Examples/MAX78000/UART_DMA/.vscode/launch.json b/Examples/MAX78000/UART_DMA/.vscode/launch.json new file mode 100644 index 00000000000..01fe5199048 --- /dev/null +++ b/Examples/MAX78000/UART_DMA/.vscode/launch.json @@ -0,0 +1,133 @@ +{ + "configurations": [ + { + "name": "Debug Arm (Cortex-debug)", + "cwd":"${workspaceRoot}", + "executable": "${workspaceFolder}/build/${config:program_file}", + "loadFiles": ["${workspaceFolder}/build/${config:program_file}"], + "symbolFiles": [{ + "file": "${workspaceFolder}/build/${config:symbol_file}" + }], + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "linux": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "windows": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "serverpath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "gdbPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "serverpath": "${config:OCD_path}/openocd", + }, + "searchDir": ["${config:OCD_path}/scripts"], + "configFiles": ["interface/${config:M4_OCD_interface_file}", "target/${config:M4_OCD_target_file}"], + "interface": "swd", + "runToEntryPoint": "main", + "svdFile": "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include/${config:target}.svd" + }, + { + "name": "GDB (Arm M4)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/build/${config:program_file}", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:ARM_GCC_path}/bin/arm-none-eabi-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3333", + "debugServerArgs": "-s ${config:OCD_path}/scripts -f interface/${config:M4_OCD_interface_file} -f target/${config:M4_OCD_target_file} -c \"init; reset halt\"", + "serverStarted": "Info : Listening on port 3333 for gdb connections", + "filterStderr": true, + "targetArchitecture": "arm", + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-arm.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text":"exec-file build/${config:program_file}" }, + { "text":"symbol-file build/${config:symbol_file}" }, + { "text":"target remote localhost:3333" }, + { "text":"monitor reset halt" }, + { "text":"set $pc=Reset_Handler"}, + { "text":"b main" } + ] + }, + { + "name": "GDB (RISC-V)", + "type": "cppdbg", + "request": "launch", + "program": "${workspaceFolder}/buildrv/${config:program_file}", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "MIMode": "gdb", + "linux": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/openocd", + }, + "windows": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb.exe", + "debugServerPath": "${config:OCD_path}/openocd.exe", + }, + "osx": { + "miDebuggerPath": "${config:xPack_GCC_path}/bin/riscv-none-elf-gdb", + "debugServerPath": "${config:OCD_path}/bin/openocd", + }, + "logging": { + "exceptions": true, + "trace": false, + "traceResponse": false, + "engineLogging": false + }, + "miDebuggerServerAddress": "localhost:3334", + "debugServerArgs": "-c \"gdb_port 3334\" -s ${config:OCD_path}/scripts -f interface/${config:RV_OCD_interface_file} -f target/${config:RV_OCD_target_file}", + "serverStarted": "Info : Listening on port 3334 for gdb connections", + "filterStderr": true, + "customLaunchSetupCommands": [ + {"text":"-list-features"} + ], + "targetArchitecture": "arm", + "setupCommands": [ + { "text":"set logging overwrite on"}, + { "text":"set logging file debug-riscv.log"}, + { "text":"set logging on"}, + { "text":"cd ${workspaceFolder}" }, + { "text": "set architecture riscv:rv32", "ignoreFailures": false }, + { "text":"exec-file build/${config:program_file}", "ignoreFailures": false }, + { "text":"symbol-file buildrv/${config:symbol_file}", "ignoreFailures": false }, + { "text":"target remote localhost:3334" }, + { "text":"b main" }, + { "text": "set $pc=Reset_Handler","ignoreFailures": false } + ] + } + ] +} diff --git a/Examples/MAX78000/UART_DMA/.vscode/settings.json b/Examples/MAX78000/UART_DMA/.vscode/settings.json new file mode 100755 index 00000000000..a2e954acb7e --- /dev/null +++ b/Examples/MAX78000/UART_DMA/.vscode/settings.json @@ -0,0 +1,84 @@ +{ + "terminal.integrated.env.windows": { + "Path":"${config:OCD_path};${config:ARM_GCC_path}/bin;${config:xPack_GCC_path}/bin;${config:MSYS_path}/usr/bin;${config:Make_path};${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.defaultProfile.windows": "Command Prompt", + + "terminal.integrated.env.linux": { + "PATH":"${config:OCD_path}:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + "terminal.integrated.env.osx": { + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", + "MAXIM_PATH":"${config:MAXIM_PATH}" + }, + + "target":"MAX78000", + "board":"EvKit_V1", + + "project_name":"${workspaceFolderBasename}", + + "program_file":"${config:project_name}.elf", + "symbol_file":"${config:program_file}", + + "M4_OCD_interface_file":"cmsis-dap.cfg", + "M4_OCD_target_file":"max78000.cfg", + "RV_OCD_interface_file":"ftdi/olimex-arm-usb-ocd-h.cfg", + "RV_OCD_target_file":"${config:target}_riscv.cfg", + + "v_Arm_GCC":"10.3", + "v_xPack_GCC":"12.2.0-3.1", + + "OCD_path":"${config:MAXIM_PATH}/Tools/OpenOCD", + "ARM_GCC_path":"${config:MAXIM_PATH}/Tools/GNUTools/${config:v_Arm_GCC}", + "xPack_GCC_path":"${config:MAXIM_PATH}/Tools/xPack/riscv-none-elf-gcc/${config:v_xPack_GCC}", + "Make_path":"${config:MAXIM_PATH}/Tools/GNUTools/Make", + "MSYS_path":"${config:MAXIM_PATH}/Tools/MSYS2", + + "C_Cpp.default.includePath": [ + "${workspaceFolder}", + "${workspaceFolder}/**", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Device/Maxim/${config:target}/Include", + "${config:MAXIM_PATH}/Libraries/CMSIS/Include", + "${config:ARM_GCC_path}/arm-none-eabi/include", + "${config:ARM_GCC_path}/lib/gcc/arm-none-eabi/${config:v_Arm_GCC}/include", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Include/${config:target}", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ExtMemory", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.browse.path": [ + "${workspaceFolder}", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/Source", + "${config:MAXIM_PATH}/Libraries/Boards/${config:target}/${config:board}/Source", + "${config:MAXIM_PATH}/Libraries/PeriphDrivers/Source", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Camera", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Display/fonts", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/LED", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PMIC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/PushButton", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/Touchscreen", + "${config:MAXIM_PATH}/Libraries/MiscDrivers", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/ADC", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/EEPROM", + "${config:MAXIM_PATH}/Libraries/MiscDrivers/CODEC" + ], + "C_Cpp.default.defines": [ + + ], + "C_Cpp.default.forcedInclude": [ + "${workspaceFolder}/build/project_defines.h" + ] +} + diff --git a/Examples/MAX78000/UART_DMA/.vscode/tasks.json b/Examples/MAX78000/UART_DMA/.vscode/tasks.json new file mode 100644 index 00000000000..e95445e2b3e --- /dev/null +++ b/Examples/MAX78000/UART_DMA/.vscode/tasks.json @@ -0,0 +1,115 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "type": "shell", + "command": "make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -r -j 8 --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean", + "type": "shell", + "command": "make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 clean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "clean-periph", + "type": "shell", + "command": "make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}", + "osx":{ + "command": "source ~/.zshrc && make -j 8 distclean --output-sync=target --no-print-directory TARGET=${config:target} BOARD=${config:board} MAXIM_PATH=${config:MAXIM_PATH} MAKE=make PROJECT=${config:project_name}" + }, + "group": "build", + "problemMatcher": [] + }, + { + "label": "flash", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4 ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "flash & run", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--cd=\"${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "-x=\"${workspaceFolder}/.vscode/flash.gdb\"", + "--ex=\"flash_m4_run ${config:OCD_path} ${config:M4_OCD_interface_file} ${config:M4_OCD_target_file}\"", + "--batch" + ], + "group": "build", + "problemMatcher": [], + "dependsOn":["build"] + }, + { + "label": "erase flash", + "type": "shell", + "command": "openocd", + "args": [ + "-s", "${config:OCD_path}/scripts", + "-f", "interface/${config:M4_OCD_interface_file}", + "-f", "target/${config:M4_OCD_target_file}", + "-c", "\"init; reset halt; max32xxx mass_erase 0;\"", + "-c", "exit" + ], + "group":"build", + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "openocd (m4)", + "type": "shell", + "command": "openocd", + "args": [ + "-s", + "${config:OCD_path}/scripts", + "-f", + "interface/${config:M4_OCD_interface_file}", + "-f", + "target/${config:M4_OCD_target_file}", + "-c", + "\"init; reset halt\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + { + "label": "gdb (m4)", + "type": "shell", + "command": "arm-none-eabi-gdb", + "args": [ + "--ex=\"cd ${workspaceFolder}\"", + "--se=\"build/${config:program_file}\"", + "--symbols=build/${config:symbol_file}", + "--ex=\"target remote localhost:3333\"", + "--ex=\"monitor reset halt\"", + "--ex=\"b main\"", + "--ex=\"c\"" + ], + "problemMatcher": [], + "dependsOn":[] + }, + ] +} \ No newline at end of file diff --git a/Examples/MAX78000/UART_DMA/Makefile b/Examples/MAX78000/UART_DMA/Makefile new file mode 100644 index 00000000000..5d1117380ea --- /dev/null +++ b/Examples/MAX78000/UART_DMA/Makefile @@ -0,0 +1,382 @@ +############################################################################### + # + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## + +# ** Readme! ** +# Don't edit this file! This is the core Makefile for a MaximSDK +# project. The available configuration options can be overridden +# in "project.mk", on the command-line, or with system environment +# variables. + +# See https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system +# for more detailed instructions on how to use this system. + +# The detailed instructions mentioned above are easier to read than +# this file, but the comments found in this file also outline the +# available configuration variables. This file is organized into +# sub-sections, some of which expose config variables. + + +# ******************************************************************************* +# Set the target microcontroller and board to compile for. + +# Every TARGET microcontroller has some Board Support Packages (BSPs) that are +# available for it under the MaximSDK/Libraries/Boards/TARGET folder. The BSP +# that gets selected is MaximSDK/Libraries/Boards/TARGET/BOARD. + +# Configuration Variables: +# - TARGET : Override the default target microcontroller. Ex: TARGET=MAX78000 +# - BOARD : Override the default BSP (case sensitive). Ex: BOARD=EvKit_V1, BOARD=FTHR_RevA + + +ifeq "$(TARGET)" "" +# Default target microcontroller +TARGET := MAX78000 +TARGET_UC := MAX78000 +TARGET_LC := max78000 +else +# "TARGET" has been overridden in the environment or on the command-line. +# We need to calculate an upper and lowercase version of the part number, +# because paths on Linux and MacOS are case-sensitive. +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) +endif + +# Default board. +BOARD ?= EvKit_V1 + +# ******************************************************************************* +# Locate the MaximSDK + +# This Makefile needs to know where to find the MaximSDK, and the MAXIM_PATH variable +# should point to the root directory of the MaximSDK installation. Setting this manually +# is usually only required if you're working on the command-line. + +# If MAXIM_PATH is not specified, we assume the project still lives inside of the MaximSDK +# and move up from this project's original location. + +# Configuration Variables: +# - MAXIM_PATH : Tell this Makefile where to find the MaximSDK. Ex: MAXIM_PATH=C:/MaximSDK + + +ifneq "$(MAXIM_PATH)" "" +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +# Locate some other useful paths... +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS +endif + +# ******************************************************************************* +# Include project Makefile. We do this after formulating TARGET, BOARD, and MAXIM_PATH +# in case project.mk needs to reference those values. However, we also include +# this as early as possible in the Makefile so that it can append to or override +# the variables below. + + +PROJECTMK ?= $(abspath ./project.mk) +include $(PROJECTMK) +$(info Loaded project.mk) +# PROJECTMK is also used by implicit rules and other libraries to add project.mk as a watch file + +# ******************************************************************************* +# Final path sanitization and re-calculation. No options here. + +ifeq "$(MAXIM_PATH)" "" +# MAXIM_PATH is still not defined... +DEPTH := ../../../ +MAXIM_PATH := $(abspath $(DEPTH)) +$(warning Warning: MAXIM_PATH is not set! Set MAXIM_PATH in your environment or in project.mk to clear this warning.) +$(warning Warning: Attempting to use $(MAXIM_PATH) calculated from relative path) +else +# Sanitize MAXIM_PATH for backslashes +MAXIM_PATH := $(subst \,/,$(MAXIM_PATH)) +endif + +# Final recalculation of LIBS_DIR/CMSIS_ROOT +LIBS_DIR := $(abspath $(MAXIM_PATH)/Libraries) +CMSIS_ROOT := $(LIBS_DIR)/CMSIS + +# One final UC/LC check in case user set TARGET in project.mk +TARGET_UC := $(subst m,M,$(subst a,A,$(subst x,X,$(TARGET)))) +TARGET_LC := $(subst M,m,$(subst A,a,$(subst X,x,$(TARGET)))) + +export TARGET +export TARGET_UC +export TARGET_LC +export CMSIS_ROOT +# TODO: Remove dependency on exports for these variables. + +# ******************************************************************************* +# Set up search paths, and auto-detect all source code on those paths. + +# The following paths are searched by default, where "./" is the project directory. +# ./ +# |- *.h +# |- *.c +# |-include (optional) +# |- *.h +# |-src (optional) +# |- *.c + +# Configuration Variables: +# - VPATH : Tell this Makefile to search additional locations for source (.c) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - IPATH : Tell this Makefile to search additional locations for header (.h) files. +# You should use the "+=" operator with this option. +# Ex: VPATH += your/new/path +# - SRCS : Tell this Makefile to explicitly add a source (.c) file to the build. +# This is really only useful if you want to add a source file that isn't +# on any VPATH, in which case you can add the full path to the file here. +# You should use the "+=" operator with this option. +# Ex: SRCS += your/specific/source/file.c +# - AUTOSEARCH : Set whether this Makefile should automatically detect .c files on +# VPATH and add them to the build. This is enabled by default. Set +# to 0 to disable. If autosearch is disabled, source files must be +# manually added to SRCS. +# Ex: AUTOSEARCH = 0 + + +# Where to find source files for this project. +VPATH += . +VPATH += src +VPATH := $(VPATH) + +# Where to find header files for this project +IPATH += . +IPATH += include +IPATH := $(IPATH) + +AUTOSEARCH ?= 1 +ifeq ($(AUTOSEARCH), 1) +# Auto-detect all C/C++ source files on VPATH +SRCS += $(wildcard $(addsuffix /*.c, $(VPATH))) +SRCS += $(wildcard $(addsuffix /*.cpp, $(VPATH))) +endif + +# Collapse SRCS before passing them on to the next stage +SRCS := $(SRCS) + +# ******************************************************************************* +# Set the output filename + +# Configuration Variables: +# - PROJECT : Override the default output filename. Ex: PROJECT=MyProject + + +# The default value creates a file named after the target micro. Ex: MAX78000.elf +PROJECT ?= $(TARGET_LC) + +# ******************************************************************************* +# Compiler options + +# Configuration Variables: +# - DEBUG : Set DEBUG=1 to build explicitly for debugging. This adds some additional +# symbols and sets -Og as the default optimization level. +# - MXC_OPTIMIZE_CFLAGS : Override the default compiler optimization level. +# Ex: MXC_OPTIMIZE_CFLAGS = -O2 +# - PROJ_CFLAGS : Add additional compiler flags to the build. +# You should use the "+=" operator with this option. +# Ex: PROJ_CFLAGS += -Wextra +# - MFLOAT_ABI : Set the floating point acceleration level. +# The only options are "hard", "soft", or "softfp". +# Ex: MFLOAT_ABI = hard +# - LINKERFILE : Override the default linkerfile. +# Ex: LINKERFILE = customlinkerfile.ld +# - LINKERPATH : Override the default search location for $(LINKERFILE) +# The default search location is $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/GCC +# If $(LINKERFILE) cannot be found at this path, then the root project +# directory will be used as a fallback. + +# Select 'GCC' or 'IAR' compiler +ifeq "$(COMPILER)" "" +COMPILER := GCC +endif + +# Set default compiler optimization levels +ifeq "$(MAKECMDGOALS)" "release" +# Default optimization level for "release" builds (make release) +MXC_OPTIMIZE_CFLAGS ?= -O2 +DEBUG = 0 +endif + +ifeq ($(DEBUG),1) +# Optimizes for debugging as recommended +# by GNU for code-edit-debug cycles +# https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options +MXC_OPTIMIZE_CFLAGS := -Og +endif + +# Default level if not building for release or explicitly for debug +MXC_OPTIMIZE_CFLAGS ?= -O2 + +# Set compiler flags +PROJ_CFLAGS += -Wall # Enable warnings +PROJ_CFLAGS += -DMXC_ASSERT_ENABLE + +# Set hardware floating point acceleration. +# Options are: +# - hard +# - soft +# - softfp (default if MFLOAT_ABI is not set) +MFLOAT_ABI ?= softfp +# MFLOAT_ABI must be exported to other Makefiles +export MFLOAT_ABI + +# This path contains system-level intialization files for the target micro. Add to the build. +VPATH += $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source + +# ******************************************************************************* +# Secure Boot Tools (SBT) + +# This section integrates the Secure Boot Tools. It's intended for use with +# microcontrollers that have a secure bootloader. + +# Enabling SBT integration will add some special rules, such as "make sla", "make scpa", etc. + +# Configuration variables: +# SBT : Toggle SBT integration. Set to 1 to enable, or 0 +# to disable +# MAXIM_SBT_DIR : Specify the location of the SBT tool binaries. This defaults to +# Tools/SBT in the MaximSDK. The standalone SBT installer will override +# this via an environment variable. +# TARGET_SEC : Specify the part number to be passed into the SBT. This should match +# the secure variant part #. The default value will depend on TARGET. +# For example, TARGET=MAX32650 will result in TARGET_SEC=MAX32651, and +# the default selection happens in Tools/SBT/SBT-config. +# However, if there are multiple secure part #s for the target +# microcontroller this variable may need to be changed. + +SBT ?= 0 +ifeq ($(SBT), 1) +MAXIM_SBT_DIR ?= $(MAXIM_PATH)/Tools/SBT +MAXIM_SBT_DIR := $(subst \,/,$(MAXIM_SBT_DIR)) +# ^ Must sanitize path for \ on Windows, since this may come from an environment +# variable. + +export MAXIM_SBT_DIR # SBTs must have this environment variable defined to work + +# SBT-config.mk and SBT-rules.mk are included further down this Makefile. + +endif # SBT + +# ******************************************************************************* +# Default goal selection. This section allows you to override the default goal +# that will run if no targets are specified on the command-line. +# (ie. just running 'make' instead of 'make all') + +# Configuration variables: +# .DEFAULT_GOAL : Set the default goal if no targets were specified on the +# command-line +# ** "override" must be used with this variable. ** +# Ex: "override .DEFAULT_GOAL = mygoal" + +ifeq "$(.DEFAULT_GOAL)" "" +ifeq ($(SBT),1) +override .DEFAULT_GOAL := sla +else +override .DEFAULT_GOAL := all +endif +endif + +# Developer note: 'override' is used above for legacy Makefile compatibility. +# gcc.mk/gcc_riscv.mk need to hard-set 'all' internally, so this new system +# uses 'override' to come in over the top without breaking old projects. + +# It's also necessary to explicitly set MAKECMDGOALS... +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + +# Enable colors when --sync-output is used. +# See https://www.gnu.org/software/make/manual/make.html#Terminal-Output (section 13.2) +ifneq ($(MAKE_TERMOUT),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +ifneq ($(FORCE_COLOR),) +PROJ_CFLAGS += -fdiagnostics-color=always +endif + +# ******************************************************************************* +# Include SBT config. We need to do this here because it needs to know +# the current MAKECMDGOAL. +ifeq ($(SBT),1) +include $(MAXIM_PATH)/Tools/SBT/SBT-config.mk +endif + +# ******************************************************************************* +# Libraries + +# This section offers "toggle switches" to include or exclude the libraries that +# are available in the MaximSDK. Set a configuration variable to 1 to include the +# library in the build, or 0 to exclude. + +# Each library may also have its own library specific configuration variables. See +# Libraries/libs.mk for more details. + +# Configuration variables: +# - LIB_BOARD : Include the Board-Support Package (BSP) library. (Enabled by default) +# - LIB_PERIPHDRIVERS : Include the peripheral driver library. (Enabled by default) +# - LIB_CMSIS_DSP : Include the CMSIS-DSP library. +# - LIB_CORDIO : Include the Cordio BLE library +# - LIB_FCL : Include the Free Cryptographic Library (FCL) +# - LIB_FREERTOS : Include the FreeRTOS and FreeRTOS-Plus-CLI libraries +# - LIB_LC3 : Include the Low Complexity Communication Codec (LC3) library +# - LIB_LITTLEFS : Include the "little file system" (littleFS) library +# - LIB_LWIP : Include the lwIP library +# - LIB_MAXUSB : Include the MAXUSB library +# - LIB_SDHC : Include the SDHC library + +include $(LIBS_DIR)/libs.mk + + +# ******************************************************************************* +# Rules + +# Include the rules for building for this target. All other makefiles should be +# included before this one. +include $(CMSIS_ROOT)/Device/Maxim/$(TARGET_UC)/Source/$(COMPILER)/$(TARGET_LC).mk + +# Include the rules that integrate the SBTs. SBTs are a special case that must be +# include after the core gcc rules to extend them. +ifeq ($(SBT), 1) +include $(MAXIM_PATH)/Tools/SBT/SBT-rules.mk +endif + + +# Get .DEFAULT_GOAL working. +ifeq "$(MAKECMDGOALS)" "" +MAKECMDGOALS:=$(.DEFAULT_GOAL) +endif + + +all: +# Extend the functionality of the "all" recipe here + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + +libclean: + $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph + +clean: +# Extend the functionality of the "clean" recipe here + +# The rule to clean out all the build products. +distclean: clean libclean diff --git a/Examples/MAX78000/UART_DMA/README.md b/Examples/MAX78000/UART_DMA/README.md new file mode 100644 index 00000000000..50b59cbbe5b --- /dev/null +++ b/Examples/MAX78000/UART_DMA/README.md @@ -0,0 +1,71 @@ +## Description + +To demonstrate the use of the UART peripheral with DMA, data is sent between two UART ports on the MAX78000. + + +## Software + +### Project Usage + +Universal instructions on building, flashing, and debugging this project can be found in the **[MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/)**. + +### Project-Specific Build Notes + +(None - this project builds as a standard example) + +## Required Connections + +- Connect a USB cable between the PC and the CN2 (USB/PWR) connector. +- Open an terminal application on the PC and connect to the EV kit's console UART at 115200, 8-N-1. +- Connect P1.0 (UART 2 RX) and P2.7 (UART 3 TX). + +## Expected Output + +The Console UART of the device will output these messages: + +``` +**************** UART Example ****************** +This example sends data from one UART to another + +Connect RX(Px.xx) of UARTx and TX(Px.xx) of UARTx. + +To indicate a successful UART transfer, LED1 will illuminate. + +Push SW2 to continue + +UART Baud : 115200 Hz +Test Length : 512 bytes + +-->UART Initialized + +-->Data verified + +-->Example Succeeded + +``` + +or + +``` +**************** UART Example ****************** +This example sends data from one UART to another + +Connect RX(Px.xx) of UARTx and TX(Px.xx) of UARTx. + +To indicate a successful UART transfer, LED1 will illuminate. + +Push SW2 to continue + +UART Baud : 115200 Hz +Test Length : 512 bytes + +Acquired DMA channel 0 for RX transaction +Acquired DMA channel 1 for TX transaction + +-->UART Initialized + +-->Data verified + +-->Example Succeeded + +``` \ No newline at end of file diff --git a/Examples/MAX78000/UART_DMA/UART_DMA.launch b/Examples/MAX78000/UART_DMA/UART_DMA.launch new file mode 100644 index 00000000000..7eb32081d3d --- /dev/null +++ b/Examples/MAX78000/UART_DMA/UART_DMA.launch @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Examples/MAX78000/UART_DMA/main.c b/Examples/MAX78000/UART_DMA/main.c new file mode 100644 index 00000000000..ab044bbbe7f --- /dev/null +++ b/Examples/MAX78000/UART_DMA/main.c @@ -0,0 +1,276 @@ +/****************************************************************************** + * + * Copyright (C) 2024 Analog Devices, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ + +/** + * @file main.c + * @brief Main for UART with DMA example. + * @details This example demonstrates how to use DMA with UART for data transfer. + * The example sets up DMA channels to handle UART transmissions and receptions, + * looping back the TX of one UART to the RX of another UART. A jumper must be + * connected between P1.0 (UART 2 RX) -> P2.7 (UART 3 TX). + * The example uses either automatic or manual DMA handler configuration + * depending on the AUTOHANDLERS macro definition. + */ + +/***** Includes *****/ +#include +#include +#include +#include "mxc_device.h" +#include "pb.h" +#include "board.h" +#include "mxc_delay.h" +#include "uart.h" +#include "dma.h" +#include "nvic_table.h" +#include "led.h" + +/***** Definitions *****/ +#define AUTOHANDLERS + +#define UART_BAUD 115200 +#define BUFF_SIZE 512 + +#define RX_UART MXC_UART2 +#define TX_UART MXC_UART3 + +/***** Globals *****/ +volatile int READ_FLAG; +volatile int WRITE_FLAG; +volatile int buttonPressed; +static mxc_uart_req_t read_req; +static mxc_uart_req_t write_req; + +#if defined(BOARD_EVKIT_V1) +#warning "This example has been written for the MAX78000 FTHR board." +#endif + +/***** Functions *****/ +#ifndef AUTOHANDLERS +void DMA_RX_Handler(void) +{ + MXC_DMA_Handler(); +} + +void DMA_TX_Handler(void) +{ + MXC_DMA_Handler(); +} +#endif + +void readCallback(mxc_uart_req_t *req, int error) +{ + READ_FLAG = error; +} + +void writeCallback(mxc_uart_req_t *req, int error) +{ + WRITE_FLAG = error; +} + +void buttonHandler(void) +{ + buttonPressed = 1; +} + +#ifdef AUTOHANDLERS +int exampleDMAAutoHandlers(void) +{ + int error = 0; + + // Auto DMA handlers will automatically initialize DMA, acquire & assign channels, + // and guarantee that each transaction's callback function is executed when + // the transaction is complete. + MXC_UART_SetAutoDMAHandlers(RX_UART, true); + MXC_UART_SetAutoDMAHandlers(TX_UART, true); + + // "READ_FLAG" is set in the read transaction's callback. It will be set to 0 when + // the read request completes successfully. We use it to wait for the DMA transaction + // to complete, since the DMA APIs are asynchronous (non-blocking) + READ_FLAG = 1; + + error = MXC_UART_TransactionDMA(&read_req); + if (error) { + printf("-->Error starting DMA read: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + error = MXC_UART_TransactionDMA(&write_req); + if (error) { + printf("-->Error starting DMA write: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + while (READ_FLAG) {} + + printf("-->Transaction completed\n"); + return READ_FLAG; +} +#else +int exampleDMAManualHandlers(void) +{ + int error = 0; + + // Manally initialize DMA + MXC_DMA_Init(); + + // Manually acquire a channel for the read request and assign it to the drivers. + int rx_channel = MXC_DMA_AcquireChannel(); + if (rx_channel >= 0) { + printf("Acquired DMA channel %i for RX transaction\n", rx_channel); + } else { + printf("Failed to acquire RX DMA channel with error %i\n", rx_channel); + return rx_channel; + } + MXC_UART_SetRXDMAChannel(RX_UART, rx_channel); + + // Additionally, assign the NVIC IRQ to a function that calls "MXC_DMA_Handler()". + // This is required for any assigned callbacks to work. + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(rx_channel)); + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(rx_channel), DMA_RX_Handler); + + // Do the same for the write request. + int tx_channel = MXC_DMA_AcquireChannel(); + if (tx_channel >= 0) { + printf("Acquired DMA channel %i for RX transaction\n", tx_channel); + } else { + printf("Failed to acquire RX DMA channel with error %i\n", tx_channel); + return tx_channel; + } + MXC_UART_SetTXDMAChannel(TX_UART, tx_channel); + NVIC_EnableIRQ(MXC_DMA_CH_GET_IRQ(tx_channel)); + MXC_NVIC_SetVector(MXC_DMA_CH_GET_IRQ(tx_channel), DMA_TX_Handler); + + // Initialize flags. We will use these to monitor when the read/write requests + // have completed, since the DMA APIs are asynchronous. + WRITE_FLAG = 1; + READ_FLAG = 1; + + error = MXC_UART_TransactionDMA(&read_req); + if (error) { + printf("-->Error starting DMA read: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + error = MXC_UART_TransactionDMA(&write_req); + if (error) { + printf("-->Error starting DMA write: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + while (WRITE_FLAG) {} + while (READ_FLAG) {} + + printf("-->Transaction completed\n"); + return WRITE_FLAG; +} +#endif // AUTOHANDLERS + +/******************************************************************************/ +int main(void) +{ + int error, i, fail = 0; + uint8_t TxData[BUFF_SIZE]; + uint8_t RxData[BUFF_SIZE]; + + printf("\n\n**************** UART Example ******************\n"); + printf("This example sends data from one UART to another\n"); + printf("\nConnect P1.0 (UART 2 RX) to P2.7 (UART 3 TX).\n\n"); + printf("To indicate a successful UART transfer, LED1 will illuminate.\n"); + printf("\nPush SW1 to continue\n"); + + buttonPressed = 0; + PB_RegisterCallback(0, (pb_callback)buttonHandler); + while (!buttonPressed) {} + + printf("\nUART Baud \t: %d Hz\n", UART_BAUD); + printf("Test Length \t: %d bytes\n\n", BUFF_SIZE); + + // Initialize the data buffers + for (i = 0; i < BUFF_SIZE; i++) { + TxData[i] = i; + } + memset(RxData, 0x0, BUFF_SIZE); + + // Initialize the UART + error = MXC_UART_Init(TX_UART, UART_BAUD, MXC_UART_APB_CLK); + if (error < E_NO_ERROR) { + printf("-->Error initializing UART: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + error = MXC_UART_Init(RX_UART, UART_BAUD, MXC_UART_APB_CLK); + if (error < E_NO_ERROR) { + printf("-->Error initializing UART: %d\n", error); + printf("-->Example Failed\n"); + return error; + } + + // Setup request structs describing the transactions. + // Request structs are placed in the global scope so they + // don't go out of context. This can happen when a req struct + // is declared inside a function and the function completes. + // The memory would be freed, invalidating the UART driver's + // pointers to it. + read_req.uart = RX_UART; + read_req.rxData = RxData; + read_req.rxLen = BUFF_SIZE; + read_req.txLen = 0; + read_req.callback = readCallback; + + write_req.uart = TX_UART; + write_req.txData = TxData; + write_req.txLen = BUFF_SIZE; + write_req.rxLen = 0; + write_req.callback = writeCallback; + + printf("-->UART Initialized\n\n"); + +#ifdef AUTOHANDLERS + error = exampleDMAAutoHandlers(); +#else + error = exampleDMAManualHandlers(); +#endif + + if (READ_FLAG != E_NO_ERROR) { + printf("-->Error with read callback; %d\n", READ_FLAG); + fail++; + } + + if ((error = memcmp(RxData, TxData, BUFF_SIZE)) != 0) { + printf("-->Error verifying Data: %d\n", error); + fail++; + } else { + printf("-->Data verified\n"); + } + + if (fail != 0) { + printf("\n-->Example Failed\n"); + LED_On(0); // indicates FAIL + return E_FAIL; + } + + LED_On(1); // indicates SUCCESS + printf("\n-->Example Succeeded\n"); + return E_NO_ERROR; +} diff --git a/Examples/MAX78000/UART_DMA/project.mk b/Examples/MAX78000/UART_DMA/project.mk new file mode 100644 index 00000000000..b64113639d8 --- /dev/null +++ b/Examples/MAX78000/UART_DMA/project.mk @@ -0,0 +1,33 @@ +# This file can be used to set build configuration +# variables. These variables are defined in a file called +# "Makefile" that is located next to this one. + +# For instructions on how to use this system, see +# https://analogdevicesinc.github.io/msdk/USERGUIDE/#build-system + +#MXC_OPTIMIZE_CFLAGS = -Og +# ^ For example, you can uncomment this line to +# optimize the project for debugging + +# ********************************************************** + +# Add your config here! + +ifeq ($(BOARD),Aud01_RevA) +$(error ERR_NOTSUPPORTED: This project is not supported for the Audio board) +endif + +ifeq ($(BOARD),CAM01_RevA) +$(error ERR_NOTSUPPORTED: This project is not supported for the CAM01 board) +endif + +ifeq ($(BOARD),CAM02_RevA) +$(error ERR_NOTSUPPORTED: This project is not supported for the CAM02 board) +endif + +ifeq ($(BOARD),EVKIT) +$(error ERR_NOTSUPPORTED: This project is not supported for the FTHR board) +endif + + + diff --git a/Examples/MAX78000/UCL/.vscode/README.md b/Examples/MAX78000/UCL/.vscode/README.md index f57d4364851..cc0783881d1 100644 --- a/Examples/MAX78000/UCL/.vscode/README.md +++ b/Examples/MAX78000/UCL/.vscode/README.md @@ -4,14 +4,14 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) -* [Wiki](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/wiki) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) +* [Wiki](https://github.com/analogdevicesinc/VSCode-Maxim/wiki) * If it's not in the readme, check the wiki. * If it's not in the wiki, open a ticket! ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX-series](https://www.maximintegrated.com/en/products/microcontrollers.html) microcontrollers. The following features are supported: @@ -91,7 +91,7 @@ Ex: ### Where to Find Projects -The [Examples](https://github.com/Analog-Devices-MSDK/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. +The [Examples](https://github.com/analogdevicesinc/msdk/tree/main/Examples) in the MSDK come with with pre-configured .vscode project folders. These projects can be opened "out of the box", but it's good practice to copy example folders _outside_ of the MSDK so that the original copies are kept as clean references. The examples can be freely moved to any location _without a space in its path_. Additionally, empty project templates and a drag-and-drop folder for "injecting" a VSCode-Maxim project can be found under `Tools/VSCode-Maxim` in the MaximSDK installation. @@ -413,7 +413,7 @@ For example, if I wanted to enable hardware floating-point acceleration for my p # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration #BOARD=FTHR_RevA # ^ For example, you can uncomment this line to make the diff --git a/Examples/MAX78000/UCL/Makefile b/Examples/MAX78000/UCL/Makefile index d39d906a027..3bc5a802fde 100644 --- a/Examples/MAX78000/UCL/Makefile +++ b/Examples/MAX78000/UCL/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -25,7 +24,7 @@ # in "project.mk", on the command-line, or with system environment # variables. -# See https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# See https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # for more detailed instructions on how to use this system. # The detailed instructions mentioned above are easier to read than @@ -375,7 +374,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/UCL/project.mk b/Examples/MAX78000/UCL/project.mk index 5eb82f2abdc..b804a6a31d7 100644 --- a/Examples/MAX78000/UCL/project.mk +++ b/Examples/MAX78000/UCL/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/WUT/.vscode/README.md b/Examples/MAX78000/WUT/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/WUT/.vscode/README.md +++ b/Examples/MAX78000/WUT/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/WUT/.vscode/settings.json b/Examples/MAX78000/WUT/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/WUT/.vscode/settings.json +++ b/Examples/MAX78000/WUT/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/WUT/Makefile b/Examples/MAX78000/WUT/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/WUT/Makefile +++ b/Examples/MAX78000/WUT/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/WUT/main.c b/Examples/MAX78000/WUT/main.c index e4e6029d60d..bef18b4e320 100644 --- a/Examples/MAX78000/WUT/main.c +++ b/Examples/MAX78000/WUT/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -64,7 +63,7 @@ void setTrigger(int waitForTrigger) while (MXC_UART_ReadyForSleep(MXC_UART_GET_UART(CONSOLE_UART)) != E_NO_ERROR) {} } -void WUT_IRQHandler() +void WUT_IRQHandler(void) { MXC_WUT_IntClear(); } diff --git a/Examples/MAX78000/WUT/project.mk b/Examples/MAX78000/WUT/project.mk index 5262c778397..25071e3a1c8 100644 --- a/Examples/MAX78000/WUT/project.mk +++ b/Examples/MAX78000/WUT/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/Watchdog/.vscode/README.md b/Examples/MAX78000/Watchdog/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/Watchdog/.vscode/README.md +++ b/Examples/MAX78000/Watchdog/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/Watchdog/.vscode/settings.json b/Examples/MAX78000/Watchdog/.vscode/settings.json index 7e02d884622..a2e954acb7e 100755 --- a/Examples/MAX78000/Watchdog/.vscode/settings.json +++ b/Examples/MAX78000/Watchdog/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/Watchdog/Makefile b/Examples/MAX78000/Watchdog/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/Watchdog/Makefile +++ b/Examples/MAX78000/Watchdog/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/Watchdog/main.c b/Examples/MAX78000/Watchdog/main.c index ffbd0a28d92..585ec5a2f95 100644 --- a/Examples/MAX78000/Watchdog/main.c +++ b/Examples/MAX78000/Watchdog/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -67,7 +66,7 @@ volatile int interrupt_count = 0; /***** Functions *****/ // ***************************************************************************** -void watchdogHandler() +void watchdogHandler(void) { MXC_WDT_ClearIntFlag(MXC_WDT0); @@ -89,7 +88,7 @@ void WDT0_IRQHandler(void) watchdogHandler(); } // ***************************************************************************** -void MXC_WDT_Setup() +void MXC_WDT_Setup(void) { MXC_WDT_Disable(MXC_WDT0); MXC_WDT_ResetTimer(MXC_WDT0); @@ -99,7 +98,7 @@ void MXC_WDT_Setup() MXC_WDT_Enable(MXC_WDT0); } -void SW1_Callback() +void SW1_Callback(void) { printf("\nEnabling Timeout Interrupt...\n"); MXC_WDT_Disable(MXC_WDT0); @@ -119,7 +118,7 @@ void SW1_Callback() PB_RegisterCallback(0, NULL); } -void SW2_Callback() +void SW2_Callback(void) { printf("What happens if the watchdog is reset too early?\n"); sw2_pressed = 1; diff --git a/Examples/MAX78000/Watchdog/project.mk b/Examples/MAX78000/Watchdog/project.mk index 5262c778397..25071e3a1c8 100644 --- a/Examples/MAX78000/Watchdog/project.mk +++ b/Examples/MAX78000/Watchdog/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/WearLeveling/.vscode/README.md b/Examples/MAX78000/WearLeveling/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78000/WearLeveling/.vscode/README.md +++ b/Examples/MAX78000/WearLeveling/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78000/WearLeveling/.vscode/settings.json b/Examples/MAX78000/WearLeveling/.vscode/settings.json index 7d5f22bd577..9811399bebb 100755 --- a/Examples/MAX78000/WearLeveling/.vscode/settings.json +++ b/Examples/MAX78000/WearLeveling/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78000/WearLeveling/Makefile b/Examples/MAX78000/WearLeveling/Makefile index 44f83360061..5d1117380ea 100644 --- a/Examples/MAX78000/WearLeveling/Makefile +++ b/Examples/MAX78000/WearLeveling/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78000/WearLeveling/include/cli.h b/Examples/MAX78000/WearLeveling/include/cli.h index 9b7a720dbd3..d25fa53cfc8 100644 --- a/Examples/MAX78000/WearLeveling/include/cli.h +++ b/Examples/MAX78000/WearLeveling/include/cli.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/WearLeveling/include/file.h b/Examples/MAX78000/WearLeveling/include/file.h index 1a0cc3afbbc..467caee0d44 100644 --- a/Examples/MAX78000/WearLeveling/include/file.h +++ b/Examples/MAX78000/WearLeveling/include/file.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/WearLeveling/include/flash.h b/Examples/MAX78000/WearLeveling/include/flash.h index 1d960c3b90d..0101cd83a3f 100644 --- a/Examples/MAX78000/WearLeveling/include/flash.h +++ b/Examples/MAX78000/WearLeveling/include/flash.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/WearLeveling/include/main.h b/Examples/MAX78000/WearLeveling/include/main.h index fbd0dcf37ad..513c6aea595 100644 --- a/Examples/MAX78000/WearLeveling/include/main.h +++ b/Examples/MAX78000/WearLeveling/include/main.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/WearLeveling/main.c b/Examples/MAX78000/WearLeveling/main.c index 12654c254ec..ba69ed7d024 100644 --- a/Examples/MAX78000/WearLeveling/main.c +++ b/Examples/MAX78000/WearLeveling/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/WearLeveling/project.mk b/Examples/MAX78000/WearLeveling/project.mk index 8b1313bcf11..cdd69f7768f 100644 --- a/Examples/MAX78000/WearLeveling/project.mk +++ b/Examples/MAX78000/WearLeveling/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78000/WearLeveling/src/cli.c b/Examples/MAX78000/WearLeveling/src/cli.c index fe7c19c8026..cc833d31d19 100644 --- a/Examples/MAX78000/WearLeveling/src/cli.c +++ b/Examples/MAX78000/WearLeveling/src/cli.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/WearLeveling/src/file.c b/Examples/MAX78000/WearLeveling/src/file.c index dec9a57200f..ddb03186181 100644 --- a/Examples/MAX78000/WearLeveling/src/file.c +++ b/Examples/MAX78000/WearLeveling/src/file.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78000/WearLeveling/src/flash.c b/Examples/MAX78000/WearLeveling/src/flash.c index b778eb62f55..160cf912742 100644 --- a/Examples/MAX78000/WearLeveling/src/flash.c +++ b/Examples/MAX78000/WearLeveling/src/flash.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/ADC/.vscode/README.md b/Examples/MAX78002/ADC/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/ADC/.vscode/README.md +++ b/Examples/MAX78002/ADC/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/ADC/.vscode/settings.json b/Examples/MAX78002/ADC/.vscode/settings.json index c85cbf2ab6c..fa8723b49aa 100755 --- a/Examples/MAX78002/ADC/.vscode/settings.json +++ b/Examples/MAX78002/ADC/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/ADC/Makefile b/Examples/MAX78002/ADC/Makefile index 2840a41069b..18a370ad597 100644 --- a/Examples/MAX78002/ADC/Makefile +++ b/Examples/MAX78002/ADC/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/ADC/main.c b/Examples/MAX78002/ADC/main.c index c093c8f9f43..63265b68597 100644 --- a/Examples/MAX78002/ADC/main.c +++ b/Examples/MAX78002/ADC/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -233,10 +232,10 @@ void temperature_average(float temperature) if (temp_samples == SAMPLE_AVG) { average = sum / SAMPLE_AVG; - printf("Average = %0.2fC\n", average); + printf("Average = %0.2fC\n", (double)average); for (loop_counter = 0; loop_counter < SAMPLE_AVG; loop_counter++) { - printf("%0.2fC ", TEMP_SAMPLES[loop_counter]); + printf("%0.2fC ", (double)TEMP_SAMPLES[loop_counter]); if (loop_counter == 15) { printf("\n"); } diff --git a/Examples/MAX78002/ADC/project.mk b/Examples/MAX78002/ADC/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX78002/ADC/project.mk +++ b/Examples/MAX78002/ADC/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/AES/.vscode/README.md b/Examples/MAX78002/AES/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/AES/.vscode/README.md +++ b/Examples/MAX78002/AES/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/AES/.vscode/settings.json b/Examples/MAX78002/AES/.vscode/settings.json index 8b0bb6dffd3..d6a832772f6 100755 --- a/Examples/MAX78002/AES/.vscode/settings.json +++ b/Examples/MAX78002/AES/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/AES/Makefile b/Examples/MAX78002/AES/Makefile index 2840a41069b..18a370ad597 100644 --- a/Examples/MAX78002/AES/Makefile +++ b/Examples/MAX78002/AES/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/AES/main.c b/Examples/MAX78002/AES/main.c index 2194e0174de..f5a640bad0e 100644 --- a/Examples/MAX78002/AES/main.c +++ b/Examples/MAX78002/AES/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -51,7 +50,7 @@ mxc_aes_req_t req; volatile int dma_flag = 0; /***** Functions *****/ -void DMA0_IRQHandler() +void DMA0_IRQHandler(void) { MXC_DMA_Handler(); dma_flag++; diff --git a/Examples/MAX78002/AES/project.mk b/Examples/MAX78002/AES/project.mk index 1532153140b..3499393b3bb 100644 --- a/Examples/MAX78002/AES/project.mk +++ b/Examples/MAX78002/AES/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/ARM-DSP/README.md b/Examples/MAX78002/ARM-DSP/README.md index 9bb2d50bedc..5e1d116671b 100644 --- a/Examples/MAX78002/ARM-DSP/README.md +++ b/Examples/MAX78002/ARM-DSP/README.md @@ -8,7 +8,7 @@ The projects in this folder are ports of ARM's DSP example projects that can be Debug launch configurations are included in each project, and should appear in the "Favorites" menu in Eclipse. -Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop) +Development with Visual Studio Code is also supported. See [VSCode-Maxim](https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop) ## Software diff --git a/Examples/MAX78002/ARM-DSP/arm_bayes_example/.vscode/README.md b/Examples/MAX78002/ARM-DSP/arm_bayes_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/ARM-DSP/arm_bayes_example/.vscode/README.md +++ b/Examples/MAX78002/ARM-DSP/arm_bayes_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/ARM-DSP/arm_bayes_example/.vscode/settings.json b/Examples/MAX78002/ARM-DSP/arm_bayes_example/.vscode/settings.json index 78c0cd77584..40e99311ced 100755 --- a/Examples/MAX78002/ARM-DSP/arm_bayes_example/.vscode/settings.json +++ b/Examples/MAX78002/ARM-DSP/arm_bayes_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/ARM-DSP/arm_bayes_example/Makefile b/Examples/MAX78002/ARM-DSP/arm_bayes_example/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/ARM-DSP/arm_bayes_example/Makefile +++ b/Examples/MAX78002/ARM-DSP/arm_bayes_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/ARM-DSP/arm_bayes_example/project.mk b/Examples/MAX78002/ARM-DSP/arm_bayes_example/project.mk index f3fd136c258..1a8545bc0b7 100644 --- a/Examples/MAX78002/ARM-DSP/arm_bayes_example/project.mk +++ b/Examples/MAX78002/ARM-DSP/arm_bayes_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/ARM-DSP/arm_class_marks_example/.vscode/README.md b/Examples/MAX78002/ARM-DSP/arm_class_marks_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/ARM-DSP/arm_class_marks_example/.vscode/README.md +++ b/Examples/MAX78002/ARM-DSP/arm_class_marks_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/ARM-DSP/arm_class_marks_example/.vscode/settings.json b/Examples/MAX78002/ARM-DSP/arm_class_marks_example/.vscode/settings.json index 78c0cd77584..40e99311ced 100755 --- a/Examples/MAX78002/ARM-DSP/arm_class_marks_example/.vscode/settings.json +++ b/Examples/MAX78002/ARM-DSP/arm_class_marks_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/ARM-DSP/arm_class_marks_example/Makefile b/Examples/MAX78002/ARM-DSP/arm_class_marks_example/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/ARM-DSP/arm_class_marks_example/Makefile +++ b/Examples/MAX78002/ARM-DSP/arm_class_marks_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c b/Examples/MAX78002/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c index 30f548bc888..2ea5e90d59a 100644 --- a/Examples/MAX78002/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c +++ b/Examples/MAX78002/ARM-DSP/arm_class_marks_example/arm_class_marks_example_f32.c @@ -139,7 +139,7 @@ uint32_t student_num; * Main f32 test function. It returns maximum marks secured and student number * ------------------------------------------------------------------------------- */ -int main() +int main(void) { #ifndef USE_STATIC_INIT diff --git a/Examples/MAX78002/ARM-DSP/arm_class_marks_example/project.mk b/Examples/MAX78002/ARM-DSP/arm_class_marks_example/project.mk index f3fd136c258..1a8545bc0b7 100644 --- a/Examples/MAX78002/ARM-DSP/arm_class_marks_example/project.mk +++ b/Examples/MAX78002/ARM-DSP/arm_class_marks_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/ARM-DSP/arm_convolution_example/.vscode/README.md b/Examples/MAX78002/ARM-DSP/arm_convolution_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/ARM-DSP/arm_convolution_example/.vscode/README.md +++ b/Examples/MAX78002/ARM-DSP/arm_convolution_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/ARM-DSP/arm_convolution_example/.vscode/settings.json b/Examples/MAX78002/ARM-DSP/arm_convolution_example/.vscode/settings.json index 78c0cd77584..40e99311ced 100755 --- a/Examples/MAX78002/ARM-DSP/arm_convolution_example/.vscode/settings.json +++ b/Examples/MAX78002/ARM-DSP/arm_convolution_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/ARM-DSP/arm_convolution_example/Makefile b/Examples/MAX78002/ARM-DSP/arm_convolution_example/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/ARM-DSP/arm_convolution_example/Makefile +++ b/Examples/MAX78002/ARM-DSP/arm_convolution_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/ARM-DSP/arm_convolution_example/project.mk b/Examples/MAX78002/ARM-DSP/arm_convolution_example/project.mk index f3fd136c258..1a8545bc0b7 100644 --- a/Examples/MAX78002/ARM-DSP/arm_convolution_example/project.mk +++ b/Examples/MAX78002/ARM-DSP/arm_convolution_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md b/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md +++ b/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json b/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json index 78c0cd77584..40e99311ced 100755 --- a/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json +++ b/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/Makefile b/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/Makefile +++ b/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/project.mk b/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/project.mk index f3fd136c258..1a8545bc0b7 100644 --- a/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/project.mk +++ b/Examples/MAX78002/ARM-DSP/arm_dotproduct_example_f32/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/.vscode/README.md b/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/.vscode/README.md +++ b/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/.vscode/settings.json b/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/.vscode/settings.json index 78c0cd77584..40e99311ced 100755 --- a/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/.vscode/settings.json +++ b/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/Makefile b/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/Makefile +++ b/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/project.mk b/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/project.mk index f3fd136c258..1a8545bc0b7 100644 --- a/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/project.mk +++ b/Examples/MAX78002/ARM-DSP/arm_fft_bin_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/ARM-DSP/arm_fir_example/.vscode/README.md b/Examples/MAX78002/ARM-DSP/arm_fir_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/ARM-DSP/arm_fir_example/.vscode/README.md +++ b/Examples/MAX78002/ARM-DSP/arm_fir_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/ARM-DSP/arm_fir_example/.vscode/settings.json b/Examples/MAX78002/ARM-DSP/arm_fir_example/.vscode/settings.json index 78c0cd77584..40e99311ced 100755 --- a/Examples/MAX78002/ARM-DSP/arm_fir_example/.vscode/settings.json +++ b/Examples/MAX78002/ARM-DSP/arm_fir_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/ARM-DSP/arm_fir_example/Makefile b/Examples/MAX78002/ARM-DSP/arm_fir_example/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/ARM-DSP/arm_fir_example/Makefile +++ b/Examples/MAX78002/ARM-DSP/arm_fir_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/ARM-DSP/arm_fir_example/project.mk b/Examples/MAX78002/ARM-DSP/arm_fir_example/project.mk index f3fd136c258..1a8545bc0b7 100644 --- a/Examples/MAX78002/ARM-DSP/arm_fir_example/project.mk +++ b/Examples/MAX78002/ARM-DSP/arm_fir_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md b/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md +++ b/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json b/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json index 78c0cd77584..40e99311ced 100755 --- a/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json +++ b/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/Makefile b/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/Makefile +++ b/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/project.mk b/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/project.mk index f3fd136c258..1a8545bc0b7 100644 --- a/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/project.mk +++ b/Examples/MAX78002/ARM-DSP/arm_graphic_equalizer_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/.vscode/README.md b/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/.vscode/README.md +++ b/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/.vscode/settings.json b/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/.vscode/settings.json index 78c0cd77584..40e99311ced 100755 --- a/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/.vscode/settings.json +++ b/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/Makefile b/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/Makefile +++ b/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/project.mk b/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/project.mk index f3fd136c258..1a8545bc0b7 100644 --- a/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/project.mk +++ b/Examples/MAX78002/ARM-DSP/arm_linear_interp_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/ARM-DSP/arm_matrix_example/.vscode/README.md b/Examples/MAX78002/ARM-DSP/arm_matrix_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/ARM-DSP/arm_matrix_example/.vscode/README.md +++ b/Examples/MAX78002/ARM-DSP/arm_matrix_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/ARM-DSP/arm_matrix_example/.vscode/settings.json b/Examples/MAX78002/ARM-DSP/arm_matrix_example/.vscode/settings.json index 78c0cd77584..40e99311ced 100755 --- a/Examples/MAX78002/ARM-DSP/arm_matrix_example/.vscode/settings.json +++ b/Examples/MAX78002/ARM-DSP/arm_matrix_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/ARM-DSP/arm_matrix_example/Makefile b/Examples/MAX78002/ARM-DSP/arm_matrix_example/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/ARM-DSP/arm_matrix_example/Makefile +++ b/Examples/MAX78002/ARM-DSP/arm_matrix_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/ARM-DSP/arm_matrix_example/project.mk b/Examples/MAX78002/ARM-DSP/arm_matrix_example/project.mk index f3fd136c258..1a8545bc0b7 100644 --- a/Examples/MAX78002/ARM-DSP/arm_matrix_example/project.mk +++ b/Examples/MAX78002/ARM-DSP/arm_matrix_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/.vscode/README.md b/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/.vscode/README.md +++ b/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/.vscode/settings.json b/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/.vscode/settings.json index 78c0cd77584..40e99311ced 100755 --- a/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/.vscode/settings.json +++ b/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/Makefile b/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/Makefile +++ b/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/project.mk b/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/project.mk index f3fd136c258..1a8545bc0b7 100644 --- a/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/project.mk +++ b/Examples/MAX78002/ARM-DSP/arm_signal_converge_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/.vscode/README.md b/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/.vscode/README.md +++ b/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/.vscode/settings.json b/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/.vscode/settings.json index 78c0cd77584..40e99311ced 100755 --- a/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/.vscode/settings.json +++ b/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/Makefile b/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/Makefile +++ b/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/project.mk b/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/project.mk index f3fd136c258..1a8545bc0b7 100644 --- a/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/project.mk +++ b/Examples/MAX78002/ARM-DSP/arm_sin_cos_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/ARM-DSP/arm_svm_example/.vscode/README.md b/Examples/MAX78002/ARM-DSP/arm_svm_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/ARM-DSP/arm_svm_example/.vscode/README.md +++ b/Examples/MAX78002/ARM-DSP/arm_svm_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/ARM-DSP/arm_svm_example/.vscode/settings.json b/Examples/MAX78002/ARM-DSP/arm_svm_example/.vscode/settings.json index 78c0cd77584..40e99311ced 100755 --- a/Examples/MAX78002/ARM-DSP/arm_svm_example/.vscode/settings.json +++ b/Examples/MAX78002/ARM-DSP/arm_svm_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/ARM-DSP/arm_svm_example/Makefile b/Examples/MAX78002/ARM-DSP/arm_svm_example/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/ARM-DSP/arm_svm_example/Makefile +++ b/Examples/MAX78002/ARM-DSP/arm_svm_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/ARM-DSP/arm_svm_example/project.mk b/Examples/MAX78002/ARM-DSP/arm_svm_example/project.mk index f3fd136c258..1a8545bc0b7 100644 --- a/Examples/MAX78002/ARM-DSP/arm_svm_example/project.mk +++ b/Examples/MAX78002/ARM-DSP/arm_svm_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/ARM-DSP/arm_variance_example/.vscode/README.md b/Examples/MAX78002/ARM-DSP/arm_variance_example/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/ARM-DSP/arm_variance_example/.vscode/README.md +++ b/Examples/MAX78002/ARM-DSP/arm_variance_example/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/ARM-DSP/arm_variance_example/.vscode/settings.json b/Examples/MAX78002/ARM-DSP/arm_variance_example/.vscode/settings.json index 78c0cd77584..40e99311ced 100755 --- a/Examples/MAX78002/ARM-DSP/arm_variance_example/.vscode/settings.json +++ b/Examples/MAX78002/ARM-DSP/arm_variance_example/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/ARM-DSP/arm_variance_example/Makefile b/Examples/MAX78002/ARM-DSP/arm_variance_example/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/ARM-DSP/arm_variance_example/Makefile +++ b/Examples/MAX78002/ARM-DSP/arm_variance_example/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/ARM-DSP/arm_variance_example/project.mk b/Examples/MAX78002/ARM-DSP/arm_variance_example/project.mk index f3fd136c258..1a8545bc0b7 100644 --- a/Examples/MAX78002/ARM-DSP/arm_variance_example/project.mk +++ b/Examples/MAX78002/ARM-DSP/arm_variance_example/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/CNN/cifar-100-effnet2/.vscode/README.md b/Examples/MAX78002/CNN/cifar-100-effnet2/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/CNN/cifar-100-effnet2/.vscode/README.md +++ b/Examples/MAX78002/CNN/cifar-100-effnet2/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/CNN/cifar-100-effnet2/.vscode/settings.json b/Examples/MAX78002/CNN/cifar-100-effnet2/.vscode/settings.json index 8b0bb6dffd3..d6a832772f6 100755 --- a/Examples/MAX78002/CNN/cifar-100-effnet2/.vscode/settings.json +++ b/Examples/MAX78002/CNN/cifar-100-effnet2/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/CNN/cifar-100-effnet2/Makefile b/Examples/MAX78002/CNN/cifar-100-effnet2/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/CNN/cifar-100-effnet2/Makefile +++ b/Examples/MAX78002/CNN/cifar-100-effnet2/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/CNN/cifar-100-effnet2/cnn.c b/Examples/MAX78002/CNN/cifar-100-effnet2/cnn.c index d674bb9da03..a7f3b2e4736 100644 --- a/Examples/MAX78002/CNN/cifar-100-effnet2/cnn.c +++ b/Examples/MAX78002/CNN/cifar-100-effnet2/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/cifar-100-effnet2/cnn.h b/Examples/MAX78002/CNN/cifar-100-effnet2/cnn.h index 3b1568bdcbe..e7ede3f95ef 100644 --- a/Examples/MAX78002/CNN/cifar-100-effnet2/cnn.h +++ b/Examples/MAX78002/CNN/cifar-100-effnet2/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/cifar-100-effnet2/main.c b/Examples/MAX78002/CNN/cifar-100-effnet2/main.c index 5608b58eed4..5ccf417de5a 100644 --- a/Examples/MAX78002/CNN/cifar-100-effnet2/main.c +++ b/Examples/MAX78002/CNN/cifar-100-effnet2/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/cifar-100-effnet2/project.mk b/Examples/MAX78002/CNN/cifar-100-effnet2/project.mk index 3f6d37b542f..7051651494b 100644 --- a/Examples/MAX78002/CNN/cifar-100-effnet2/project.mk +++ b/Examples/MAX78002/CNN/cifar-100-effnet2/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/CNN/cifar-100-effnet2/softmax.c b/Examples/MAX78002/CNN/cifar-100-effnet2/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78002/CNN/cifar-100-effnet2/softmax.c +++ b/Examples/MAX78002/CNN/cifar-100-effnet2/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/Makefile b/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/Makefile index dd75af65ca4..2d6fe5207a2 100644 --- a/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/Makefile +++ b/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -25,7 +24,7 @@ # in "project.mk", on the command-line, or with system environment # variables. -# See https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# See https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # for more detailed instructions on how to use this system. # The detailed instructions mentioned above are easier to read than diff --git a/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/cnn.c b/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/cnn.c index ea5a6626c72..5a99aa28fe3 100644 --- a/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/cnn.c +++ b/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/cnn.h b/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/cnn.h index 0aa12fd5887..4a8c17a41b9 100644 --- a/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/cnn.h +++ b/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/main.c b/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/main.c index 56e4818b95e..fdac464c879 100644 --- a/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/main.c +++ b/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/project.mk b/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/project.mk index 3f6d37b542f..7051651494b 100644 --- a/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/project.mk +++ b/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/softmax.c b/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/softmax.c +++ b/Examples/MAX78002/CNN/cifar-100-mobilenet-v2-0.75/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/facial_recognition/.vscode/README.md b/Examples/MAX78002/CNN/facial_recognition/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/CNN/facial_recognition/.vscode/README.md +++ b/Examples/MAX78002/CNN/facial_recognition/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/CNN/facial_recognition/.vscode/settings.json b/Examples/MAX78002/CNN/facial_recognition/.vscode/settings.json index a955ea6dc79..0f0d91f5158 100755 --- a/Examples/MAX78002/CNN/facial_recognition/.vscode/settings.json +++ b/Examples/MAX78002/CNN/facial_recognition/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/CNN/facial_recognition/Makefile b/Examples/MAX78002/CNN/facial_recognition/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/CNN/facial_recognition/Makefile +++ b/Examples/MAX78002/CNN/facial_recognition/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/CNN/facial_recognition/db_gen/ai85/ai85_simulator.py b/Examples/MAX78002/CNN/facial_recognition/db_gen/ai85/ai85_simulator.py index 36c7f372a56..2e6106af47f 100644 --- a/Examples/MAX78002/CNN/facial_recognition/db_gen/ai85/ai85_simulator.py +++ b/Examples/MAX78002/CNN/facial_recognition/db_gen/ai85/ai85_simulator.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/facial_recognition/db_gen/ai85/ai8x.py b/Examples/MAX78002/CNN/facial_recognition/db_gen/ai85/ai8x.py index 9c6028b2400..ad1e2ea90cb 100644 --- a/Examples/MAX78002/CNN/facial_recognition/db_gen/ai85/ai8x.py +++ b/Examples/MAX78002/CNN/facial_recognition/db_gen/ai85/ai8x.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/facial_recognition/db_gen/generate_face_db.py b/Examples/MAX78002/CNN/facial_recognition/db_gen/generate_face_db.py index d6371fea774..4173c00e156 100644 --- a/Examples/MAX78002/CNN/facial_recognition/db_gen/generate_face_db.py +++ b/Examples/MAX78002/CNN/facial_recognition/db_gen/generate_face_db.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -22,12 +21,13 @@ """ Script to generate Face Id embeddings """ +import torch import argparse import numpy as np import os import os.path as path from ai85.ai85_adapter import AI85SimulatorAdapter -from hawk_eyes.face import RetinaFace +from batch_face import RetinaFace from utils import append_db_file_from_path, create_weights_include_file, create_embeddings_include_file, create_baseaddr_include_file @@ -42,8 +42,11 @@ def create_db_from_folder(args): ai85_adapter = AI85SimulatorAdapter(MODEL_PATH) - face_detector = RetinaFace(model_name='retina_l', conf=0.1) - + + if torch.cuda.is_available(): + face_detector = RetinaFace(gpu_id=torch.cuda.current_device(), network="resnet50") + else: + face_detector = RetinaFace(gpu_id=-1, network="resnet50") os.makedirs(args.db, exist_ok=True) emb_array, recorded_subject = append_db_file_from_path(args.db, face_detector, ai85_adapter) diff --git a/Examples/MAX78002/CNN/facial_recognition/db_gen/utils.py b/Examples/MAX78002/CNN/facial_recognition/db_gen/utils.py index cdc31c2233f..d6089c4e967 100644 --- a/Examples/MAX78002/CNN/facial_recognition/db_gen/utils.py +++ b/Examples/MAX78002/CNN/facial_recognition/db_gen/utils.py @@ -1,35 +1,22 @@ -################################################################################ - # Copyright (C) 2022 Maxim Integrated Products, Inc., All Rights Reserved. +############################################################################### # - # Permission is hereby granted, free of charge, to any person obtaining a - # copy of this software and associated documentation files (the "Software"), - # to deal in the Software without restriction, including without limitation - # the rights to use, copy, modify, merge, publish, distribute, sublicense, - # and/or sell copies of the Software, and to permit persons to whom the - # Software is furnished to do so, subject to the following conditions: + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # - # The above copyright notice and this permission notice shall be included - # in all copies or substantial portions of the Software. + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at # - # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. - # IN NO EVENT SHALL MAXIM INTEGRATED BE LIABLE FOR ANY CLAIM, DAMAGES - # OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, - # ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - # OTHER DEALINGS IN THE SOFTWARE. + # http://www.apache.org/licenses/LICENSE-2.0 # - # Except as contained in this notice, the name of Maxim Integrated - # Products, Inc. shall not be used except as stated in the Maxim Integrated - # Products, Inc. Branding Policy. + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. # - # The mere transfer of this software does not imply any licenses - # of trade secrets, proprietary technology, copyrights, patents, - # trademarks, maskwork rights, or any other form of intellectual - # property whatsoever. Maxim Integrated Products, Inc. retains all - # ownership rights. - # - ############################################################################### + ############################################################################## """ Utility functions to generate embeddings and I/O operations @@ -43,7 +30,6 @@ from cv2 import imread from PIL import Image, ExifTags import torch -import torchvision import torchvision.transforms.functional as VF @@ -115,7 +101,6 @@ def append_db_file_from_path(folder_path, face_detector, ai85_adapter): img = get_face_image(img, face_detector) if img is not None: - img = ((img+1)*128) img = (img.squeeze()).detach().cpu().numpy() img = img.astype(np.uint8) img = img.transpose([1, 2, 0]) @@ -133,29 +118,26 @@ def append_db_file_from_path(folder_path, face_detector, ai85_adapter): emb_id += 1 summary[subject] += 1 - #np.save('emb_array.npy', emb_array) print('Database Summary') for key in summary: print(f'\t{key}:', f'{summary[key]} images') - #Format summary for printing image counts per subject - - return emb_array, recorded_subject + def get_face_image(img, face_detector): """Detects face on the given image """ device = torch.device('cuda:0' if torch.cuda.is_available() else 'cpu') - bboxes, lndmrks = face_detector.detect(img) - try: - pbox = bboxes[0] - except IndexError: - print('No face detected') - return None - img = torch.Tensor(img.transpose([2, 0, 1])).to(device).unsqueeze(0) - img = Normalize_Img(img) #Normalize image for faceID - + faces = face_detector(img) + box, landmarks, score = faces[0] + + pbox = box + for i in range(4): + pbox[i] = np.clip(pbox[i], 0, None) + + img = torch.Tensor(img.transpose([2, 0, 1])).to(device).unsqueeze(0) + # Convert bounding box to square height = pbox[3] - pbox[1] width = pbox[2] - pbox[0] @@ -168,7 +150,7 @@ def get_face_image(img, face_detector): # Crop image with the square bounding box img = VF.crop(img=img, top=int(pbox[1]), left=int(pbox[0]), height=int(pbox[3]-pbox[1]), width=int(pbox[2]-pbox[0])) - + # Check if the cropped image is square, if not, pad it _, _, h, w = img.shape @@ -238,7 +220,7 @@ def create_weights_include_file(emb_array, weights_h_path, baseaddr): h_file.write('#define KERNELS_3 { \\\n ') for dim in range(Embedding_dimension): init_proccessor = False - for i in range(emb_array.shape[0] + 4): # nearest %9 == 0 for 1024 is 1027, it can be kept in 1028 bytes TODO: Change this from Hardcoded + for i in range(emb_array.shape[0] + 4): # nearest %9 == 0 for 1024 is 1027, it can be kept in 1028 bytes reindex = i + 8 - 2*(i%9) if reindex < 1024: # Total emb count is 1024, last index 1023 single_byte = str(format(emb_array[reindex][dim], 'x')) #Relocate emb for cnn kernel @@ -279,7 +261,7 @@ def create_weights_include_file(emb_array, weights_h_path, baseaddr): four_byte = 0 data_arr = bytearray(np.uint8([data_arr])) for dim in range(Embedding_dimension): - for i in range(emb_array.shape[0] + 4): # nearest %9 == 0 for 1024 is 1027, it can be kept in 1028 bytes TODO: Change this from Hardcoded + for i in range(emb_array.shape[0] + 4): # nearest %9 == 0 for 1024 is 1027, it can be kept in 1028 bytes reindex = i + 8 - 2*(i%9) if reindex < 1024: # Total emb count is 1024, last index 1023 single_byte = int(emb_array[reindex][dim]) #Relocate emb for cnn kernel diff --git a/Examples/MAX78002/CNN/facial_recognition/include/MAXCAM_Debug.h b/Examples/MAX78002/CNN/facial_recognition/include/MAXCAM_Debug.h index 127866bb576..ac251fcc93c 100644 --- a/Examples/MAX78002/CNN/facial_recognition/include/MAXCAM_Debug.h +++ b/Examples/MAX78002/CNN/facial_recognition/include/MAXCAM_Debug.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/facial_recognition/include/faceID.h b/Examples/MAX78002/CNN/facial_recognition/include/faceID.h index c2241cd7010..54c41e08c9e 100644 --- a/Examples/MAX78002/CNN/facial_recognition/include/faceID.h +++ b/Examples/MAX78002/CNN/facial_recognition/include/faceID.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/facial_recognition/include/facedetection.h b/Examples/MAX78002/CNN/facial_recognition/include/facedetection.h index f2f119881eb..56cb2aff80c 100644 --- a/Examples/MAX78002/CNN/facial_recognition/include/facedetection.h +++ b/Examples/MAX78002/CNN/facial_recognition/include/facedetection.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/facial_recognition/include/record.h b/Examples/MAX78002/CNN/facial_recognition/include/record.h index 49ed2297ad1..7eca12c68f1 100644 --- a/Examples/MAX78002/CNN/facial_recognition/include/record.h +++ b/Examples/MAX78002/CNN/facial_recognition/include/record.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -27,8 +26,8 @@ #define SHOW_START_X (TFT_WIDTH - HEIGHT_ID) / 2 #define SHOW_START_Y (TFT_HEIGHT - WIDTH_ID) / 2 -int record(); -void show_keyboard(); -void init_cnn_from_flash(); +int record(void); +void show_keyboard(void); +void init_cnn_from_flash(void); #endif // _RECORD_H_ diff --git a/Examples/MAX78002/CNN/facial_recognition/include/utils.h b/Examples/MAX78002/CNN/facial_recognition/include/utils.h index b2074cacdcc..82e6eea1578 100644 --- a/Examples/MAX78002/CNN/facial_recognition/include/utils.h +++ b/Examples/MAX78002/CNN/facial_recognition/include/utils.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/facial_recognition/main.c b/Examples/MAX78002/CNN/facial_recognition/main.c index 42c84418d18..11f1e1bfbd5 100644 --- a/Examples/MAX78002/CNN/facial_recognition/main.c +++ b/Examples/MAX78002/CNN/facial_recognition/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -196,7 +195,7 @@ mxc_uart_regs_t *CommUart; unsigned int touch_x, touch_y; int font = (int)&Liberation_Sans16x16[0]; -void init_names() +void init_names(void) { char default_names[DEFAULT_EMBS_NUM][7] = DEFAULT_NAMES; #pragma GCC diagnostic push @@ -225,7 +224,7 @@ area_t area_2 = { 0, 260, 80, 30 }; #endif // ***************************************************************************** -void WUT_IRQHandler() +void WUT_IRQHandler(void) { MXC_WUT_IntClear(); } diff --git a/Examples/MAX78002/CNN/facial_recognition/project.mk b/Examples/MAX78002/CNN/facial_recognition/project.mk index 7910639131b..0e575548976 100644 --- a/Examples/MAX78002/CNN/facial_recognition/project.mk +++ b/Examples/MAX78002/CNN/facial_recognition/project.mk @@ -1,9 +1,26 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # ********************************************************** diff --git a/Examples/MAX78002/CNN/facial_recognition/src/record.c b/Examples/MAX78002/CNN/facial_recognition/src/record.c index dfdceac4f9d..f21116f1bbb 100644 --- a/Examples/MAX78002/CNN/facial_recognition/src/record.c +++ b/Examples/MAX78002/CNN/facial_recognition/src/record.c @@ -40,8 +40,6 @@ #include "utils.h" #include "camera.h" #include "faceID.h" -#include "record.h" -#include "utils.h" #include "MAXCAM_Debug.h" #include "cnn_1.h" #include "cnn_2.h" @@ -49,10 +47,8 @@ #include "led.h" #include "lp.h" #include "uart.h" -#include "math.h" #include "post_process.h" #include "flc.h" -#include "faceID.h" #include "facedetection.h" #include "weights_3.h" #include "baseaddr.h" @@ -139,17 +135,17 @@ static int font = (int)&Liberation_Sans16x16[0]; void get_status(Person *p); int update_status(Person *p); int update_info_field(Person *p); -void FLC0_IRQHandler(); -int init_db(); -int init_status(); +void FLC0_IRQHandler(void); +int init_db(void); +int init_status(void); int add_person(Person *p); void flash_to_cnn(Person *p, uint32_t cnn_location); -void setup_irqs(); +void setup_irqs(void); void read_db(Person *p); -bool check_db(); -void show_keyboard(); +bool check_db(void); +void show_keyboard(void); void get_name(Person *p); -void show_face(); +void show_face(void); /***** Functions *****/ @@ -655,7 +651,7 @@ int add_person(Person *p) if (face_detected) { printf("Box width: %d\n", box[2] - box[0]); printf("Box height: %d\n", box[3] - box[1]); - if ((box[2] - box[0]) < 90 || (box[3] - box[1]) < 130) { + if ((box[2] - box[0]) < 70 || (box[3] - box[1]) < 110) { face_detected = 0; if (!init_come_closer) { diff --git a/Examples/MAX78002/CNN/facial_recognition/src/utils.c b/Examples/MAX78002/CNN/facial_recognition/src/utils.c index f24b2243bca..f5b1b9b1b2c 100644 --- a/Examples/MAX78002/CNN/facial_recognition/src/utils.c +++ b/Examples/MAX78002/CNN/facial_recognition/src/utils.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/imagenet-riscv/.vscode/README.md b/Examples/MAX78002/CNN/imagenet-riscv/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/CNN/imagenet-riscv/.vscode/README.md +++ b/Examples/MAX78002/CNN/imagenet-riscv/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/CNN/imagenet-riscv/.vscode/settings.json b/Examples/MAX78002/CNN/imagenet-riscv/.vscode/settings.json index 6938d699d87..04bdbb90667 100755 --- a/Examples/MAX78002/CNN/imagenet-riscv/.vscode/settings.json +++ b/Examples/MAX78002/CNN/imagenet-riscv/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/CNN/imagenet-riscv/Makefile b/Examples/MAX78002/CNN/imagenet-riscv/Makefile index 660a1e501aa..a316e1e095b 100644 --- a/Examples/MAX78002/CNN/imagenet-riscv/Makefile +++ b/Examples/MAX78002/CNN/imagenet-riscv/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/imagenet-riscv/Makefile.ARM b/Examples/MAX78002/CNN/imagenet-riscv/Makefile.ARM index 6302d82ad0b..b23316028b8 100644 --- a/Examples/MAX78002/CNN/imagenet-riscv/Makefile.ARM +++ b/Examples/MAX78002/CNN/imagenet-riscv/Makefile.ARM @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/imagenet-riscv/Makefile.RISCV b/Examples/MAX78002/CNN/imagenet-riscv/Makefile.RISCV index b5e8bc9d66a..0b8896e7744 100644 --- a/Examples/MAX78002/CNN/imagenet-riscv/Makefile.RISCV +++ b/Examples/MAX78002/CNN/imagenet-riscv/Makefile.RISCV @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/imagenet-riscv/cnn.c b/Examples/MAX78002/CNN/imagenet-riscv/cnn.c index 71af9044e2f..0ac0b7e6de7 100644 --- a/Examples/MAX78002/CNN/imagenet-riscv/cnn.c +++ b/Examples/MAX78002/CNN/imagenet-riscv/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/imagenet-riscv/cnn.h b/Examples/MAX78002/CNN/imagenet-riscv/cnn.h index a2d80d01653..a6d5f4e8446 100644 --- a/Examples/MAX78002/CNN/imagenet-riscv/cnn.h +++ b/Examples/MAX78002/CNN/imagenet-riscv/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/imagenet-riscv/main.c b/Examples/MAX78002/CNN/imagenet-riscv/main.c index 4f0c0cc761a..5d682f0bd83 100644 --- a/Examples/MAX78002/CNN/imagenet-riscv/main.c +++ b/Examples/MAX78002/CNN/imagenet-riscv/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/imagenet-riscv/main_riscv.c b/Examples/MAX78002/CNN/imagenet-riscv/main_riscv.c index 9e9e7cc16a6..9881d8efb3f 100644 --- a/Examples/MAX78002/CNN/imagenet-riscv/main_riscv.c +++ b/Examples/MAX78002/CNN/imagenet-riscv/main_riscv.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/imagenet-riscv/softmax.c b/Examples/MAX78002/CNN/imagenet-riscv/softmax.c index 8730ca2ebe1..fad30194997 100644 --- a/Examples/MAX78002/CNN/imagenet-riscv/softmax.c +++ b/Examples/MAX78002/CNN/imagenet-riscv/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/imagenet/.vscode/README.md b/Examples/MAX78002/CNN/imagenet/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/CNN/imagenet/.vscode/README.md +++ b/Examples/MAX78002/CNN/imagenet/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/CNN/imagenet/.vscode/settings.json b/Examples/MAX78002/CNN/imagenet/.vscode/settings.json index 8b0bb6dffd3..d6a832772f6 100755 --- a/Examples/MAX78002/CNN/imagenet/.vscode/settings.json +++ b/Examples/MAX78002/CNN/imagenet/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/CNN/imagenet/Makefile b/Examples/MAX78002/CNN/imagenet/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/CNN/imagenet/Makefile +++ b/Examples/MAX78002/CNN/imagenet/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/CNN/imagenet/cnn.c b/Examples/MAX78002/CNN/imagenet/cnn.c index 323a70ba367..20ccaf69964 100644 --- a/Examples/MAX78002/CNN/imagenet/cnn.c +++ b/Examples/MAX78002/CNN/imagenet/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/imagenet/cnn.h b/Examples/MAX78002/CNN/imagenet/cnn.h index c4c624c1aa3..40eb3003b37 100644 --- a/Examples/MAX78002/CNN/imagenet/cnn.h +++ b/Examples/MAX78002/CNN/imagenet/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/imagenet/main.c b/Examples/MAX78002/CNN/imagenet/main.c index 218170e9e16..63bae2a15db 100644 --- a/Examples/MAX78002/CNN/imagenet/main.c +++ b/Examples/MAX78002/CNN/imagenet/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/imagenet/project.mk b/Examples/MAX78002/CNN/imagenet/project.mk index 3f6d37b542f..7051651494b 100644 --- a/Examples/MAX78002/CNN/imagenet/project.mk +++ b/Examples/MAX78002/CNN/imagenet/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/CNN/imagenet/softmax.c b/Examples/MAX78002/CNN/imagenet/softmax.c index 5bef3a7d9e2..d2b90033830 100644 --- a/Examples/MAX78002/CNN/imagenet/softmax.c +++ b/Examples/MAX78002/CNN/imagenet/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/kinetics/.vscode/README.md b/Examples/MAX78002/CNN/kinetics/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/CNN/kinetics/.vscode/README.md +++ b/Examples/MAX78002/CNN/kinetics/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/CNN/kinetics/.vscode/settings.json b/Examples/MAX78002/CNN/kinetics/.vscode/settings.json index 8b0bb6dffd3..d6a832772f6 100755 --- a/Examples/MAX78002/CNN/kinetics/.vscode/settings.json +++ b/Examples/MAX78002/CNN/kinetics/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/CNN/kinetics/Makefile b/Examples/MAX78002/CNN/kinetics/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/CNN/kinetics/Makefile +++ b/Examples/MAX78002/CNN/kinetics/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/CNN/kinetics/cnn.c b/Examples/MAX78002/CNN/kinetics/cnn.c index a55356b84a6..7c78f87bf3f 100644 --- a/Examples/MAX78002/CNN/kinetics/cnn.c +++ b/Examples/MAX78002/CNN/kinetics/cnn.c @@ -1,7 +1,7 @@ /****************************************************************************** * - * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), + * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), * Copyright (C) 2023-2024 Analog Devices, Inc. All Rights Reserved. This software * is proprietary to Analog Devices, Inc. and its licensors. * diff --git a/Examples/MAX78002/CNN/kinetics/cnn.h b/Examples/MAX78002/CNN/kinetics/cnn.h index 021d49a550c..16eaa8c2c04 100644 --- a/Examples/MAX78002/CNN/kinetics/cnn.h +++ b/Examples/MAX78002/CNN/kinetics/cnn.h @@ -1,7 +1,7 @@ /****************************************************************************** * - * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), + * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), * Copyright (C) 2023-2024 Analog Devices, Inc. All Rights Reserved. This software * is proprietary to Analog Devices, Inc. and its licensors. * diff --git a/Examples/MAX78002/CNN/kinetics/main.c b/Examples/MAX78002/CNN/kinetics/main.c index cbbbbe913ef..745f52e0e96 100644 --- a/Examples/MAX78002/CNN/kinetics/main.c +++ b/Examples/MAX78002/CNN/kinetics/main.c @@ -1,7 +1,7 @@ /****************************************************************************** * - * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), + * Copyright (C) 2019-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), * Copyright (C) 2023-2024 Analog Devices, Inc. All Rights Reserved. This software * is proprietary to Analog Devices, Inc. and its licensors. * diff --git a/Examples/MAX78002/CNN/kinetics/project.mk b/Examples/MAX78002/CNN/kinetics/project.mk index 0aea55bc677..c5f2e7ed631 100644 --- a/Examples/MAX78002/CNN/kinetics/project.mk +++ b/Examples/MAX78002/CNN/kinetics/project.mk @@ -1,9 +1,26 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # ********************************************************** diff --git a/Examples/MAX78002/CNN/kws20_demo/.vscode/README.md b/Examples/MAX78002/CNN/kws20_demo/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/CNN/kws20_demo/.vscode/README.md +++ b/Examples/MAX78002/CNN/kws20_demo/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/CNN/kws20_demo/.vscode/settings.json b/Examples/MAX78002/CNN/kws20_demo/.vscode/settings.json index c85cbf2ab6c..fa8723b49aa 100755 --- a/Examples/MAX78002/CNN/kws20_demo/.vscode/settings.json +++ b/Examples/MAX78002/CNN/kws20_demo/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/CNN/kws20_demo/Makefile b/Examples/MAX78002/CNN/kws20_demo/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/CNN/kws20_demo/Makefile +++ b/Examples/MAX78002/CNN/kws20_demo/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/CNN/kws20_demo/Utility/RealtimeAudio.py b/Examples/MAX78002/CNN/kws20_demo/Utility/RealtimeAudio.py index 31da54b9441..c54a7c6fa87 100644 --- a/Examples/MAX78002/CNN/kws20_demo/Utility/RealtimeAudio.py +++ b/Examples/MAX78002/CNN/kws20_demo/Utility/RealtimeAudio.py @@ -2,10 +2,9 @@ ################################################################################################### ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/kws20_demo/Utility/VoiceRecorder.py b/Examples/MAX78002/CNN/kws20_demo/Utility/VoiceRecorder.py index e467e45b2e0..ca4a3d5c893 100644 --- a/Examples/MAX78002/CNN/kws20_demo/Utility/VoiceRecorder.py +++ b/Examples/MAX78002/CNN/kws20_demo/Utility/VoiceRecorder.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/kws20_demo/Utility/capture_serial_bin.py b/Examples/MAX78002/CNN/kws20_demo/Utility/capture_serial_bin.py index 8645a9820f8..c3c655e34a9 100644 --- a/Examples/MAX78002/CNN/kws20_demo/Utility/capture_serial_bin.py +++ b/Examples/MAX78002/CNN/kws20_demo/Utility/capture_serial_bin.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/kws20_demo/Utility/convert_segment_wav.py b/Examples/MAX78002/CNN/kws20_demo/Utility/convert_segment_wav.py index 688326530c1..47ec74e9e09 100644 --- a/Examples/MAX78002/CNN/kws20_demo/Utility/convert_segment_wav.py +++ b/Examples/MAX78002/CNN/kws20_demo/Utility/convert_segment_wav.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/kws20_demo/cnn.c b/Examples/MAX78002/CNN/kws20_demo/cnn.c index d961196bf00..91b81b9d7ea 100644 --- a/Examples/MAX78002/CNN/kws20_demo/cnn.c +++ b/Examples/MAX78002/CNN/kws20_demo/cnn.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/kws20_demo/cnn.h b/Examples/MAX78002/CNN/kws20_demo/cnn.h index 0445fdaab64..babd07ad6e4 100644 --- a/Examples/MAX78002/CNN/kws20_demo/cnn.h +++ b/Examples/MAX78002/CNN/kws20_demo/cnn.h @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/kws20_demo/main.c b/Examples/MAX78002/CNN/kws20_demo/main.c index 033963204c1..21bc8e5975c 100644 --- a/Examples/MAX78002/CNN/kws20_demo/main.c +++ b/Examples/MAX78002/CNN/kws20_demo/main.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -189,7 +188,7 @@ uint8_t MicReadChunk(uint16_t *avg); uint8_t AddTranspose(uint8_t *pIn, uint8_t *pOut, uint16_t inSize, uint16_t outSize, uint16_t width); uint8_t check_inference(q15_t *ml_soft, int32_t *ml_data, int16_t *out_class, double *out_prob); -void I2SInit(); +void I2SInit(void); void HPF_init(void); int16_t HPF(int16_t input); #ifdef ENABLE_TFT @@ -204,7 +203,7 @@ int font_2 = (int)&Liberation_Sans16x16[0]; int32_t tot_usec = -100000; #ifdef WUT_ENABLE -void WUT_IRQHandler() +void WUT_IRQHandler(void) { i2s_flag = 1; MXC_WUT_IntClear(); @@ -774,7 +773,7 @@ int main(void) /* **************************************************************************** */ #ifdef ENABLE_MIC_PROCESSING -void I2SInit() +void I2SInit(void) { mxc_i2s_req_t req; int32_t err; @@ -864,7 +863,7 @@ uint8_t check_inference(q15_t *ml_soft, int32_t *ml_data, int16_t *out_class, do else TFT_Print(buff, 20, 30, font_2, snprintf(buff, sizeof(buff), "%s (%0.1f%%)", keywords[max_index], - (double)100.0 * max / 32768.0)); + (double)(100.0 * max / 32768.0))); //TFT_Print(buff, 1, 80, font_1, snprintf(buff, sizeof(buff), "Top classes:")); } else { /* uncomment to show the next 4 top classes */ diff --git a/Examples/MAX78002/CNN/kws20_demo/project.mk b/Examples/MAX78002/CNN/kws20_demo/project.mk index adc3004818b..573537130c3 100644 --- a/Examples/MAX78002/CNN/kws20_demo/project.mk +++ b/Examples/MAX78002/CNN/kws20_demo/project.mk @@ -1,3 +1,20 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. diff --git a/Examples/MAX78002/CNN/kws20_demo/softmax.c b/Examples/MAX78002/CNN/kws20_demo/softmax.c index 8730ca2ebe1..fad30194997 100644 --- a/Examples/MAX78002/CNN/kws20_demo/softmax.c +++ b/Examples/MAX78002/CNN/kws20_demo/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/kws20_demo/tft/bmp/bmp2c.py b/Examples/MAX78002/CNN/kws20_demo/tft/bmp/bmp2c.py index 781a69eb098..a5a4889bccb 100644 --- a/Examples/MAX78002/CNN/kws20_demo/tft/bmp/bmp2c.py +++ b/Examples/MAX78002/CNN/kws20_demo/tft/bmp/bmp2c.py @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/kws20_demo/tft/bmp/template.txt b/Examples/MAX78002/CNN/kws20_demo/tft/bmp/template.txt index ba9d86c9a51..b2b7ff6425e 100644 --- a/Examples/MAX78002/CNN/kws20_demo/tft/bmp/template.txt +++ b/Examples/MAX78002/CNN/kws20_demo/tft/bmp/template.txt @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/kws20_demo/tft/img_1_rgb565.c b/Examples/MAX78002/CNN/kws20_demo/tft/img_1_rgb565.c index 6de70e913ae..3a81c84e12e 100644 --- a/Examples/MAX78002/CNN/kws20_demo/tft/img_1_rgb565.c +++ b/Examples/MAX78002/CNN/kws20_demo/tft/img_1_rgb565.c @@ -1,9 +1,8 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/mobilefacenet-112/.vscode/README.md b/Examples/MAX78002/CNN/mobilefacenet-112/.vscode/README.md index 90fbcefc65d..5b355bd51c9 100755 --- a/Examples/MAX78002/CNN/mobilefacenet-112/.vscode/README.md +++ b/Examples/MAX78002/CNN/mobilefacenet-112/.vscode/README.md @@ -5,11 +5,11 @@ _(If you're viewing this document from within Visual Studio Code you can press ` ## Quick Links * [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/) -* [VSCode-Maxim Github](https://github.com/Analog-Devices-MSDK/VSCode-Maxim) +* [VSCode-Maxim Github](https://github.com/analogdevicesinc/VSCode-Maxim) ## Introduction -VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/Analog-Devices-MSDK/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). +VSCode-Maxim is a set of [Visual Studio Code](https://code.visualstudio.com/) project configurations and utilities for enabling embedded development for [Analog Device's MSDK](https://github.com/analogdevicesinc/msdk) and the [MAX32xxx/MAX78xxx microcontrollers](https://www.analog.com/en/product-category/microcontrollers.html). The following features are supported: @@ -37,7 +37,7 @@ See the [MSDK User Guide](https://analogdevicesinc.github.io/msdk/USERGUIDE/#vis ## Issue Tracker -Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/Analog-Devices-MSDK/VSCode-Maxim/issues) tracker on Github. +Bug reports, feature requests, and contributions are welcome via the [issues](https://github.com/analogdevicesinc/VSCode-Maxim/issues) tracker on Github. New issues should contain _at minimum_ the following information: diff --git a/Examples/MAX78002/CNN/mobilefacenet-112/.vscode/settings.json b/Examples/MAX78002/CNN/mobilefacenet-112/.vscode/settings.json index 8b0bb6dffd3..d6a832772f6 100755 --- a/Examples/MAX78002/CNN/mobilefacenet-112/.vscode/settings.json +++ b/Examples/MAX78002/CNN/mobilefacenet-112/.vscode/settings.json @@ -10,7 +10,7 @@ "MAXIM_PATH":"${config:MAXIM_PATH}" }, "terminal.integrated.env.osx": { - "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:{env:PATH}", + "PATH":"${config:OCD_path}/bin:${config:ARM_GCC_path}/bin:${config:xPack_GCC_path}/bin:${config:Make_path}:${env:PATH}", "MAXIM_PATH":"${config:MAXIM_PATH}" }, diff --git a/Examples/MAX78002/CNN/mobilefacenet-112/Makefile b/Examples/MAX78002/CNN/mobilefacenet-112/Makefile index c10ff9184ff..54389988050 100644 --- a/Examples/MAX78002/CNN/mobilefacenet-112/Makefile +++ b/Examples/MAX78002/CNN/mobilefacenet-112/Makefile @@ -1,9 +1,8 @@ ############################################################################### # - # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - # (now owned by Analog Devices, Inc.), - # Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - # is proprietary to Analog Devices, Inc. and its licensors. + # Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + # Analog Devices, Inc.), + # Copyright (C) 2023-2024 Analog Devices, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -371,7 +370,7 @@ endif all: # Extend the functionality of the "all" recipe here - arm-none-eabi-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf + $(PREFIX)-size --format=berkeley $(BUILD_DIR)/$(PROJECT).elf libclean: $(MAKE) -f ${PERIPH_DRIVER_DIR}/periphdriver.mk clean.periph diff --git a/Examples/MAX78002/CNN/mobilefacenet-112/project.mk b/Examples/MAX78002/CNN/mobilefacenet-112/project.mk index 0aea55bc677..c5f2e7ed631 100644 --- a/Examples/MAX78002/CNN/mobilefacenet-112/project.mk +++ b/Examples/MAX78002/CNN/mobilefacenet-112/project.mk @@ -1,9 +1,26 @@ +############################################################################### + # + # Copyright (C) 2024 Analog Devices, Inc. + # + # Licensed under the Apache License, Version 2.0 (the "License"); + # you may not use this file except in compliance with the License. + # You may obtain a copy of the License at + # + # http://www.apache.org/licenses/LICENSE-2.0 + # + # Unless required by applicable law or agreed to in writing, software + # distributed under the License is distributed on an "AS IS" BASIS, + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. + # + ############################################################################## # This file can be used to set build configuration # variables. These variables are defined in a file called # "Makefile" that is located next to this one. # For instructions on how to use this system, see -# https://github.com/Analog-Devices-MSDK/VSCode-Maxim/tree/develop#build-configuration +# https://github.com/analogdevicesinc/VSCode-Maxim/tree/develop#build-configuration # ********************************************************** diff --git a/Examples/MAX78002/CNN/mobilefacenet-112/softmax.c b/Examples/MAX78002/CNN/mobilefacenet-112/softmax.c index 0393114110c..d6aabfd97a1 100644 --- a/Examples/MAX78002/CNN/mobilefacenet-112/softmax.c +++ b/Examples/MAX78002/CNN/mobilefacenet-112/softmax.c @@ -18,10 +18,9 @@ /****************************************************************************** * - * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. All Rights Reserved. - * (now owned by Analog Devices, Inc.), - * Copyright (C) 2023 Analog Devices, Inc. All Rights Reserved. This software - * is proprietary to Analog Devices, Inc. and its licensors. + * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by + * Analog Devices, Inc.), + * Copyright (C) 2023-2024 Analog Devices, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/Examples/MAX78002/CNN/pascalvoc-retinanetv7_3/.cproject b/Examples/MAX78002/CNN/pascalvoc-retinanetv7_3/.cproject index 2a47756cc41..0b4927f3dda 100644 --- a/Examples/MAX78002/CNN/pascalvoc-retinanetv7_3/.cproject +++ b/Examples/MAX78002/CNN/pascalvoc-retinanetv7_3/.cproject @@ -32,7 +32,16 @@ - + + + + + + + + + +